package main import ( "path/filepath" "sort" "testing" "checks/trunk" ) // The script's run of this check over the real tree (novox/hq ADR 0529 clause 2): predefined.json removes no key a module still // names, judged against the trunk's copy at the merge base. A trunk with none had no keys; with no trunk to read, nothing can be // seen removed, and the test says so. func TestThePredefinedListRemovesNoKeyAModuleStillNames(t *testing.T) { tree, err := Keys(filepath.Join("..", "..", File)) if err != nil { t.Fatal(err) } path, ok := trunk.Copy(t, File) if !ok { t.Log("no trunk copy of " + File + ": no removal can be seen") return } base, err := Keys(path) if err != nil { t.Fatal(err) } named, err := Named(filepath.Join("..", "..")) if err != nil { t.Fatal(err) } removed := Removed(base, tree, named) keys := make([]string, 0, len(removed)) for k := range removed { keys = append(keys, k) } sort.Strings(keys) for _, k := range keys { t.Errorf("%q is removed from %s and still named by %v", k, File, removed[k]) } }