Lines Matching full:filesystem

35 func newFinder(t *testing.T, filesystem *fs.MockFs, cacheParams CacheParams) *Finder {
36 return newFinderWithNumThreads(t, filesystem, cacheParams, 2)
39 func newFinderWithNumThreads(t *testing.T, filesystem *fs.MockFs, cacheParams CacheParams, numThrea…
40 f, err := newFinderAndErr(t, filesystem, cacheParams, numThreads)
47 func newFinderAndErr(t *testing.T, filesystem *fs.MockFs, cacheParams CacheParams, numThreads int) …
50 filesystem.MkDirs(cacheDir)
56 f, err := newImpl(cacheParams, filesystem, logger, cachePath, numThreads)
71 original.filesystem,
81 filesystem := newFs()
83 filesystem.MkDirs(root)
85 fs.Create(t, filepath.Join(root, path), filesystem)
89 filesystem,
113 filesystem := newFs()
115 filesystem.MkDirs(root)
117 fs.Create(t, filepath.Join(root, path), filesystem)
121 filesystem,
211 filesystem := newFs()
213 fs.Create(t, filepath.Join(root, "findme.txt"), filesystem)
217 filesystem,
233 filesystem := newFs()
236 fs.Create(t, createdPath, filesystem)
240 filesystem,
258 filesystem := newFs()
259 fs.Create(t, "/tmp/findme.txt", filesystem)
263 filesystem,
276 filesystem := newFs()
277 fs.Create(t, "/tmp/exclude/findme.txt", filesystem)
278 fs.Create(t, "/tmp/exclude/subdir/findme.txt", filesystem)
279 fs.Create(t, "/tmp/subdir/exclude/findme.txt", filesystem)
280 fs.Create(t, "/tmp/subdir/subdir/findme.txt", filesystem)
281 fs.Create(t, "/tmp/subdir/findme.txt", filesystem)
282 fs.Create(t, "/tmp/findme.txt", filesystem)
286 filesystem,
304 filesystem := newFs()
305 fs.Create(t, "/tmp/out/findme.txt", filesystem)
306 fs.Create(t, "/tmp/out/.ignore-out-dir", filesystem)
307 fs.Create(t, "/tmp/out/child/findme.txt", filesystem)
309 fs.Create(t, "/tmp/out2/.ignore-out-dir", filesystem)
310 fs.Create(t, "/tmp/out2/sub/findme.txt", filesystem)
312 fs.Create(t, "/tmp/findme.txt", filesystem)
313 fs.Create(t, "/tmp/include/findme.txt", filesystem)
317 filesystem,
334 // tests of the filesystem root are in TestFilesystemRoot
336 filesystem := newFs()
337 fs.Create(t, "/tmp/a/findme.txt", filesystem)
338 fs.Create(t, "/tmp/a/subdir/findme.txt", filesystem)
339 fs.Create(t, "/tmp/b/findme.txt", filesystem)
340 fs.Create(t, "/tmp/b/subdir/findme.txt", filesystem)
344 filesystem,
360 filesystem := newFs()
361 fs.Create(t, "/tmp/a/findme.txt", filesystem)
362 fs.Create(t, "/tmp/a/subdir/findme.txt", filesystem)
363 fs.Create(t, "/tmp/b/findme.txt", filesystem)
364 fs.Create(t, "/tmp/b/subdir/findme.txt", filesystem)
368 filesystem,
387 // setup filesystem
388 filesystem := newFs()
389 fs.Create(t, "/tmp/findme.txt", filesystem)
390 fs.Create(t, "/tmp/a/findme.txt", filesystem)
391 fs.Create(t, "/tmp/a/misc.txt", filesystem)
396 filesystem,
414 filesystem := newFs()
416 fs.Create(t, "/tmp/ignore/hi.txt", filesystem)
417 fs.Create(t, "/tmp/include/hi.txt", filesystem)
418 fs.Create(t, "/cwd/hi.txt", filesystem)
419 fs.Create(t, "/cwd/a/hi.txt", filesystem)
420 fs.Create(t, "/cwd/a/a/hi.txt", filesystem)
421 fs.Create(t, "/rel/a/hi.txt", filesystem)
425 filesystem,
458 filesystem := newFs()
460 fs.Create(t, "/tmp/a/b/c/d/e/f/g/h/i/j/findme.txt", filesystem)
464 filesystem,
479 filesystem := newFs()
480 fs.Create(t, "/tmp/a/hi.txt", filesystem)
481 fs.Create(t, "/tmp/b/hi.txt", filesystem)
482 fs.Create(t, "/tmp/b/a/hi.txt", filesystem)
486 filesystem,
505 filesystem := newFs()
518 fs.Create(t, path, filesystem)
524 filesystem,
554 filesystem := newFs()
574 fs.Create(t, path, filesystem)
580 filesystem,
617 filesystem := newFs()
619 fs.Create(t, "/tmp/findme.txt", filesystem)
620 fs.Create(t, "/tmp/a/findme.txt", filesystem)
621 fs.Create(t, "/tmp/b/findme.txt", filesystem)
625 filesystem,
642 filesystem := newFs()
644 fs.Create(t, "/tmp/findme.txt", filesystem)
645 fs.Create(t, "/tmp/a/findme.txt", filesystem)
646 fs.Write(t, "/finder/finder-db", "sample header", filesystem)
650 filesystem,
666 // setup filesystem
667 filesystem := newFs()
668 fs.Create(t, "/tmp/findme.txt", filesystem)
669 fs.Create(t, "/tmp/a/findme.txt", filesystem)
674 filesystem,
688 cacheText := fs.Read(t, finder.DbPath, filesystem)
692 if len(filesystem.StatCalls) == 0 {
693 t.Fatal("No Stat calls recorded by mock filesystem")
695 if len(filesystem.ReadDirCalls) == 0 {
696 t.Fatal("No ReadDir calls recorded by filesystem")
698 statCalls := filesystem.StatCalls
699 filesystem.ClearMetrics()
705 fs.AssertSameReadDirCalls(t, filesystem.ReadDirCalls, []string{})
706 fs.AssertSameReadDirCalls(t, filesystem.StatCalls, statCalls)
712 // setup filesystem
713 filesystem := newFs()
714 fs.Create(t, "/tmp/findme.txt", filesystem)
715 fs.Create(t, "/tmp/a/findme.txt", filesystem)
720 filesystem,
733 numStatCalls := len(filesystem.StatCalls)
734 numReadDirCalls := len(filesystem.ReadDirCalls)
737 cacheReader, err := filesystem.Open(finder.DbPath)
746 filesystem.WriteFile(finder.DbPath, cacheData, 0777)
747 filesystem.ClearMetrics()
754 numNewStatCalls := len(filesystem.StatCalls)
755 numNewReadDirCalls := len(filesystem.ReadDirCalls)
776 // setup filesystem
777 filesystem := newFs()
778 fs.Create(t, "/tmp/a/findme.txt", filesystem)
783 filesystem,
794 fs.AssertSameStatCalls(t, filesystem.StatCalls, []string{"/tmp", "/tmp/a"})
795 fs.AssertSameReadDirCalls(t, filesystem.ReadDirCalls, []string{"/tmp", "/tmp/a"})
799 // setup filesystem
800 filesystem := newFs()
801 fs.Create(t, "/tmp/ignoreme.txt", filesystem)
802 fs.Create(t, "/tmp/a/findme.txt", filesystem)
803 fs.Create(t, "/tmp/b/ignore.txt", filesystem)
804 fs.Create(t, "/tmp/b/c/nope.txt", filesystem)
805 fs.Create(t, "/tmp/b/c/d/irrelevant.txt", filesystem)
810 filesystem,
817 filesystem.Clock.Tick()
823 // modify the filesystem
824 filesystem.Clock.Tick()
825 fs.Create(t, "/tmp/b/c/findme.txt", filesystem)
826 filesystem.Clock.Tick()
827 filesystem.ClearMetrics()
835 …fs.AssertSameStatCalls(t, filesystem.StatCalls, []string{"/tmp", "/tmp/a", "/tmp/b", "/tmp/b/c", "…
836 fs.AssertSameReadDirCalls(t, filesystem.ReadDirCalls, []string{"/tmp/b/c"})
842 // setup filesystem
843 filesystem := newFs()
844 fs.Create(t, "/tmp/ignoreme.txt", filesystem)
845 fs.Create(t, "/tmp/a/findme.txt", filesystem)
846 fs.Create(t, "/tmp/b/ignore.txt", filesystem)
847 fs.Create(t, "/tmp/b/c/nope.txt", filesystem)
848 fs.Create(t, "/tmp/b/c/d/irrelevant.txt", filesystem)
853 filesystem,
864 // modify the filesystem
865 filesystem.Clock.Tick()
866 fs.Create(t, "/tmp/b/c/new/findme.txt", filesystem)
867 fs.Create(t, "/tmp/b/c/new/new2/findme.txt", filesystem)
868 fs.Create(t, "/tmp/b/c/new/new2/ignoreme.txt", filesystem)
869 filesystem.ClearMetrics()
878 fs.AssertSameStatCalls(t, filesystem.StatCalls,
880 …fs.AssertSameReadDirCalls(t, filesystem.ReadDirCalls, []string{"/tmp/b/c", "/tmp/b/c/new", "/tmp/b…
886 // setup filesystem
887 filesystem := newFs()
888 fs.Create(t, "/tmp/hi1.txt", filesystem)
889 fs.Create(t, "/tmp/a/hi1.txt", filesystem)
894 filesystem,
905 // modify the filesystem
906 filesystem.Clock.Tick()
907 fs.Create(t, "/tmp/hi2.txt", filesystem)
908 fs.Create(t, "/tmp/a/hi2.txt", filesystem)
909 filesystem.ClearMetrics()
918 fs.AssertSameStatCalls(t, filesystem.StatCalls,
920 fs.AssertSameReadDirCalls(t, filesystem.ReadDirCalls, []string{"/tmp", "/tmp/a"})
926 // setup filesystem
927 filesystem := newFs()
928 fs.Create(t, "/tmp/ignoreme.txt", filesystem)
929 fs.Create(t, "/tmp/a/findme.txt", filesystem)
930 fs.Create(t, "/tmp/b/findme.txt", filesystem)
931 fs.Create(t, "/tmp/b/c/nope.txt", filesystem)
932 fs.Create(t, "/tmp/b/c/d/irrelevant.txt", filesystem)
937 filesystem,
948 // modify the filesystem
949 filesystem.Clock.Tick()
950 fs.Delete(t, "/tmp/b/findme.txt", filesystem)
951 filesystem.ClearMetrics()
959 …fs.AssertSameStatCalls(t, filesystem.StatCalls, []string{"/tmp", "/tmp/a", "/tmp/b", "/tmp/b/c", "…
960 fs.AssertSameReadDirCalls(t, filesystem.ReadDirCalls, []string{"/tmp/b"})
966 // setup filesystem
967 filesystem := newFs()
968 fs.Create(t, "/tmp/findme.txt", filesystem)
969 fs.Create(t, "/tmp/a/findme.txt", filesystem)
970 fs.Create(t, "/tmp/a/1/findme.txt", filesystem)
971 fs.Create(t, "/tmp/a/1/2/findme.txt", filesystem)
972 fs.Create(t, "/tmp/b/findme.txt", filesystem)
977 filesystem,
993 // modify the filesystem
994 filesystem.Clock.Tick()
995 fs.RemoveAll(t, "/tmp/a/1", filesystem)
996 filesystem.ClearMetrics()
1013 fs.AssertSameStatCalls(t, filesystem.StatCalls,
1015 fs.AssertSameReadDirCalls(t, filesystem.ReadDirCalls, []string{"/tmp/a"})
1021 // setup filesystem
1022 filesystem := newFs()
1023 fs.Create(t, "/tmp/findme.txt", filesystem)
1024 fs.Create(t, "/tmp/a/findme.txt", filesystem)
1025 fs.Create(t, "/tmp/a/1/findme.txt", filesystem)
1026 fs.Create(t, "/tmp/a/1/2/findme.txt", filesystem)
1027 fs.Create(t, "/tmp/b/findme.txt", filesystem)
1032 filesystem,
1048 // modify the filesystem
1049 filesystem.Clock.Tick()
1050 fs.Move(t, "/tmp/a", "/tmp/c", filesystem)
1051 filesystem.ClearMetrics()
1072 fs.AssertSameStatCalls(t, filesystem.StatCalls,
1074 …fs.AssertSameReadDirCalls(t, filesystem.ReadDirCalls, []string{"/tmp", "/tmp/c", "/tmp/c/1", "/tmp…
1079 // setup filesystem
1080 filesystem := newFs()
1081 fs.Create(t, "/tmp/findme.txt", filesystem)
1082 fs.Create(t, "/tmp/a/findme.txt", filesystem)
1083 fs.Create(t, "/tmp/a/1/findme.txt", filesystem)
1084 fs.Create(t, "/tmp/a/1/2/findme.txt", filesystem)
1085 fs.Create(t, "/tmp/b/findme.txt", filesystem)
1090 filesystem,
1106 // modify the filesystem
1107 filesystem.Clock.Tick()
1108 fs.Move(t, "/tmp/a", "/tmp/temp", filesystem)
1109 fs.Move(t, "/tmp/b", "/tmp/a", filesystem)
1110 fs.Move(t, "/tmp/temp", "/tmp/b", filesystem)
1111 filesystem.ClearMetrics()
1132 fs.AssertSameStatCalls(t, filesystem.StatCalls,
1134 …fs.AssertSameReadDirCalls(t, filesystem.ReadDirCalls, []string{"/tmp", "/tmp/a", "/tmp/b", "/tmp/b…
1138 // runFsReplacementTest tests a change modifying properties of the filesystem itself:
1168 // copy the cache data from the first filesystem to the second
1172 // run the second finder, with the same config and same cache contents but a different filesystem
1195 // not as fine-grained mounting controls as a real filesystem, but should be adequate
1215 // setup filesystem
1216 filesystem := newFs()
1218 fs.Create(t, fmt.Sprintf("/tmp/%v/findme.txt", i), filesystem)
1224 filesystem,
1234 string1 := fs.Read(t, finder.DbPath, filesystem)
1236 err := filesystem.Remove(finder.DbPath)
1246 string2 := fs.Read(t, finder.DbPath, filesystem)
1267 // setup filesystem
1268 filesystem := newFs()
1269 fs.Create(t, "/tmp/findme.txt", filesystem)
1270 fs.Create(t, "/tmp/a/findme.txt", filesystem)
1271 fs.Create(t, "/tmp/a/misc.txt", filesystem)
1276 filesystem,
1285 filesystem.ClearMetrics()
1287 // run the finder again and confirm it doesn't check the filesystem
1290 fs.AssertSameStatCalls(t, filesystem.StatCalls, []string{})
1291 fs.AssertSameReadDirCalls(t, filesystem.ReadDirCalls, []string{})
1297 // setup filesystem
1298 filesystem := newFs()
1299 fs.Create(t, "/tmp/findme.txt", filesystem)
1300 fs.Create(t, "/tmp/a/findme.txt", filesystem)
1301 fs.Create(t, "/tmp/a/metoo.txt", filesystem)
1306 filesystem,
1315 filesystem.ClearMetrics()
1317 // run the finder again and confirm it gets the right answer without asking the filesystem
1320 fs.AssertSameStatCalls(t, filesystem.StatCalls, []string{})
1321 fs.AssertSameReadDirCalls(t, filesystem.ReadDirCalls, []string{})
1327 // setup filesystem
1328 filesystem := newFs()
1329 fs.Create(t, "/tmp/a/hi.txt", filesystem)
1330 fs.Create(t, "/tmp/a/ignoreme.txt", filesystem)
1331 fs.Link(t, "/tmp/hi.txt", "a/hi.txt", filesystem)
1332 fs.Link(t, "/tmp/b/hi.txt", "../a/hi.txt", filesystem)
1333 fs.Link(t, "/tmp/c/hi.txt", "/tmp/hi.txt", filesystem)
1334 fs.Link(t, "/tmp/d/hi.txt", "../a/bye.txt", filesystem)
1335 fs.Link(t, "/tmp/d/bye.txt", "../a/hi.txt", filesystem)
1336 fs.Link(t, "/tmp/e/bye.txt", "../a/bye.txt", filesystem)
1337 fs.Link(t, "/tmp/f/hi.txt", "somethingThatDoesntExist", filesystem)
1342 filesystem,
1363 // setup filesystem
1364 filesystem := newFs()
1365 fs.Create(t, "/tmp/dir/hi.txt", filesystem)
1366 fs.Create(t, "/tmp/dir/ignoreme.txt", filesystem)
1368 fs.Link(t, "/tmp/links/dir", "../dir", filesystem)
1369 fs.Link(t, "/tmp/links/link", "../dir", filesystem)
1370 fs.Link(t, "/tmp/links/hi.txt", "../dir", filesystem)
1371 fs.Link(t, "/tmp/links/broken", "nothingHere", filesystem)
1372 fs.Link(t, "/tmp/links/recursive", "recursive", filesystem)
1377 filesystem,
1397 // setup filesystem
1398 filesystem := newFs()
1399 fs.Create(t, "/tmp/out/hi.txt", filesystem)
1400 fs.Create(t, "/tmp/out/a/hi.txt", filesystem)
1401 fs.Create(t, "/tmp/hi.txt", filesystem)
1406 filesystem,
1424 // modify filesystem
1425 filesystem.Clock.Tick()
1426 fs.Create(t, "/tmp/out/.ignore-out-dir", filesystem)
1435 // setup filesystem
1436 filesystem := newFs()
1437 fs.Create(t, "/tmp/a/hi.txt", filesystem)
1438 fs.Create(t, "/tmp/b/bye.txt", filesystem)
1443 filesystem,
1450 filesystem.Clock.Tick()
1456 // modify the filesystem
1457 filesystem.Clock.Tick()
1458 fs.Create(t, "/tmp/b/hi.txt", filesystem)
1459 filesystem.Clock.Tick()
1460 filesystem.ClearMetrics()
1468 fs.AssertSameReadDirCalls(t, filesystem.ReadDirCalls, []string{"/tmp/b"})
1469 expectedDbWriteTime := filesystem.Clock.Time()
1470 actualDbWriteTime := fs.ModTime(t, finder2.DbPath, filesystem)
1477 filesystem.ClearMetrics()
1485 fs.AssertSameReadDirCalls(t, filesystem.ReadDirCalls, []string{})
1487 actualDbWriteTime = fs.ModTime(t, finder3.DbPath, filesystem)
1495 // setup filesystem
1496 filesystem := newFs()
1497 fs.Create(t, "/tmp/hi.txt", filesystem)
1498 fs.Create(t, "/tmp/a/hi.txt", filesystem)
1499 fs.Create(t, "/tmp/a/a/hi.txt", filesystem)
1500 fs.Create(t, "/tmp/b/hi.txt", filesystem)
1505 filesystem,
1512 filesystem.Clock.Tick()
1519 // modify the filesystem
1520 filesystem.Clock.Tick()
1522 fs.SetReadable(t, "/tmp/a", false, filesystem)
1523 filesystem.Clock.Tick()
1532 // modify the filesystem back
1533 fs.SetReadable(t, "/tmp/a", true, filesystem)
1544 // setup filesystem
1545 filesystem := newFs()
1546 fs.Create(t, "/tmp/hi.txt", filesystem)
1547 fs.SetReadable(t, "/tmp/hi.txt", false, filesystem)
1552 filesystem,
1559 filesystem.Clock.Tick()
1567 // setup filesystem
1568 filesystem := newFs()
1569 fs.Create(t, "/tmp/a/hi.txt", filesystem)
1574 filesystem,
1581 filesystem.Clock.Tick()
1588 fs.SetReadErr(t, "/tmp/a", os.ErrInvalid, filesystem)
1593 t.Fatal("Failed to detect unexpected filesystem error")