nx_body_skin_boundary_gate_t345.nx source
↩ module page · 27 lines · 3736 B
1import "nx_body_skin_cut.nx"
2import "nx_gate_verdict.nx"
3func bcg_len(s:*u8)->i64{var n:i64=0;while s[n]!=0 as u8{n=n+1};return n}
4func bcg_parse(s:*u8,j:*BgCutJoin,e:*i64)->i64{return bjc_recipe_parse(s,bcg_len(s),j,e)}
5func bcg_clean(j:*BgCutJoin)->i64{return ((j.vertices as i64)==0&&(j.faces as i64)==0&&(j.normals as i64)==0&&j.reserved==0) as i64}
6func main()->i64{
7 let ctr:*i64=gv_ctr();gv_head("Body generator attachment boundary qualification" as *u8)
8 let j:*BgCutJoin=sys_mmap(bjc_join_bytes()) as *BgCutJoin;let e:*i64=sys_mmap(BJC_ERROR_WORDS*8) as *i64;let counts:*i64=sys_mmap(80) as *i64;let mirrors:*i64=sys_mmap(80) as *i64;var k:i64=0;while k<10{counts[k]=10;k=k+1}
9 gv_check("versioned actual recipe parsed" as *u8,(bcg_parse("1 0 0 30 -1 9 0 0 1 5376\n" as *u8,j,e)==0&&j.part_a==0&&j.part_b==9&&j.station_a==30&&j.keep_a==-1&&j.max_bytes==5376) as i64,ctr)
10 gv_check("wrong version precise refusal preserves recipe" as *u8,(bcg_parse("2 0 0 30 -1 9 0 0 1 5376" as *u8,j,e)==BR_SCHEMA&&e[3]==2&&e[1]==0&&j.station_a==30) as i64,ctr)
11 gv_check("missing token refused with expected token index" as *u8,(bcg_parse("1 0 0" as *u8,j,e)==BR_SCHEMA&&e[1]==3&&j.part_b==9) as i64,ctr)
12 gv_check("trailing token refused" as *u8,(bcg_parse("1 0 0 30 -1 9 0 0 1 5376 8" as *u8,j,e)==BR_SCHEMA&&e[1]==10) as i64,ctr)
13 gv_check("overflow token refused before destination mutation" as *u8,(bcg_parse("1 9223372036854775808 0 30 -1 9 0 0 1 5376" as *u8,j,e)==BR_RANGE&&j.part_a==0) as i64,ctr)
14 gv_check("newline embedded inside schema refused" as *u8,(bcg_parse("1 0\n0 30 -1 9 0 0 1 5376" as *u8,j,e)==BR_SCHEMA) as i64,ctr)
15 let tail:*u8="0 0 30 -1 9 0 0 1 5376" as *u8;let padding:i64=4096;let longn:i64=padding+bcg_len(tail)+1;let huge:*u8=sys_mmap(longn);huge[0]=49 as u8;k=1;while k<padding{huge[k]=32 as u8;k=k+1};k=0;while k<bcg_len(tail){huge[padding+k]=tail[k];k=k+1};huge[longn-1]=10 as u8
16 gv_check("valid long whitespace recipe parsed completely without token ceiling" as *u8,(bjc_recipe_parse(huge,longn,j,e)==0&&j.max_bytes==5376&&e[4]==longn) as i64,ctr)
17 gv_check("empty input refused" as *u8,(bjc_recipe_parse(huge,0,j,e)==BR_SCHEMA) as i64,ctr)
18 gv_check("valid allocation owns requested port storage" as *u8,(bjc_init(j,28,10,counts,mirrors,4)==0&&j.vertices.len==28*48) as i64,ctr)
19 let previous:i64=j.vertices as i64;gv_check("repeated init refuses without replacing live owner" as *u8,(bjc_init(j,28,10,counts,mirrors,4)==BJ_INVALID&&(j.vertices as i64)==previous) as i64,ctr)
20 let tri:*i64=sys_mmap(168) as *i64;tri[0]=771;gv_check("missing source ports refuse before triangle mutation" as *u8,(bjc_finish(j,tri,tri,tri,tri,0,1,0,0,0)==BJ_BOUNDARY&&tri[0]==771) as i64,ctr)
21 gv_check("release clears every owned allocation" as *u8,(bjc_release(j)==0&&bcg_clean(j)==1) as i64,ctr);gv_check("repeat release is safe" as *u8,(bjc_release(j)==0&&bcg_clean(j)==1) as i64,ctr)
22 j.max_bytes=1;gv_check("resource refusal leaves no partial owner" as *u8,(bjc_init(j,28,10,counts,mirrors,4)==NX_BO_CAPACITY&&bcg_clean(j)==1) as i64,ctr)
23 j.max_bytes=0;gv_check("real unrepresentable mapping refuses and cleans prior allocations" as *u8,(bjc_init(j,NX_BO_I64_MAX/48,10,counts,mirrors,4)==NX_BO_ALLOCATION&&bcg_clean(j)==1) as i64,ctr)
24 counts[0]=NX_BO_I64_MAX;gv_check("station extent checked before multiplication" as *u8,(bjc_init(j,28,10,counts,mirrors,4)==BJ_DOMAIN&&bcg_clean(j)==1) as i64,ctr);counts[0]=10
25 j.part_a=-9223372036854775807-1;gv_check("INT64_MIN part refused before indexing" as *u8,(bjc_init(j,28,10,counts,mirrors,4)==BJ_INVALID) as i64,ctr)
26 return gv_verdict("body_attachment_boundary" as *u8,ctr,"native parser and ownership; not anatomical registration or complete body topology" as *u8)
27}