code wiki / (root) / nx_contentdiff_display_candidate_t295.nx

nx_contentdiff_display_candidate_t295.nx source

↩ module page · 40 lines · 2628 B

1import "nx_contentdiff_cli_candidate_t295.nx" 2import "nx_gate_verdict.nx" 3 4func cdg_len(p: *u8) -> i64 { 5 var n: i64 = 0 6 while p[n] != (0 as u8) { n = n + 1 } 7 return n 8} 9 10func main() -> i64 { 11 let ctr: *i64 = gv_ctr() 12 gv_head("CONTENTDIFF-DISPLAY" as *u8) 13 gv_check("default-sized explicit limit" as *u8, cd_display_arg("8" as *u8) == 8, ctr) 14 gv_check("larger explicit limit" as *u8, cd_display_arg("18" as *u8) == 18, ctr) 15 gv_check("leading zeros" as *u8, cd_display_arg("0018" as *u8) == 18, ctr) 16 gv_check("all marker" as *u8, cd_display_arg("all" as *u8) == CD_SHOW_ALL, ctr) 17 gv_check("i64 maximum" as *u8, cd_display_arg("9223372036854775807" as *u8) == CD_I64_MAX, ctr) 18 gv_check("overflow refused" as *u8, cd_display_arg("9223372036854775808" as *u8) == CD_SHOW_BAD, ctr) 19 gv_check("empty refused" as *u8, cd_display_arg("" as *u8) == CD_SHOW_BAD, ctr) 20 gv_check("zero refused" as *u8, cd_display_arg("0" as *u8) == CD_SHOW_BAD, ctr) 21 gv_check("negative refused" as *u8, cd_display_arg("-1" as *u8) == CD_SHOW_BAD, ctr) 22 gv_check("trailing garbage refused" as *u8, cd_display_arg("8x" as *u8) == CD_SHOW_BAD, ctr) 23 gv_check("all suffix refused" as *u8, cd_display_arg("allx" as *u8) == CD_SHOW_BAD, ctr) 24 let a: *u8 = "old-01!\nold-02!\nold-03!\nold-04!\nold-05!\nold-06!\nold-07!\nold-08!\nold-09!\nold-10!\n" as *u8 25 let b: *u8 = "new-01!\n" as *u8 26 let an: i64 = cdg_len(a); let bn: i64 = cdg_len(b) 27 gv_check("legacy lost helper still shows eight" as *u8, cd_show_lost(a, an, b, bn) == CD_SHOW, ctr) 28 gv_check("legacy other helper still shows eight" as *u8, cd_show_other(a, an, b, bn) == CD_SHOW, ctr) 29 gv_check("explicit limit reveals all ten losses" as *u8, cd_show_lost_limit(a, an, b, bn, 18) == 10, ctr) 30 gv_check("explicit limit reveals all ten other losses" as *u8, cd_show_other_limit(a, an, b, bn, 18) == 10, ctr) 31 gv_check("explicit one limits gained rows" as *u8, cd_show_gained_limit(b, bn, a, an, 1) == 1, ctr) 32 let prm: *i64 = sys_mmap(CDL_P_SLOTS*8) as *i64 33 let st: *i64 = sys_mmap(CDL_O_SLOTS*8) as *i64 34 prm[CDL_P_MINLEN] = CD_MINLEN; prm[CDL_P_MAXSAMPLES] = 0; prm[CDL_P_MAXTOKLEN] = 0 35 let permil: i64 = cdl_lost(a, an, b, bn, prm, st) 36 gv_check("shared loss still rejects all ten missing runs" as *u8, st[CDL_O_LOST] == 10, ctr) 37 gv_check("shared loss permil remains complete loss" as *u8, permil == 1000, ctr) 38 let rc: i64 = gv_verdict("CONTENTDIFF-DISPLAY" as *u8, ctr, "display controls expose bounded diagnostics without changing shared loss or verdict" as *u8) 39 sys_exit(rc); return rc 40}