aboutsummaryrefslogtreecommitdiff
path: root/tests/i/string-extensions
diff options
context:
space:
mode:
Diffstat (limited to 'tests/i/string-extensions')
-rw-r--r--tests/i/string-extensions/case.json3
-rw-r--r--tests/i/string-extensions/expected.txt5
-rw-r--r--tests/i/string-extensions/notes.md7
-rw-r--r--tests/i/string-extensions/program.cps5
4 files changed, 20 insertions, 0 deletions
diff --git a/tests/i/string-extensions/case.json b/tests/i/string-extensions/case.json
new file mode 100644
index 0000000..1f18635
--- /dev/null
+++ b/tests/i/string-extensions/case.json
@@ -0,0 +1,3 @@
+{
+ "exit_code": 0
+}
diff --git a/tests/i/string-extensions/expected.txt b/tests/i/string-extensions/expected.txt
new file mode 100644
index 0000000..c158267
--- /dev/null
+++ b/tests/i/string-extensions/expected.txt
@@ -0,0 +1,5 @@
+ab:
+65:Z
+TRUE:FALSE:FALSE
+9223372036854775807
+TRUE
diff --git a/tests/i/string-extensions/notes.md b/tests/i/string-extensions/notes.md
new file mode 100644
index 0000000..5ab3d90
--- /dev/null
+++ b/tests/i/string-extensions/notes.md
@@ -0,0 +1,7 @@
+# string-extensions
+
+Human review: pending. Expected output was independently traced by AI, not captured from cpsc.
+
+Basis: Project builtin manuals; LEFT, ASC, CHR, IS_NUM and numeric string conversions are extensions, not specified by this CIE guide.
+
+Trace: LEFT keeps two or zero bytes; ASCII A=65 and Z=90. Only 12.5 is a fully consumed nonempty number. Integer conversion preserves all 19 digits; REAL is observed only through equality.
diff --git a/tests/i/string-extensions/program.cps b/tests/i/string-extensions/program.cps
new file mode 100644
index 0000000..f3b4844
--- /dev/null
+++ b/tests/i/string-extensions/program.cps
@@ -0,0 +1,5 @@
+OUTPUT LEFT("abcd", 2), ":", LEFT("abcd", 0)
+OUTPUT ASC('A'), ":", CHR(90)
+OUTPUT IS_NUM("12.5"), ":", IS_NUM("12x"), ":", IS_NUM("")
+OUTPUT NUM_TO_STR(9223372036854775807)
+OUTPUT STR_TO_NUM("12.5") = 12.5