github.com/1r0npipe/go-file-find-duplicate@v0.0.0-20210531131222-12a9193c59d9/helper/helper_StubFS_test.go (about) 1 // +build integration 2 3 package helper 4 5 import ( 6 "io/fs" 7 "log" 8 "testing/fstest" 9 10 "github.com/stretchr/testify/assert" 11 "testing" 12 ) 13 // Defined duplicated below: 14 // Duplicate: test1/clone2, with size 9 byte(-s); 15 // Duplicate: test3/clone2, with size 9 byte(-s); 16 // Duplicate: test2/unique, with size 9 byte(-s); 17 // Duplicate: test3/unique, with size 9 byte(-s); 18 // Duplicate: test3/clone1, with size 9 byte(-s); 19 var fakeFS = fstest.MapFS{ 20 // root-folder 21 "testDir": { 22 Data: []byte("Text-test"), 23 Mode: fs.ModeIrregular, 24 }, 25 "clone2": { 26 Data: []byte("Text-test"), 27 Mode: fs.ModeIrregular, 28 }, 29 //test1 30 "test1": { 31 Mode: fs.ModeDir, 32 }, 33 "test1/clone1": { 34 Data: []byte("Text-test"), 35 Mode: fs.ModeIrregular, 36 }, 37 "test1/clone2": { 38 Data: []byte("Text-test"), 39 Mode: fs.ModeIrregular, 40 }, 41 "test1/unique": { 42 Data: []byte("Text-test"), 43 Mode: fs.ModeIrregular, 44 }, 45 //test2 46 "test2": { 47 Mode: fs.ModeDir, 48 }, 49 "test2/clone1": { 50 Data: []byte("clone1"), 51 Mode: fs.ModeIrregular, 52 }, 53 "test2/clone3": { 54 Data: []byte("Text-test"), 55 Mode: fs.ModeIrregular, 56 }, 57 "test2/unique": { 58 Data: []byte("Text-test"), 59 Mode: fs.ModeIrregular, 60 }, 61 //test3 62 "test3": { 63 Mode: fs.ModeDir, 64 }, 65 "test3/clone1": { 66 Data: []byte("Text-test"), 67 Mode: fs.ModeIrregular, 68 }, 69 "test3/clone2": { 70 Data: []byte("Text-test"), 71 Mode: fs.ModeIrregular, 72 }, 73 "test3/unique": { 74 Data: []byte("Text-test"), 75 Mode: fs.ModeIrregular, 76 }, 77 "test3/unique2": { 78 Data: []byte("Text-test"), 79 Mode: fs.ModeIrregular, 80 }, 81 } 82 83 func TestFindDupByFakeFS(t *testing.T) { 84 testsTab := []struct { 85 got int64 86 }{ 87 {got: 5}, 88 } 89 for _, tt := range testsTab { 90 err := DuplicatesFind(fakeFS, false) 91 if err != nil { 92 log.Fatal("Can't get duplicates") 93 } 94 assert.Equal(t, tt.got, FilesDuplicates, "Not same amount of found duplicates") 95 } 96 }