2019-02-18 20:15:20 -06:00
|
|
|
let strings = import "std/strings.ucg";
|
2019-11-02 11:01:47 -05:00
|
|
|
let t = import "std/testing.ucg";
|
2019-02-18 20:15:20 -06:00
|
|
|
|
2019-11-24 09:51:24 -05:00
|
|
|
let str_class = strings.wrap("foo bar");
|
2019-02-18 20:15:20 -06:00
|
|
|
|
2019-11-02 11:01:47 -05:00
|
|
|
assert t.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-11-02 11:01:47 -05:00
|
|
|
assert t.equal{
|
2019-11-24 09:51:24 -05:00
|
|
|
left = strings.wrap("foo").split_on{},
|
2019-02-18 20:15:20 -06:00
|
|
|
right = ["foo"],
|
|
|
|
};
|
|
|
|
|
2019-11-02 11:01:47 -05:00
|
|
|
assert t.equal{
|
2019-11-24 09:51:24 -05:00
|
|
|
left = strings.wrap("").split_on{},
|
2019-02-18 20:15:20 -06:00
|
|
|
right = [""],
|
|
|
|
};
|
|
|
|
|
2019-11-02 11:01:47 -05:00
|
|
|
assert t.equal{
|
2019-11-24 09:51:24 -05:00
|
|
|
left = strings.wrap("foo=>bar=>quux").split_on{on="=>"},
|
2019-04-26 18:48:46 -05:00
|
|
|
right = ["foo", "bar", "quux"],
|
|
|
|
};
|
|
|
|
|
2019-11-02 11:01:47 -05:00
|
|
|
assert t.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
|
|
|
};
|
|
|
|
|
2019-11-02 11:01:47 -05:00
|
|
|
assert t.equal{
|
2019-04-12 21:13:24 -05:00
|
|
|
left = str_class.len,
|
|
|
|
right = 7,
|
|
|
|
};
|
|
|
|
|
2019-11-02 11:01:47 -05:00
|
|
|
assert t.equal{
|
2019-04-24 19:19:58 -05:00
|
|
|
left = str_class.chars,
|
|
|
|
right = ["f", "o", "o", " ", "b", "a", "r"],
|
|
|
|
};
|
|
|
|
|
2019-11-02 11:01:47 -05:00
|
|
|
assert t.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",
|
|
|
|
};
|
|
|
|
|
2019-11-02 11:01:47 -05:00
|
|
|
assert t.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",
|
|
|
|
};
|
|
|
|
|
2019-11-02 11:01:47 -05:00
|
|
|
assert t.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-11-24 09:42:04 -05:00
|
|
|
};
|
|
|
|
|
|
|
|
assert t.equal{
|
2019-11-24 09:51:24 -05:00
|
|
|
left = strings.wrap("123").parse_int().unwrap(),
|
2019-11-24 09:42:04 -05:00
|
|
|
right = 123,
|
|
|
|
};
|
|
|
|
|
2019-11-24 09:51:24 -05:00
|
|
|
let str_int = strings.wrap("123");
|
2019-11-24 09:42:04 -05:00
|
|
|
assert t.equal{
|
2019-11-24 09:51:24 -05:00
|
|
|
left = strings.wrap("123 ").parse_int().unwrap(),
|
2019-11-24 09:42:04 -05:00
|
|
|
right = 123,
|
2019-02-18 20:15:20 -06:00
|
|
|
};
|