Revision | faaa3662d494b00542343cd804a7567b1ed3ee19 (tree) |
---|---|
Time | 2023-03-17 22:39:54 |
Author | miyakawataku |
Commiter | miyakawataku |
replace CONTROL.try in tests
@@ -20,28 +20,29 @@ | ||
20 | 20 | |
21 | 21 | TEST.test('return from body, then cleanup raise an exception'){ |
22 | 22 | :V = new_val('Done?' false) |
23 | - CONTROL.try( | |
23 | + CONTROL.xtry( | |
24 | 24 | { CONTROL.ensure({ 42 } { raise('boo') }) } |
25 | 25 | {(:R) raise('got {}'.format(R.repr)) } |
26 | - {(:Msg :Traces) | |
27 | - Msg == 'boo' || reraise(Msg Traces) | |
26 | + {(:Exc) | |
27 | + Exc.message == 'boo' || Exc.raise | |
28 | + | |
28 | 29 | :T = TRACE.new{(:N) |
29 | 30 | N.sym('(ensure-cleanup)') |
30 | 31 | } |
31 | - Traces.have?(T) || reraise(Msg Traces) | |
32 | + Exc.traces.have?(T) || Exc.raise | |
32 | 33 | } |
33 | 34 | ) |
34 | 35 | } |
35 | 36 | |
36 | 37 | TEST.test('raise from body'){ |
37 | 38 | :V = new_val('Done?' false) |
38 | - CONTROL.try( | |
39 | + CONTROL.xtry( | |
39 | 40 | { CONTROL.ensure({ raise('boo') } { V:Done? <- true }) } |
40 | 41 | {(:R) |
41 | 42 | raise('got {}'.format(R.repr)) |
42 | 43 | } |
43 | - {(:Msg :Traces) | |
44 | - Msg == 'boo' || reraise(Msg Traces) | |
44 | + {(:Exc) | |
45 | + Exc.message == 'boo' || Exc.raise | |
45 | 46 | V.Done? || raise('got false') |
46 | 47 | } |
47 | 48 | ) |
@@ -49,21 +50,23 @@ | ||
49 | 50 | |
50 | 51 | TEST.group('check params'){ |
51 | 52 | TEST.test('check body type'){ |
52 | - CONTROL.try( | |
53 | + CONTROL.xtry( | |
53 | 54 | { CONTROL.ensure(nada {}) } |
54 | 55 | {(:R) raise('got {}'.format(R.repr)) } |
55 | - {(:Msg :Traces) | |
56 | - Msg.have_slice?('nada') && Msg.have_slice?('ensure') || reraise(Msg Traces) | |
56 | + {(:Exc) | |
57 | + :Msg = Exc.message | |
58 | + Msg.have_slice?('nada') && Msg.have_slice?('ensure') || Exc.raise | |
57 | 59 | } |
58 | 60 | ) |
59 | 61 | } |
60 | 62 | |
61 | 63 | TEST.test('check cleanup type'){ |
62 | - CONTROL.try( | |
64 | + CONTROL.xtry( | |
63 | 65 | { CONTROL.ensure({} nada) } |
64 | 66 | {(:R) raise('got {}'.format(R.repr)) } |
65 | - {(:Msg :Traces) | |
66 | - Msg.have_slice?('nada') && Msg.have_slice?('ensure') || reraise(Msg Traces) | |
67 | + {(:Exc) | |
68 | + :Msg = Exc.message | |
69 | + Msg.have_slice?('nada') && Msg.have_slice?('ensure') || Exc.raise | |
67 | 70 | } |
68 | 71 | ) |
69 | 72 | } |
@@ -26,31 +26,34 @@ | ||
26 | 26 | } |
27 | 27 | |
28 | 28 | TEST.test('check $body is a fun'){ |
29 | - CONTROL.try( | |
29 | + CONTROL.xtry( | |
30 | 30 | { EVALUATOR.run(nada {} {}) } |
31 | 31 | {(:R) raise('got {}'.format(R.repr)) } |
32 | - {(:Msg :Traces) | |
33 | - Msg.have_slice?('nada') && Msg.have_slice?('.run') || reraise(Msg Traces) | |
32 | + {(:Exc) | |
33 | + :Msg = Exc.message | |
34 | + Msg.have_slice?('nada') && Msg.have_slice?('.run') || Exc.raise | |
34 | 35 | } |
35 | 36 | ) |
36 | 37 | } |
37 | 38 | |
38 | 39 | TEST.test('check $on_returned is a fun'){ |
39 | - CONTROL.try( | |
40 | + CONTROL.xtry( | |
40 | 41 | { EVALUATOR.run({} nada {}) } |
41 | 42 | {(:R) raise('got {}'.format(R.repr)) } |
42 | - {(:Msg :Traces) | |
43 | - Msg.have_slice?('nada') && Msg.have_slice?('.run') || reraise(Msg Traces) | |
43 | + {(:Exc) | |
44 | + :Msg = Exc.message | |
45 | + Msg.have_slice?('nada') && Msg.have_slice?('.run') || Exc.raise | |
44 | 46 | } |
45 | 47 | ) |
46 | 48 | } |
47 | 49 | |
48 | 50 | TEST.test('check $on_raised is a fun'){ |
49 | - CONTROL.try( | |
51 | + CONTROL.xtry( | |
50 | 52 | { EVALUATOR.run({} {} nada) } |
51 | 53 | {(:R) raise('got {}'.format(R.repr)) } |
52 | - {(:Msg :Traces) | |
53 | - Msg.have_slice?('nada') && Msg.have_slice?('.run') || reraise(Msg Traces) | |
54 | + {(:Exc) | |
55 | + :Msg = Exc.message | |
56 | + Msg.have_slice?('nada') && Msg.have_slice?('.run') || Exc.raise | |
54 | 57 | } |
55 | 58 | ) |
56 | 59 | } |
@@ -71,11 +71,12 @@ | ||
71 | 71 | } |
72 | 72 | |
73 | 73 | TEST.test('arg must be a locale'){ |
74 | - CONTROL.try( | |
74 | + CONTROL.xtry( | |
75 | 75 | { LOCALE.for('ja-JP') == nada } |
76 | 76 | {(:R) raise('got {}'.format(R.repr)) } |
77 | - {(:Msg :Traces) | |
78 | - Msg.have_slice?('nada') && Msg.have_slice?('op_eq') || reraise(Msg Traces) | |
77 | + {(:Exc) | |
78 | + :Msg = Exc.message | |
79 | + Msg.have_slice?('nada') && Msg.have_slice?('op_eq') || Exc.raise | |
79 | 80 | } |
80 | 81 | ) |
81 | 82 | } |
@@ -7,21 +7,23 @@ | ||
7 | 7 | :Text = "print('\x{10ffff}')" |
8 | 8 | |
9 | 9 | TEST.group('check name is a str'){ |
10 | - CONTROL.try( | |
10 | + CONTROL.xtry( | |
11 | 11 | { LOC.new(nada Text 0) } |
12 | 12 | {(:R) raise('got {}'.format(R.repr)) } |
13 | - {(:Msg :Traces) | |
14 | - Msg.have_slice?('nada') && Msg.have_slice?('LOC.new') || reraise(Msg Traces) | |
13 | + {(:Exc) | |
14 | + :Msg = Exc.message | |
15 | + Msg.have_slice?('nada') && Msg.have_slice?('LOC.new') || Exc.raise | |
15 | 16 | } |
16 | 17 | ) |
17 | 18 | } |
18 | 19 | |
19 | 20 | TEST.group('check text is a str'){ |
20 | - CONTROL.try( | |
21 | + CONTROL.xtry( | |
21 | 22 | { LOC.new('foo.kn' nada 0) } |
22 | 23 | {(:R) raise('got {}'.format(R.repr)) } |
23 | - {(:Msg :Traces) | |
24 | - Msg.have_slice?('nada') && Msg.have_slice?('LOC.new') || reraise(Msg Traces) | |
24 | + {(:Exc) | |
25 | + :Msg = Exc.message | |
26 | + Msg.have_slice?('nada') && Msg.have_slice?('LOC.new') || Exc.raise | |
25 | 27 | } |
26 | 28 | ) |
27 | 29 | } |
@@ -42,41 +44,45 @@ | ||
42 | 44 | |
43 | 45 | TEST.group('check pos param'){ # {{{2 |
44 | 46 | TEST.test('is a num'){ |
45 | - CONTROL.try( | |
47 | + CONTROL.xtry( | |
46 | 48 | { LOC.new('foo.kn' Text nada) } |
47 | 49 | {(:R) raise('got {}'.format(R.repr)) } |
48 | - {(:Msg :Traces) | |
49 | - Msg.have_slice?('nada') && Msg.have_slice?('LOC.new') || reraise(Msg Traces) | |
50 | + {(:Exc) | |
51 | + :Msg = Exc.message | |
52 | + Msg.have_slice?('nada') && Msg.have_slice?('LOC.new') || Exc.raise | |
50 | 53 | } |
51 | 54 | ) |
52 | 55 | } |
53 | 56 | |
54 | 57 | TEST.test('is an int'){ |
55 | - CONTROL.try( | |
58 | + CONTROL.xtry( | |
56 | 59 | { LOC.new('foo.kn' Text 0.5) } |
57 | 60 | {(:R) raise('got {}'.format(R.repr)) } |
58 | - {(:Msg :Traces) | |
59 | - Msg.have_slice?('0.5') && Msg.have_slice?('LOC.new') || reraise(Msg Traces) | |
61 | + {(:Exc) | |
62 | + :Msg = Exc.message | |
63 | + Msg.have_slice?('0.5') && Msg.have_slice?('LOC.new') || Exc.raise | |
60 | 64 | } |
61 | 65 | ) |
62 | 66 | } |
63 | 67 | |
64 | 68 | TEST.test('not less than 0'){ |
65 | - CONTROL.try( | |
69 | + CONTROL.xtry( | |
66 | 70 | { LOC.new('foo.kn' Text (-1)) } |
67 | 71 | {(:R) raise('got {}'.format(R.repr)) } |
68 | - {(:Msg :Traces) | |
69 | - Msg.have_slice?('-1') && Msg.have_slice?('LOC.new') || reraise(Msg Traces) | |
72 | + {(:Exc) | |
73 | + :Msg = Exc.message | |
74 | + Msg.have_slice?('-1') && Msg.have_slice?('LOC.new') || Exc.raise | |
70 | 75 | } |
71 | 76 | ) |
72 | 77 | } |
73 | 78 | |
74 | 79 | TEST.test('not more than size of text'){ |
75 | - CONTROL.try( | |
80 | + CONTROL.xtry( | |
76 | 81 | { LOC.new('foo.kn' Text 11) } |
77 | 82 | {(:R) raise('got {}'.format(R.repr)) } |
78 | - {(:Msg :Traces) | |
79 | - Msg.have_slice?('11') && Msg.have_slice?('LOC.new') || reraise(Msg Traces) | |
83 | + {(:Exc) | |
84 | + :Msg = Exc.message | |
85 | + Msg.have_slice?('11') && Msg.have_slice?('LOC.new') || Exc.raise | |
80 | 86 | } |
81 | 87 | ) |
82 | 88 | } |
@@ -56,57 +56,62 @@ | ||
56 | 56 | } |
57 | 57 | |
58 | 58 | TEST.test('compile error default handler'){ |
59 | - CONTROL.try( | |
59 | + CONTROL.xtry( | |
60 | 60 | { PROGRAM.compile('10 + +'){(:C) |
61 | 61 | C.name('foo.kn') |
62 | 62 | } |
63 | 63 | } |
64 | 64 | {(:Ret) raise('expected an exception, but got {}'.format(Ret.repr)) } |
65 | - {(:Msg :Traces) | |
65 | + {(:Exc) | |
66 | + :Msg = Exc.message | |
66 | 67 | Msg.have_slice?('foo.kn') && Msg.have_slice?('10 + -->+') |
67 | 68 | && Msg.have_slice?('L1') && Msg.have_slice?('C6') |
68 | - || raise('got {}'.format(Msg.repr)) | |
69 | + || Exc.raise | |
69 | 70 | } |
70 | 71 | ) |
71 | 72 | } |
72 | 73 | |
73 | 74 | TEST.group('config'){ # {{{2 |
74 | 75 | TEST.test('checks Locale is a locale'){ |
75 | - CONTROL.try( | |
76 | + CONTROL.xtry( | |
76 | 77 | { PROGRAM.compile('10 + 20'){(:C) C.locale(nada) } } |
77 | 78 | {(:R) raise('got {}'.format(R.repr)) } |
78 | - {(:Msg :Traces) | |
79 | - Msg.have_slice?('.locale') && Msg.have_slice?('nada') || reraise(Msg Traces) | |
79 | + {(:Exc) | |
80 | + :Msg = Exc.message | |
81 | + Msg.have_slice?('.locale') && Msg.have_slice?('nada') || Exc.raise | |
80 | 82 | } |
81 | 83 | ) |
82 | 84 | } |
83 | 85 | |
84 | 86 | TEST.test('checks that name is a str'){ |
85 | - CONTROL.try( | |
87 | + CONTROL.xtry( | |
86 | 88 | { PROGRAM.compile('10 + 20'){(:C) C.name(nada) } } |
87 | 89 | {(:R) raise('got {}'.format(R.repr)) } |
88 | - {(:Msg :Traces) | |
89 | - Msg.have_slice?('name') && Msg.have_slice?('nada') || reraise(Msg Traces) | |
90 | + {(:Exc) | |
91 | + :Msg = Exc.message | |
92 | + Msg.have_slice?('name') && Msg.have_slice?('nada') || Exc.raise | |
90 | 93 | } |
91 | 94 | ) |
92 | 95 | } |
93 | 96 | |
94 | 97 | TEST.test('checks the success cont is a fun'){ |
95 | - CONTROL.try( | |
98 | + CONTROL.xtry( | |
96 | 99 | { PROGRAM.compile('10 + 20'){(:C) C.on_success(nada) } } |
97 | 100 | {(:R) raise('got {}'.format(R.repr)) } |
98 | - {(:Msg :Traces) | |
99 | - Msg.have_slice?('on_success') && Msg.have_slice?('nada') || reraise(Msg Traces) | |
101 | + {(:Exc) | |
102 | + :Msg = Exc.message | |
103 | + Msg.have_slice?('on_success') && Msg.have_slice?('nada') || Exc.raise | |
100 | 104 | } |
101 | 105 | ) |
102 | 106 | } |
103 | 107 | |
104 | 108 | TEST.test('checks the error cont is a fun'){ |
105 | - CONTROL.try( | |
109 | + CONTROL.xtry( | |
106 | 110 | { PROGRAM.compile('10 + 20'){(:C) C.on_error(nada) } } |
107 | 111 | {(:R) raise('got {}'.format(R.repr)) } |
108 | - {(:Msg :Traces) | |
109 | - Msg.have_slice?('on_error') && Msg.have_slice?('nada') || reraise(Msg Traces) | |
112 | + {(:Exc) | |
113 | + :Msg = Exc.message | |
114 | + Msg.have_slice?('on_error') && Msg.have_slice?('nada') || Exc.raise | |
110 | 115 | } |
111 | 116 | ) |
112 | 117 | } |
@@ -13,11 +13,12 @@ | ||
13 | 13 | } |
14 | 14 | |
15 | 15 | TEST.test('check sym is str'){ |
16 | - CONTROL.try( | |
16 | + CONTROL.xtry( | |
17 | 17 | { VARREF.new(Owner nada) } |
18 | 18 | {(:R) raise('got {}'.format(R.repr)) } |
19 | - {(:Msg :Traces) | |
20 | - Msg.have_slice?('nada') && Msg.have_slice?('VARREF.new') || reraise(Msg Traces) | |
19 | + {(:Exc) | |
20 | + :Msg = Exc.message | |
21 | + Msg.have_slice?('nada') && Msg.have_slice?('VARREF.new') || Exc.raise | |
21 | 22 | } |
22 | 23 | ) |
23 | 24 | } |
@@ -27,41 +27,44 @@ | ||
27 | 27 | } |
28 | 28 | |
29 | 29 | TEST.test('rejects too long result'){ |
30 | - CONTROL.try( | |
30 | + CONTROL.xtry( | |
31 | 31 | { BIN.of(0x00 0x77 0xff) * 999999999999999999999999 } |
32 | 32 | {(:Result) raise('expected an exception, but got {}'.format(Result.repr)) } |
33 | - {(:Msg :Traces) | |
34 | - Msg.have_slice?('Bin.op_mul') || reraise(Msg Traces) | |
33 | + {(:Exc) | |
34 | + Exc.message.have_slice?('Bin.op_mul') || Exc.raise | |
35 | 35 | } |
36 | 36 | ) |
37 | 37 | } |
38 | 38 | |
39 | 39 | TEST.test('rejects non-num Count'){ |
40 | - CONTROL.try( | |
40 | + CONTROL.xtry( | |
41 | 41 | { BIN.of(0x00 0x77 0xff) * nada } |
42 | 42 | {(:Result) raise('expected an exception, but got {}'.format(Result.repr)) } |
43 | - {(:Msg :Traces) | |
44 | - Msg.have_slice?('Bin.op_mul') && Msg.have_slice?('nada') || reraise(Msg Traces) | |
43 | + {(:Exc) | |
44 | + :Msg = Exc.message | |
45 | + Msg.have_slice?('Bin.op_mul') && Msg.have_slice?('nada') || Exc.raise | |
45 | 46 | } |
46 | 47 | ) |
47 | 48 | } |
48 | 49 | |
49 | 50 | TEST.test('rejects non-int Count'){ |
50 | - CONTROL.try( | |
51 | + CONTROL.xtry( | |
51 | 52 | { BIN.of(0x00 0x77 0xff) * 3.14 } |
52 | 53 | {(:Result) raise('expected an exception, but got {}'.format(Result.repr)) } |
53 | - {(:Msg :Traces) | |
54 | - Msg.have_slice?('Bin.op_mul') && Msg.have_slice?('3.14') || reraise(Msg Traces) | |
54 | + {(:Exc) | |
55 | + :Msg = Exc.message | |
56 | + Msg.have_slice?('Bin.op_mul') && Msg.have_slice?('3.14') || Exc.raise | |
55 | 57 | } |
56 | 58 | ) |
57 | 59 | } |
58 | 60 | |
59 | 61 | TEST.test('rejects negative Count'){ |
60 | - CONTROL.try( | |
62 | + CONTROL.xtry( | |
61 | 63 | { BIN.of(0x00 0x77 0xff) * -1 } |
62 | 64 | {(:Result) raise('expected an exception, but got {}'.format(Result.repr)) } |
63 | - {(:Msg :Traces) | |
64 | - Msg.have_slice?('Bin.op_mul') && Msg.have_slice?('-1') || reraise(Msg Traces) | |
65 | + {(:Exc) | |
66 | + :Msg = Exc.message | |
67 | + Msg.have_slice?('Bin.op_mul') && Msg.have_slice?('-1') || Exc.raise | |
65 | 68 | } |
66 | 69 | ) |
67 | 70 | } |
@@ -22,21 +22,23 @@ | ||
22 | 22 | } |
23 | 23 | |
24 | 24 | TEST.test('true.op_eq checks arg type'){ |
25 | - CONTROL.try( | |
25 | + CONTROL.xtry( | |
26 | 26 | { true == nada } |
27 | 27 | {(:Result) raise('got {}'.format(Result.repr)) } |
28 | - {(:Msg :Traces) | |
29 | - Msg.have_slice?('op_eq') && Msg.have_slice?('nada') || reraise(Msg Traces) | |
28 | + {(:Exc) | |
29 | + :Msg = Exc.message | |
30 | + Msg.have_slice?('op_eq') && Msg.have_slice?('nada') || Exc.raise | |
30 | 31 | } |
31 | 32 | ) |
32 | 33 | } |
33 | 34 | |
34 | 35 | TEST.test('false.op_eq checks arg type'){ |
35 | - CONTROL.try( | |
36 | + CONTROL.xtry( | |
36 | 37 | { false == nada } |
37 | 38 | {(:Result) raise('got {}'.format(Result.repr)) } |
38 | - {(:Msg :Traces) | |
39 | - Msg.have_slice?('op_eq') && Msg.have_slice?('nada') || reraise(Msg Traces) | |
39 | + {(:Exc) | |
40 | + :Msg = Exc.message | |
41 | + Msg.have_slice?('op_eq') && Msg.have_slice?('nada') || Exc.raise | |
40 | 42 | } |
41 | 43 | ) |
42 | 44 | } |
@@ -56,11 +58,12 @@ | ||
56 | 58 | } |
57 | 59 | |
58 | 60 | TEST.test('check recv type'){ |
59 | - CONTROL.try( | |
61 | + CONTROL.xtry( | |
60 | 62 | { true.repr[nada] } |
61 | 63 | {(:R) raise('got {}'.format(R.repr)) } |
62 | - {(:Msg :Traces) | |
63 | - Msg.have_slice?('nada') && Msg.have_slice?('nada') || reraise(Msg Traces) | |
64 | + {(:Exc) | |
65 | + :Msg = Exc.message | |
66 | + Msg.have_slice?('nada') && Msg.have_slice?('nada') || Exc.raise | |
64 | 67 | } |
65 | 68 | ) |
66 | 69 | } |