51 lines
1.4 KiB
Go
51 lines
1.4 KiB
Go
package main
|
|
|
|
import (
|
|
"path/filepath"
|
|
"testing"
|
|
|
|
"checks/trunk"
|
|
)
|
|
|
|
// The script's run of this check over the real tree (novox/hq ADR 0529 clause 2): no module names another's state on its machine,
|
|
// the known list holds only what still occurs, and neither list gains a line the trunk's copies at the merge base do not hold.
|
|
func TestNoModuleNamesAnothersStateAndTheListsOnlyShrink(t *testing.T) {
|
|
root := filepath.Join("..", "..")
|
|
found, err := Check(root)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
shared, sharedWhy, err := list("shared")
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
known, knownWhy, err := list("known")
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
refused, gone := Judge(found, shared, known)
|
|
for _, f := range refused {
|
|
t.Error(f)
|
|
}
|
|
for _, k := range gone {
|
|
t.Errorf("%q is in checks/paths/known and no longer occurs: take it out, so it cannot come back", k)
|
|
}
|
|
sharedPath, okShared := trunk.Copy(t, "checks/paths/shared")
|
|
knownPath, okKnown := trunk.Copy(t, "checks/paths/known")
|
|
if !okShared || !okKnown {
|
|
t.Log("NOT COMPARED: the trunk's lists were not both found, so additions to them were not judged")
|
|
return
|
|
}
|
|
baseShared, _, err := list(sharedPath)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
baseKnown, _, err := list(knownPath)
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
for _, g := range append(Grown("shared", shared, sharedWhy, baseShared), Grown("known", known, knownWhy, baseKnown)...) {
|
|
t.Error(g)
|
|
}
|
|
}
|