Tested custom char trims

This commit is contained in:
2023-01-29 08:38:26 +00:00
parent a357e0b0d4
commit e265038547
2 changed files with 14 additions and 1 deletions

View File

@@ -99,6 +99,11 @@ static int nativeTrim(Toy_Interpreter* interpreter, Toy_LiteralArray* arguments)
if (arguments->count == 2) {
trimCharsLiteral = Toy_popLiteralArray(arguments);
Toy_Literal trimCharsLiteralIdn = trimCharsLiteral;
if (TOY_IS_IDENTIFIER(trimCharsLiteral) && Toy_parseIdentifierToValue(interpreter, &trimCharsLiteral)) {
Toy_freeLiteral(trimCharsLiteralIdn);
}
}
else {
trimCharsLiteral = TOY_TO_STRING_LITERAL(Toy_createRefString(" \t\n\r"));

View File

@@ -10,7 +10,7 @@ import compound;
assert "Hello World".toUpper() == "HELLO WORLD", "_toUpper() failed";
}
//test trim
//test trim defaults
{
//test a bunch
fn test(s, pass) {
@@ -33,4 +33,12 @@ import compound;
assert " hello world ".trim() == "hello world", "hello world.trim() failed";
}
//test trim custom values
{
var chars = "heilod";
assert "hello world".trim(chars) == " wor", "custom _trim() failed";
}
print "All good";