github.com/azure/draft-classic@v0.16.0/pkg/draft/pack/repo/installer/local_installer_test.go (about) 1 package installer 2 3 import ( 4 "io/ioutil" 5 "os" 6 "path/filepath" 7 "testing" 8 9 "github.com/Azure/draft/pkg/draft/draftpath" 10 "github.com/Azure/draft/pkg/plugin/installer" 11 ) 12 13 var _ installer.Installer = new(LocalInstaller) 14 15 func TestLocalInstaller(t *testing.T) { 16 dh, err := ioutil.TempDir("", "draft-home-") 17 if err != nil { 18 t.Fatal(err) 19 } 20 defer os.RemoveAll(dh) 21 22 home := draftpath.Home(dh) 23 if err := os.MkdirAll(home.Packs(), 0755); err != nil { 24 t.Fatalf("Could not create %s: %s", home.Packs(), err) 25 } 26 27 // Make a temp dir 28 tdir, err := ioutil.TempDir("", "draft-installer-") 29 if err != nil { 30 t.Fatal(err) 31 } 32 33 defer os.RemoveAll(tdir) 34 35 i, err := New(filepath.Join("testdata", "packdir", "defaultpacks"), "", home) 36 if err != nil { 37 t.Errorf("unexpected error: %s", err) 38 } 39 40 if err := Install(i); err != nil { 41 t.Error(err) 42 } 43 44 if i.Path() != home.Path("packs", "defaultpacks") { 45 t.Errorf("expected path '$DRAFT_HOME/packs/defaultpacks', got %q", i.Path()) 46 } 47 }