parse.ncd 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. process main {
  2. parse_number("awfa") x;
  3. not(x.succeeded) a;
  4. assert(a);
  5. parse_number("023182") x;
  6. assert(x.succeeded);
  7. val_equal(x, "23182") a;
  8. assert(a);
  9. parse_ipv4_addr("192.168.61.007") x;
  10. assert(x.succeeded);
  11. val_equal(x, "192.168.61.7") a;
  12. assert(a);
  13. parse_value("{\"Hello World\", {}}") x;
  14. assert(x.succeeded);
  15. val_equal(x, {"Hello World", {}}) a;
  16. assert(a);
  17. var({"Hello", "fw", {}, {}, ["key":{{}}, [[]:[]]:["k":"v"]], {"st", {"ri", {"ng", [[{}:{}]:[]]}}}}) v;
  18. to_string(v) str;
  19. from_string(str) v2;
  20. to_string(v2) str2;
  21. val_equal(v, v2) a;
  22. assert(a);
  23. val_equal(str, str2) a;
  24. assert(a);
  25. parse_value("{\"Hello\", \"fw\", {}, {}, [\"key\":{{}}, [[]:[]]:[\"k\":\"v\"]], {\"st\", {\"ri\", {\"ng\", [[{}:{}]:[]]}}}}") x;
  26. assert(x.succeeded);
  27. parse_value("{\"Hello\", \"fw\", {}, {}, \"key\":{{}}, [[]:[]]:[\"k\":\"v\"]], {\"st, {\"ri\", {\"ng\", [[{}:{}]:[]]}}}}") x;
  28. not(x.succeeded) a;
  29. assert(a);
  30. parse_value("{\"Hello\", \"fw\", {}, {}, [\"key\":{{}}, [[]:[]]:[\"k\":\"v\"]], {\"st\", \"ri\", \"ng\", [[{}:{}]:[]]}}}}") x;
  31. not(x.succeeded) a;
  32. assert(a);
  33. parse_value("{\"Hello\", \"fw\", {}, {}, [\"key\":{{}}, [[]:[]]:[\"k\":\"v\"]], {\"st\", {\"ri\", {\"ng\", [[{}:{}]:[]]}}}}}") x;
  34. not(x.succeeded) a;
  35. assert(a);
  36. parse_value("{\"Hello\", \"fw\", {}, {}, [\"key\":{{}}, [[]:[]]:[\"k\":\"v\"]], {\"st\", {\"ri\", {\"ng\", [[{}:{}]:[]]}}}") x;
  37. not(x.succeeded) a;
  38. assert(a);
  39. parse_value("{syntax error") x;
  40. not(x.succeeded) a;
  41. assert(a);
  42. parse_ipv4_cidr_addr("192.168.61.007/24") x;
  43. assert(x.succeeded);
  44. val_equal(x, "192.168.61.7/24") a;
  45. assert(a);
  46. val_equal(x.addr, "192.168.61.7") a;
  47. assert(a);
  48. val_equal(x.prefix, "24") a;
  49. assert(a);
  50. parse_ipv4_cidr_addr("192.168.61.007/33") x;
  51. not(x.succeeded) a;
  52. assert(a);
  53. exit("0");
  54. }