code wiki / (root) / nx_lib_e2e_test.nx

nx_lib_e2e_test.nx source

↩ module page · 85 lines · 4027 B

1// nx_lib_e2e_test.nx -- END-TO-END gate for the sovereign library read path. 2// Ingests REAL works -> nx_lib_store -> serves them as HTTP JSON via the 3// sovereign router. Proves the WHOLE .nx read path on real data, no socket 4// needed, no python/sqlite/shell. Exit = failed assertion #. 5import "nx_syscalls.nx" 6import "nx_lib_ingest.nx" 7import "nx_lib_ingest_tsv.nx" // nx_lib_ingest_buf 8import "nx_lib_http.nx" 9 10func e2e_has(hay: *u8, hayn: i64, needle: *u8) -> i64 { 11 let nn: i64 = ls_strlen(needle) 12 if nn == 0 { return 1 } 13 if hayn < nn { return 0 } 14 let last: i64 = hayn - nn 15 var i: i64 = 0 16 while i <= last { 17 var j: i64 = 0 18 var st: i64 = 0 19 while st == 0 { 20 if j >= nn { st = 2 } 21 if st == 0 { if hay[i+j] != needle[j] { st = 1 } if st == 0 { j = j + 1 } } 22 } 23 if st == 2 { return 1 } 24 i = i + 1 25 } 26 return 0 27} 28 29func main() -> i64 { 30 // REAL works (actual papers), TSV: work_hk<TAB>title<TAB>doi<TAB>published<TAB>license 31 let tsv: *u8 = "W_ATTN\tAttention Is All You Need\t10.48550/arXiv.1706.03762\t2017\tarxiv-perpetual\nW_ALPHAFOLD\tHighly accurate protein structure prediction with AlphaFold\t10.1038/s41586-021-03819-2\t2021\tcc-by\nW_CRISPR\tA Programmable Dual-RNA-Guided DNA Endonuclease\t10.1126/science.1225829\t2012\tcc-by\n" as *u8 32 33 let cnt: i64 = nx_lib_ingest_buf(tsv, ls_strlen(tsv)) 34 if cnt != 3 { return 1 } 35 nx_lib_index_build() // build the O(1) inverted index that /api/search now uses 36 37 let out: *u8 = sys_mmap(1200000) 38 39 // serve a real work over the sovereign HTTP router -> real JSON 40 let p: *u8 = "/api/work/W_ATTN" as *u8 41 let rn: i64 = lhd_response(p, ls_strlen(p), out) 42 if e2e_has(out, rn, "HTTP/1.1 200 OK" as *u8) != 1 { return 2 } 43 if e2e_has(out, rn, "\"title\":\"Attention Is All You Need\"" as *u8) != 1 { return 3 } 44 if e2e_has(out, rn, "\"doi\":\"10.48550/arXiv.1706.03762\"" as *u8) != 1 { return 4 } 45 if e2e_has(out, rn, "\"published\":\"2017\"" as *u8) != 1 { return 5 } 46 47 // second real work 48 let p2: *u8 = "/api/work/W_ALPHAFOLD" as *u8 49 let rn2: i64 = lhd_response(p2, ls_strlen(p2), out) 50 if e2e_has(out, rn2, "AlphaFold" as *u8) != 1 { return 6 } 51 52 // the catalog list serves all three hks 53 let pl: *u8 = "/api/works" as *u8 54 let rnl: i64 = lhd_response(pl, ls_strlen(pl), out) 55 if e2e_has(out, rnl, "\"W_ATTN\"" as *u8) != 1 { return 7 } 56 if e2e_has(out, rnl, "\"W_ALPHAFOLD\"" as *u8) != 1 { return 8 } 57 if e2e_has(out, rnl, "\"W_CRISPR\"" as *u8) != 1 { return 9 } 58 59 // search route over HTTP: GET /api/search?q=protein -> AlphaFold 60 let ps: *u8 = "/api/search?q=protein" as *u8 61 let rns: i64 = lhd_response(ps, ls_strlen(ps), out) 62 if e2e_has(out, rns, "HTTP/1.1 200 OK" as *u8) != 1 { return 10 } 63 if e2e_has(out, rns, "\"W_ALPHAFOLD\"" as *u8) != 1 { return 11 } 64 if e2e_has(out, rns, "W_CRISPR" as *u8) == 1 { return 12 } 65 // multi-term via '+' -> AND 66 let ps2: *u8 = "/api/search?q=protein+structure" as *u8 67 let rns2: i64 = lhd_response(ps2, ls_strlen(ps2), out) 68 if e2e_has(out, rns2, "\"W_ALPHAFOLD\"" as *u8) != 1 { return 13 } 69 70 // sovereign zero-JS HTML frontend routes 71 let ph: *u8 = "/" as *u8 72 let rnh: i64 = lhd_response(ph, ls_strlen(ph), out) 73 if e2e_has(out, rnh, "text/html" as *u8) != 1 { return 14 } 74 if e2e_has(out, rnh, "Nishi Library" as *u8) != 1 { return 15 } 75 let pw: *u8 = "/work/W_ATTN" as *u8 76 let rnw: i64 = lhd_response(pw, ls_strlen(pw), out) 77 if e2e_has(out, rnw, "Attention Is All You Need" as *u8) != 1 { return 16 } 78 let phq: *u8 = "/?q=protein" as *u8 79 let rnhq: i64 = lhd_response(phq, ls_strlen(phq), out) 80 if e2e_has(out, rnhq, "AlphaFold" as *u8) != 1 { return 17 } 81 82 let msg: *u8 = "nx_lib_e2e: 17/17 END-TO-END PASS -- ingest -> store -> JSON API (get/list/search) + zero-JS HTML frontend, all .nx (no python/sqlite/fts5/shell)\n" as *u8 83 sys_write(1, msg, ls_strlen(msg)) 84 return 0 85}