nx_forge_evidence_gate_t274.nx source
↩ module page · 37 lines · 4324 B
1import "nx_forge_evidence_t274.nx"
2func main()->i64 {
3var failures:i64=0
4std_putln("good-null" as *u8)
5if fje_cli("{\"sourceHashMatches\":true,\"buildTests\":null,\"servedReview\":false}" as *u8,"{\"sourceVerified\":true,\"buildQualified\":null,\"servedAccepted\":false,\"promote\":false}" as *u8)!=0{failures=failures+1}
6std_putln("bad-null-invented" as *u8)
7if fje_cli("{\"sourceHashMatches\":true,\"buildTests\":null,\"servedReview\":false}" as *u8,"{\"sourceVerified\":true,\"buildQualified\":true,\"servedAccepted\":false,\"promote\":false}" as *u8)!=1{failures=failures+1}
8std_putln("bad-promote" as *u8)
9if fje_cli("{\"sourceHashMatches\":true,\"buildTests\":null,\"servedReview\":false}" as *u8,"{\"sourceVerified\":true,\"buildQualified\":null,\"servedAccepted\":false,\"promote\":true}" as *u8)!=1{failures=failures+1}
10std_putln("missing-fixture" as *u8)
11if fje_cli("{\"sourceHashMatches\":true}" as *u8,"{\"sourceVerified\":true,\"buildQualified\":null,\"servedAccepted\":false,\"promote\":false}" as *u8)!=3{failures=failures+1}
12std_putln("duplicate-response" as *u8)
13if fje_cli("{\"sourceHashMatches\":true,\"buildTests\":null,\"servedReview\":false}" as *u8,"{\"sourceVerified\":false,\"sourceVerified\":true,\"buildQualified\":null,\"servedAccepted\":false,\"promote\":false}" as *u8)!=1{failures=failures+1}
14std_putln("extra-response" as *u8)
15if fje_cli("{\"sourceHashMatches\":true,\"buildTests\":null,\"servedReview\":false}" as *u8,"{\"sourceVerified\":true,\"buildQualified\":null,\"servedAccepted\":false,\"promote\":false,\"other\":true}" as *u8)!=1{failures=failures+1}
16std_putln("trailing-data" as *u8)
17if fje_cli("{\"sourceHashMatches\":true,\"buildTests\":null,\"servedReview\":false}" as *u8,"{\"sourceVerified\":true,\"buildQualified\":null,\"servedAccepted\":false,\"promote\":false} true" as *u8)!=1{failures=failures+1}
18std_putln("wrong-type" as *u8)
19if fje_cli("{\"sourceHashMatches\":true,\"buildTests\":null,\"servedReview\":false}" as *u8,"{\"sourceVerified\":true,\"buildQualified\":\"null\",\"servedAccepted\":false,\"promote\":false}" as *u8)!=1{failures=failures+1}
20std_putln("reordered" as *u8)
21if fje_cli("{\"sourceHashMatches\":true,\"buildTests\":null,\"servedReview\":false}" as *u8,"{\"promote\":false,\"servedAccepted\":false,\"buildQualified\":null,\"sourceVerified\":true}" as *u8)!=0{failures=failures+1}
22std_putln("all-true" as *u8)
23if fje_cli("{\"sourceHashMatches\":true,\"buildTests\":true,\"servedReview\":true}" as *u8,"{\"sourceVerified\":true,\"buildQualified\":true,\"servedAccepted\":true,\"promote\":true}" as *u8)!=0{failures=failures+1}
24std_putln("truncated" as *u8)
25if fje_cli("{\"sourceHashMatches\":true,\"buildTests\":null,\"servedReview\":false}" as *u8,"{\"sourceVerified\":true,\"buildQualified\":null,\"servedAccepted\":false,\"promote\":false" as *u8)!=1{failures=failures+1}
26std_putln("duplicate-fixture" as *u8)
27if fje_cli("{\"buildTests\":false,\"sourceHashMatches\":true,\"buildTests\":null,\"servedReview\":false}" as *u8,"{\"sourceVerified\":true,\"buildQualified\":null,\"servedAccepted\":false,\"promote\":false}" as *u8)!=3{failures=failures+1}
28std_putln("escaped-key" as *u8)
29if fje_cli("{\"sourceHashMatches\":true,\"buildTests\":null,\"servedReview\":false}" as *u8,"{\"\\u0073ourceVerified\":true,\"buildQualified\":null,\"servedAccepted\":false,\"promote\":false}" as *u8)!=0{failures=failures+1}
30std_putln("whitespace" as *u8)
31if fje_cli("{\"sourceHashMatches\":true,\"buildTests\":null,\"servedReview\":false}" as *u8," \n{\"sourceVerified\" : true, \n\"buildQualified\" : null, \n\"servedAccepted\" : false, \n\"promote\" : false}\t" as *u8)!=0{failures=failures+1}
32std_putln("escaped-duplicate" as *u8)
33if fje_cli("{\"sourceHashMatches\":true,\"buildTests\":null,\"servedReview\":false}" as *u8,"{\"\\u0073ourceVerified\":true,\"sourceVerified\":true,\"buildQualified\":null,\"servedAccepted\":false,\"promote\":false}" as *u8)!=1{failures=failures+1}
34std_putln("escaped-fixture" as *u8)
35if fje_cli("{\"sourceHashMatches\":true,\"\\u0062uildTests\":null,\"servedReview\":false}" as *u8,"{\"sourceVerified\":true,\"buildQualified\":null,\"servedAccepted\":false,\"promote\":false}" as *u8)!=0{failures=failures+1}
36if failures!=0{std_putln("FORGE-EVIDENCE FAIL" as *u8);return 1};std_putln("FORGE-EVIDENCE 16/16 PASS" as *u8);return 0
37}