Round 2 T2, T5: mesh-wireguard and route-proxy end G with their merge-base test counts; roles in the test
mesh/delivery merged: source.main moved to novox/mesh-networking@9be2faaf8b00
mesh/delivery-group group feat/47-G-join12 merged: every member is merged
mesh/check failed (2): mesh-delivery-checker: no published of the tagged version of go-meshconditions of me…; and 1 more | ccfdaec5ed2d on 9be2faaf8b00
mesh/delivery merged: source.main moved to novox/mesh-networking@9be2faaf8b00
mesh/delivery-group group feat/47-G-join12 merged: every member is merged
mesh/check failed (2): mesh-delivery-checker: no published of the tagged version of go-meshconditions of me…; and 1 more | ccfdaec5ed2d on 9be2faaf8b00
The two tests G added fold into existing ones as subtests (design 47 G §626); route-proxy's provider test names a role, not a node (T5). Builds: design 47 G §626, A-306; review round 2 findings T2, T5 Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h
This commit is contained in:
@@ -73,34 +73,33 @@ func TestEveryProvisionTheModuleOffersSaysItsCredentialForm(t *testing.T) {
|
||||
t.Errorf("%s offers credential %+v: the form is none", o.Name, o.Credential)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// Design 47 G §411, §339, §341: no artifact of this repository's manifests keeps a `series` (one version per module), and
|
||||
// the generated TypeScript contract is `index.js` with its `index.d.ts`, with no source for a build of its own.
|
||||
func TestNoArtifactKeepsASeriesAndTheTypeScriptContractIsJavaScript(t *testing.T) {
|
||||
for _, path := range []string{"../../module.json", "../../../mesh-connectivity-contracts/module.json"} {
|
||||
file, err := os.ReadFile(path)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
var m struct {
|
||||
Build struct {
|
||||
Artifacts []map[string]any `json:"artifacts"`
|
||||
} `json:"build"`
|
||||
}
|
||||
if err := json.Unmarshal(file, &m); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
for _, a := range m.Build.Artifacts {
|
||||
if _, ok := a["series"]; ok {
|
||||
t.Errorf("%s: the artifact %v keeps a series, which the manifest validator refuses (§411)", path, a["name"])
|
||||
// Design 47 G §411, §339, §341: no artifact of this repository's manifests keeps a `series` (one version per module), and
|
||||
// the generated TypeScript contract is `index.js` with its `index.d.ts`, with no source for a build of its own.
|
||||
t.Run("NoArtifactKeepsASeriesAndTheTypeScriptContractIsJavaScript", func(t *testing.T) {
|
||||
for _, path := range []string{"../../module.json", "../../../mesh-connectivity-contracts/module.json"} {
|
||||
file, err := os.ReadFile(path)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
var m struct {
|
||||
Build struct {
|
||||
Artifacts []map[string]any `json:"artifacts"`
|
||||
} `json:"build"`
|
||||
}
|
||||
if err := json.Unmarshal(file, &m); err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
for _, a := range m.Build.Artifacts {
|
||||
if _, ok := a["series"]; ok {
|
||||
t.Errorf("%s: the artifact %v keeps a series, which the manifest validator refuses (§411)", path, a["name"])
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
dir := "../../../mesh-connectivity-contracts/ts/seats/theprivatenetwork/"
|
||||
for file, want := range map[string]bool{"index.js": true, "index.d.ts": true, "src/index.ts": false, "tsconfig.json": false} {
|
||||
if _, err := os.Stat(dir + file); (err == nil) != want {
|
||||
t.Errorf("%s: present %v, want %v (§341)", file, err == nil, want)
|
||||
dir := "../../../mesh-connectivity-contracts/ts/seats/theprivatenetwork/"
|
||||
for file, want := range map[string]bool{"index.js": true, "index.d.ts": true, "src/index.ts": false, "tsconfig.json": false} {
|
||||
if _, err := os.Stat(dir + file); (err == nil) != want {
|
||||
t.Errorf("%s: present %v, want %v (§341)", file, err == nil, want)
|
||||
}
|
||||
}
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user