github.com/kolbycrouch/elvish@v0.14.1-0.20210614162631-215b9ac1c423/pkg/store/storetest/dir.go (about) 1 package storetest 2 3 import ( 4 "reflect" 5 "testing" 6 7 "src.elv.sh/pkg/store" 8 ) 9 10 var ( 11 dirsToAdd = []string{"/usr/local", "/usr", "/usr/bin", "/usr"} 12 black = map[string]struct{}{"/usr/local": {}} 13 wantedDirs = []store.Dir{ 14 { 15 Path: "/usr", 16 Score: store.DirScoreIncrement*store.DirScoreDecay*store.DirScoreDecay + store.DirScoreIncrement, 17 }, 18 { 19 Path: "/usr/bin", 20 Score: store.DirScoreIncrement * store.DirScoreDecay, 21 }, 22 } 23 dirToDel = "/usr" 24 wantedDirsAfterDel = []store.Dir{ 25 { 26 Path: "/usr/bin", 27 Score: store.DirScoreIncrement * store.DirScoreDecay, 28 }, 29 } 30 ) 31 32 // TestDir tests the directory history functionality of a Store. 33 func TestDir(t *testing.T, tStore store.Store) { 34 for _, path := range dirsToAdd { 35 err := tStore.AddDir(path, 1) 36 if err != nil { 37 t.Errorf("tStore.AddDir(%q) => %v, want <nil>", path, err) 38 } 39 } 40 41 dirs, err := tStore.Dirs(black) 42 if err != nil || !reflect.DeepEqual(dirs, wantedDirs) { 43 t.Errorf(`tStore.ListDirs() => (%v, %v), want (%v, <nil>)`, 44 dirs, err, wantedDirs) 45 } 46 47 tStore.DelDir(dirToDel) 48 dirs, err = tStore.Dirs(black) 49 if err != nil || !reflect.DeepEqual(dirs, wantedDirsAfterDel) { 50 t.Errorf(`After DelDir("/usr"), tStore.ListDirs() => (%v, %v), want (%v, <nil>)`, 51 dirs, err, wantedDirsAfterDel) 52 } 53 }