diff options
Diffstat (limited to 'tests/library/exp-string/program.cps')
| -rw-r--r-- | tests/library/exp-string/program.cps | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/tests/library/exp-string/program.cps b/tests/library/exp-string/program.cps index f8c037f..0b6c977 100644 --- a/tests/library/exp-string/program.cps +++ b/tests/library/exp-string/program.cps @@ -41,6 +41,7 @@ CALL _EXP_STRING_OUTPUT(Heap) DELETE Heap CALL CheckLeft() CALL CheckRight() +CALL CheckMid() PROCEDURE CheckLeft() DECLARE Letters : _EXP_STRING((C_STRING)"ABCDEFGH") @@ -63,3 +64,15 @@ PROCEDURE CheckRight() CALL _EXP_STRING_OUTPUT(_EXP_STRING_RIGHT(Letters, 20)) OUTPUT _EXP_STRING_LENGTH(_EXP_STRING_RIGHT(A & Nuls, 4)) ENDPROCEDURE + +PROCEDURE CheckMid() + DECLARE Letters : _EXP_STRING((C_STRING)"ABCDEFGH") + DECLARE Empty : _EXP_STRING + DECLARE Nuls : _EXP_STRING(3, (C_CHAR)'\0') + CALL _EXP_STRING_OUTPUT(_EXP_STRING_MID(Letters, 2, 3)) + CALL _EXP_STRING_OUTPUT(_EXP_STRING_MID(Letters, -9223372036854775808, 2)) + CALL _EXP_STRING_OUTPUT(_EXP_STRING_MID(Letters, 7, 9223372036854775807)) + OUTPUT _EXP_STRING_LENGTH(_EXP_STRING_MID(Empty, 1, 2)), ":", _EXP_STRING_LENGTH(_EXP_STRING_MID(Letters, 9223372036854775807, 2)) + OUTPUT _EXP_STRING_LENGTH(_EXP_STRING_MID(Letters, 2, 0)), ":", _EXP_STRING_LENGTH(_EXP_STRING_MID(Letters, 2, -1)) + OUTPUT _EXP_STRING_LENGTH(_EXP_STRING_MID(Nuls & Letters, 2, 4)) +ENDPROCEDURE |
