diff options
-rw-r--r-- | filesystem_test.go | 36 | ||||
-rw-r--r-- | installpkg.go | 1 |
2 files changed, 37 insertions, 0 deletions
diff --git a/filesystem_test.go b/filesystem_test.go new file mode 100644 index 0000000..6559488 --- /dev/null +++ b/filesystem_test.go @@ -0,0 +1,36 @@ +package pkgtools + +import ( + "testing" + + "github.com/stretchr/testify/require" +) + +func TestIsParentDir(t *testing.T) { + tests := []struct { + Parent string + FileName string + Exp bool + }{ + { + Parent: "install", + FileName: "install/doinst.sh", + Exp: true, + }, + { + Parent: "other/install", + FileName: "install/doinst.sh", + Exp: false, + }, + { + Parent: "install", + FileName: "doinst.sh", + Exp: false, + }, + } + for _, test := range tests { + exp, err := IsParentDir(test.Parent, test.FileName) + require.NoError(t, err) + require.Equal(t, test.Exp, exp) + } +} diff --git a/installpkg.go b/installpkg.go index a0749bd..479b318 100644 --- a/installpkg.go +++ b/installpkg.go @@ -312,6 +312,7 @@ func extractSlackwarePkg(flags *InstallPkgFlags, fp string) error { if ok, err := IsParentDir(PackageInstallPath, h.Name); ok { // important install files are already written // to the targets package database. + return nil } else if err != nil { return errors.Wrap(err, "installing package") } |