2019-02-18 20:15:20 -06:00
|
|
|
let strings = import "std/strings.ucg";
|
2019-04-09 20:43:42 -05:00
|
|
|
let asserts = import "std/testing.ucg";
|
2019-02-18 20:15:20 -06:00
|
|
|
|
|
|
|
let str_class = strings.ops{str="foo bar"};
|
|
|
|
|
2019-04-09 20:43:42 -05:00
|
|
|
assert asserts.equal{
|
2019-02-24 08:16:07 -06:00
|
|
|
left = str_class.split_on{},
|
2019-02-18 20:15:20 -06:00
|
|
|
right = ["foo", "bar"],
|
|
|
|
};
|
|
|
|
|
2019-04-09 20:43:42 -05:00
|
|
|
assert asserts.equal{
|
2019-02-24 08:16:07 -06:00
|
|
|
left = strings.ops{str="foo"}.split_on{},
|
2019-02-18 20:15:20 -06:00
|
|
|
right = ["foo"],
|
|
|
|
};
|
|
|
|
|
2019-04-09 20:43:42 -05:00
|
|
|
assert asserts.equal{
|
2019-02-24 08:16:07 -06:00
|
|
|
left = strings.ops{str=""}.split_on{},
|
2019-02-18 20:15:20 -06:00
|
|
|
right = [""],
|
|
|
|
};
|
|
|
|
|
2019-04-09 20:43:42 -05:00
|
|
|
assert asserts.equal{
|
2019-02-18 20:15:20 -06:00
|
|
|
left = str_class.split_at(3),
|
|
|
|
right = {left="foo", right=" bar"},
|
2019-04-12 21:13:24 -05:00
|
|
|
};
|
|
|
|
|
|
|
|
assert asserts.equal{
|
|
|
|
left = str_class.len,
|
|
|
|
right = 7,
|
|
|
|
};
|
|
|
|
|
2019-04-24 19:19:58 -05:00
|
|
|
assert asserts.equal{
|
|
|
|
left = str_class.chars,
|
|
|
|
right = ["f", "o", "o", " ", "b", "a", "r"],
|
|
|
|
};
|
|
|
|
|
2019-04-12 21:13:24 -05:00
|
|
|
assert asserts.equal{
|
2019-04-15 22:14:18 -05:00
|
|
|
left = str_class.substr{start=1}.str,
|
2019-04-12 21:13:24 -05:00
|
|
|
right = "oo bar",
|
|
|
|
};
|
|
|
|
|
|
|
|
assert asserts.equal{
|
2019-04-15 22:14:18 -05:00
|
|
|
left = str_class.substr{end=5}.str,
|
2019-04-12 21:13:24 -05:00
|
|
|
right = "foo ba",
|
|
|
|
};
|
|
|
|
|
|
|
|
assert asserts.equal{
|
2019-04-15 22:14:18 -05:00
|
|
|
left = str_class.substr{end=8}.str,
|
2019-04-12 21:13:24 -05:00
|
|
|
right = "foo bar",
|
2019-02-18 20:15:20 -06:00
|
|
|
};
|