diff options
Diffstat (limited to 'internal/pkg/file_test.go')
| -rw-r--r-- | internal/pkg/file_test.go | 31 |
1 files changed, 25 insertions, 6 deletions
diff --git a/internal/pkg/file_test.go b/internal/pkg/file_test.go index 0111faa8..f6fcc96f 100644 --- a/internal/pkg/file_test.go +++ b/internal/pkg/file_test.go @@ -12,22 +12,41 @@ func TestFile(t *testing.T) { t.Parallel() want := expectsFile{0} + const ident = "N7M6W8-e55Wky_1q1a6qRKFVDw1S5XtPdB4HE2YZObG8OFum8HittyJgZUG5Ru2u" + wantShebang := expectsFile("#!/bin/sh\n") + const identShebang = "oKTGZb_TRtJf5G1iGGj4SOx1WUbI6YhmsUeEsCNvmK9tZYRwdwQf-DLFUxRPx5qm" + wantELF := expectsFile("\x7fELF\xde\xad\xbe\xef") + const identELF = "LjeHmIJgD1SiXIH8ewpGRed2_LU84NLapstnOAa_0hxLd8YY7x4KM0aApsj-RwCh" checkWithCache(t, []cacheTestCase{ {"file", pkg.CValidateKnown, nil, func(t *testing.T, base *check.Absolute, c *pkg.Cache) { cureMany(t, c, []cureStep{ - {"short", pkg.NewFile("null", []byte{0}), base.Append( + {"short", pkg.NewFile("null", want), base.Append( "identifier", - "J3quqJoHNQID_k-amRdanjl0nXynlU7wzVJUx25BNvL229wxPyQ9s2Td9VbnRP6s", + ident, ), want, pkg.WNew, nil}, + + {"shebang", pkg.NewFile("shebang", wantShebang), base.Append( + "identifier", + identShebang, + ), wantShebang, pkg.WNew, nil}, + + {"elf", pkg.NewFile("ELF", wantELF), base.Append( + "identifier", + identELF, + ), wantELF, pkg.WNew, nil}, }) }, expectsFS{ ".": {Mode: fs.ModeDir | 0700}, - "checksum": {Mode: fs.ModeDir | 0700}, - "checksum/" + pkg.Encode(want.hash()): {Mode: 0400, Data: []byte{0}}, + "checksum": {Mode: fs.ModeDir | 0700}, + "checksum/" + pkg.Encode(want.hash()): {Mode: 0400, Data: want}, + "checksum/" + pkg.Encode(wantShebang.hash()): {Mode: 0500, Data: wantShebang}, + "checksum/" + pkg.Encode(wantELF.hash()): {Mode: 0500, Data: wantELF}, - "identifier": {Mode: fs.ModeDir | 0700}, - "identifier/J3quqJoHNQID_k-amRdanjl0nXynlU7wzVJUx25BNvL229wxPyQ9s2Td9VbnRP6s": {Mode: fs.ModeSymlink | 0777, Data: []byte("../checksum/vsAhtPNo4waRNOASwrQwcIPTqb3SBuJOXw2G4T1mNmVZM-wrQTRllmgXqcIIoRcX")}, + "identifier": {Mode: fs.ModeDir | 0700}, + "identifier/" + ident: {Mode: fs.ModeSymlink | 0777, Data: []byte("../checksum/" + pkg.Encode(want.hash()))}, + "identifier/" + identShebang: {Mode: fs.ModeSymlink | 0777, Data: []byte("../checksum/" + pkg.Encode(wantShebang.hash()))}, + "identifier/" + identELF: {Mode: fs.ModeSymlink | 0777, Data: []byte("../checksum/" + pkg.Encode(wantELF.hash()))}, "substitute": {Mode: fs.ModeDir | 0700}, |
