quorum/plugin/downloader_test.go

37 lines
847 B
Go

package plugin
import (
"io/ioutil"
"os"
"path"
"testing"
"github.com/stretchr/testify/assert"
)
func TestDownloader_Download_whenPluginIsAvailableLocally(t *testing.T) {
tmpDir, err := ioutil.TempDir("", "p-")
if err != nil {
t.Fatal(err)
}
defer func() {
_ = os.RemoveAll(tmpDir)
}()
arbitraryPluginDistPath := path.Join(tmpDir, "arbitrary-plugin-1.0.0.zip")
if err := ioutil.WriteFile(arbitraryPluginDistPath, []byte{}, 0644); err != nil {
t.Fatal(err)
}
arbitraryPm, _ := NewPluginManager("arbitraryName", &Settings{
BaseDir: EnvironmentAwaredValue(tmpDir),
}, false, false, "")
testObject := NewDownloader(arbitraryPm)
actualPath, err := testObject.Download(&PluginDefinition{
Name: "arbitrary-plugin",
Version: "1.0.0",
})
assert.NoError(t, err)
assert.Equal(t, arbitraryPluginDistPath, actualPath)
}