let strings = import "std/strings.ucg"; let asserts = import "std/testing.ucg"; let str_class = strings.ops{str="foo bar"}; assert asserts.equal{ left = str_class.split_on{}, right = ["foo", "bar"], }; assert asserts.equal{ left = strings.ops{str="foo"}.split_on{}, right = ["foo"], }; assert asserts.equal{ left = strings.ops{str=""}.split_on{}, right = [""], }; assert asserts.equal{ left = str_class.split_at(3), right = {left="foo", right=" bar"}, }; assert asserts.equal{ left = str_class.len, right = 7, }; assert asserts.equal{ left = str_class.substr{start=1}, right = "oo bar", }; assert asserts.equal{ left = str_class.substr{end=5}, right = "foo ba", }; assert asserts.equal{ left = str_class.substr{end=8}, right = "foo bar", };