void test_row(String label, String result)
{
<>
| = label ?> | = result ?> |
>
}
void test_row(String label, String result, String expect)
{
bool pass = (result == expect);
<>
| = label ?> |
= result ?> |
">= pass ? "✓" : "✗ expected: " + expect ?> |
>
}
void test_num(String label, s64 result, s64 expect)
{
bool pass = (result == expect);
<>
| = label ?> |
print(result); ?> |
"> if(!pass) { print("✗ expected: "); print(expect); } else { print("✓"); } ?> |
>
}
RENDER(Request& context)
{
String sample = " Hello UCE World ";
<>
sample = "= sample ?>"
trim
test_row("trim(sample)", "[" + trim(sample) + "]", "[Hello UCE World]");
?>
substr
test_row("substr(sample, 2, 5)", substr(sample, 2, 5), "Hello");
test_row("substr(sample, -7)", substr(sample, -7), "World ");
test_row("substr(sample, 2, -2)", substr(sample, 2, -2), "Hello UCE World");
?>
strpos
test_num("strpos(sample, \"UCE\")", strpos(sample, "UCE"), 8);
test_num("strpos(sample, \"missing\")", strpos(sample, "missing"), -1);
?>
contains
test_row("contains(sample, \"World\")", contains(sample, "World") ? "true" : "false", "true");
test_row("contains(sample, \"xyz\")", contains(sample, "xyz") ? "true" : "false", "false");
?>
str_starts_with / str_ends_with
test_row("str_starts_with(trim(sample), \"Hello\")", str_starts_with(trim(sample), "Hello") ? "true" : "false", "true");
test_row("str_starts_with(trim(sample), \"World\")", str_starts_with(trim(sample), "World") ? "true" : "false", "false");
test_row("str_ends_with(trim(sample), \"World\")", str_ends_with(trim(sample), "World") ? "true" : "false", "true");
test_row("str_ends_with(trim(sample), \"Hello\")", str_ends_with(trim(sample), "Hello") ? "true" : "false", "false");
?>
replace / split / join
test_row("replace(sample, \"UCE\", \"C++\")", replace(sample, "UCE", "C++"), " Hello C++ World ");
test_row("join(split(trim(sample), \" \"), \"-\")", join(split(trim(sample), " "), "-"), "Hello-UCE-World");
?>
to_upper / to_lower
test_row("to_upper(trim(sample))", to_upper(trim(sample)), "HELLO UCE WORLD");
test_row("to_lower(trim(sample))", to_lower(trim(sample)), "hello uce world");
?>
Request Parameters
= var_dump(context.params) ?>
>
}