<<
path:
root/public/blog.git/html/modules/uniform/tests/010_char_class/add_range.spec.jai
blob: a2b745082c574e331223582addfe48dda86e3bcf
[raw]
[clear marker]
0inserts_the_new_range_at_the_right_position_1 :: () {
2 defer uninit(*char_class);
3 add_range(*char_class, 0, 1);
4 add_range(*char_class, 6, 10);
5 add_range(*char_class, 3, 4);
6 assert_that(char_class.ranges, contains_items(
10 is_equal = equal_range));
13merges_ranges_correctly :: () {
14 char_class: CharClass;
15 defer uninit(*char_class);
16 add_range(*char_class, 0, 1);
17 add_range(*char_class, 6, 10);
18 add_range(*char_class, 3, 4);
20 add_range(*char_class, 2, 2);
22 assert_that(char_class.ranges, contains_items(
25 is_equal = equal_range));
28merges_ranges_correctly_2 :: () {
29 char_class: CharClass;
30 defer uninit(*char_class);
31 add_range(*char_class, 0, 1);
32 add_range(*char_class, 6, 10);
33 add_range(*char_class, 3, 4);
35 add_range(*char_class, 2, 4);
37 assert_that(char_class.ranges, contains_items(
40 is_equal = equal_range));
43merges_ranges_correctly_3 :: () {
44 char_class: CharClass;
45 defer uninit(*char_class);
46 add_range(*char_class, 0, 1);
47 add_range(*char_class, 6, 10);
48 add_range(*char_class, 3, 4);
50 add_range(*char_class, 2, 5);
52 assert_that(char_class.ranges, contains_items(
54 is_equal = equal_range));
57merges_ranges_correctly_4 :: () {
58 char_class: CharClass;
59 defer uninit(*char_class);
60 add_range(*char_class, 6, 10);
61 add_range(*char_class, 3, 4);
62 add_range(*char_class, 0, 1);
64 add_range(*char_class, 2, 20);
66 assert_that(char_class.ranges, contains_items(
68 is_equal = equal_range));
71merges_ranges_correctly_5 :: () {
72 char_class: CharClass;
73 defer uninit(*char_class);
74 add_range(*char_class, 6, 10);
75 add_range(*char_class, 3, 4);
76 add_range(*char_class, 0, 1);
78 add_range(*char_class, 3, 20);
80 assert_that(char_class.ranges, contains_items(
83 is_equal = equal_range));
88equal_range :: (a: RuneRange, b: RuneRange) -> bool {
89 return a.lo == b.lo && a.hi == b.hi;