mirror of
https://github.com/zaphar/ucg.git
synced 2025-07-22 18:19:54 -04:00
65 lines
1.2 KiB
Plaintext
65 lines
1.2 KiB
Plaintext
let strings = import "std/strings.ucg";
|
|
let t = import "std/testing.ucg";
|
|
|
|
let str_class = strings.ops{str="foo bar"};
|
|
|
|
assert t.equal{
|
|
left = str_class.split_on{},
|
|
right = ["foo", "bar"],
|
|
};
|
|
|
|
assert t.equal{
|
|
left = strings.ops{str="foo"}.split_on{},
|
|
right = ["foo"],
|
|
};
|
|
|
|
assert t.equal{
|
|
left = strings.ops{str=""}.split_on{},
|
|
right = [""],
|
|
};
|
|
|
|
assert t.equal{
|
|
left = strings.ops{str="foo=>bar=>quux"}.split_on{on="=>"},
|
|
right = ["foo", "bar", "quux"],
|
|
};
|
|
|
|
assert t.equal{
|
|
left = str_class.split_at(3),
|
|
right = {left="foo", right=" bar"},
|
|
};
|
|
|
|
assert t.equal{
|
|
left = str_class.len,
|
|
right = 7,
|
|
};
|
|
|
|
assert t.equal{
|
|
left = str_class.chars,
|
|
right = ["f", "o", "o", " ", "b", "a", "r"],
|
|
};
|
|
|
|
assert t.equal{
|
|
left = str_class.substr{start=1}.str,
|
|
right = "oo bar",
|
|
};
|
|
|
|
assert t.equal{
|
|
left = str_class.substr{end=5}.str,
|
|
right = "foo ba",
|
|
};
|
|
|
|
assert t.equal{
|
|
left = str_class.substr{end=8}.str,
|
|
right = "foo bar",
|
|
};
|
|
|
|
assert t.equal{
|
|
left = strings.ops{str="123"}.parse_int{}.unwrap(),
|
|
right = 123,
|
|
};
|
|
|
|
let str_int = strings.ops{str="123"};
|
|
assert t.equal{
|
|
left = strings.ops{str="123 "}.parse_int{}.unwrap(),
|
|
right = 123,
|
|
}; |