Mercurial > molko
annotate tests/test-action-script.c @ 408:0ea90751a62d
tests: disable entirely automatic registration
author | David Demelier <markand@malikania.fr> |
---|---|
date | Fri, 08 Apr 2022 15:59:08 +0200 |
parents | e6f972e04519 |
children | 1bf7d6669f0a |
rev | line source |
---|---|
65
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
1 /* |
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
2 * test-script.c -- test script action |
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
3 * |
378
460c78706989
misc: update copyright years
David Demelier <markand@malikania.fr>
parents:
336
diff
changeset
|
4 * Copyright (c) 2020-2022 David Demelier <markand@malikania.fr> |
65
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
5 * |
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
6 * Permission to use, copy, modify, and/or distribute this software for any |
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
7 * purpose with or without fee is hereby granted, provided that the above |
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
8 * copyright notice and this permission notice appear in all copies. |
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
9 * |
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
10 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES |
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
11 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF |
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
12 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR |
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
13 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES |
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
14 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN |
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
15 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF |
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
16 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
17 */ |
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
18 |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
19 #include <core/action.h> |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
20 #include <core/event.h> |
121
789b23e01f52
misc: reorganize hierarchy, closes #2490
David Demelier <markand@malikania.fr>
parents:
65
diff
changeset
|
21 #include <core/script.h> |
65
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
22 |
407
e6f972e04519
tests: don't use automatic feature
David Demelier <markand@malikania.fr>
parents:
378
diff
changeset
|
23 #include "test.h" |
e6f972e04519
tests: don't use automatic feature
David Demelier <markand@malikania.fr>
parents:
378
diff
changeset
|
24 |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
25 struct invokes { |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
26 int handle; |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
27 int update; |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
28 int draw; |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
29 int end; |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
30 int finish; |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
31 }; |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
32 |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
33 #define INIT(dat, up) { \ |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
34 .data = (dat), \ |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
35 .handle = my_handle, \ |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
36 .update = (up), \ |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
37 .draw = my_draw, \ |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
38 .end = my_end, \ |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
39 .finish = my_finish \ |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
40 } |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
41 |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
42 static void |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
43 my_handle(struct action *act, const union event *ev) |
65
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
44 { |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
45 (void)ev; |
65
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
46 |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
47 ((struct invokes *)act->data)->handle++; |
65
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
48 } |
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
49 |
298
196264679079
misc: remove usage of bool
David Demelier <markand@malikania.fr>
parents:
136
diff
changeset
|
50 static int |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
51 my_update_false(struct action *act, unsigned int ticks) |
65
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
52 { |
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
53 (void)ticks; |
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
54 |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
55 ((struct invokes *)act->data)->update++; |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
56 |
298
196264679079
misc: remove usage of bool
David Demelier <markand@malikania.fr>
parents:
136
diff
changeset
|
57 return 0; |
65
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
58 } |
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
59 |
298
196264679079
misc: remove usage of bool
David Demelier <markand@malikania.fr>
parents:
136
diff
changeset
|
60 static int |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
61 my_update_true(struct action *act, unsigned int ticks) |
65
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
62 { |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
63 (void)ticks; |
65
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
64 |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
65 ((struct invokes *)act->data)->update++; |
65
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
66 |
298
196264679079
misc: remove usage of bool
David Demelier <markand@malikania.fr>
parents:
136
diff
changeset
|
67 return 1; |
65
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
68 } |
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
69 |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
70 static void |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
71 my_draw(struct action *act) |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
72 { |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
73 ((struct invokes *)act->data)->draw++; |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
74 } |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
75 |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
76 static void |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
77 my_end(struct action *act) |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
78 { |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
79 ((struct invokes *)act->data)->end++; |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
80 } |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
81 |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
82 static void |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
83 my_finish(struct action *act) |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
84 { |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
85 ((struct invokes *)act->data)->finish++; |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
86 } |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
87 |
408
0ea90751a62d
tests: disable entirely automatic registration
David Demelier <markand@malikania.fr>
parents:
407
diff
changeset
|
88 RX_TEST_CASE(basics, init) |
65
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
89 { |
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
90 struct script sc; |
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
91 |
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
92 script_init(&sc); |
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
93 |
336
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
94 RX_UINT_REQUIRE_EQUAL(sc.actionsz, 0U); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
95 RX_UINT_REQUIRE_EQUAL(sc.cur, 0U); |
65
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
96 } |
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
97 |
408
0ea90751a62d
tests: disable entirely automatic registration
David Demelier <markand@malikania.fr>
parents:
407
diff
changeset
|
98 RX_TEST_CASE(basics, append) |
65
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
99 { |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
100 struct action act[3] = {0}; |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
101 struct script sc = {0}; |
65
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
102 |
336
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
103 RX_REQUIRE(script_append(&sc, &act[0]) == 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
104 RX_UINT_REQUIRE_EQUAL(sc.cur, 0U); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
105 RX_UINT_REQUIRE_EQUAL(sc.actionsz, 1U); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
106 RX_PTR_REQUIRE_EQUAL(sc.actions[0], &act[0]); |
65
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
107 |
336
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
108 RX_REQUIRE(script_append(&sc, &act[1]) == 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
109 RX_UINT_REQUIRE_EQUAL(sc.cur, 0U); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
110 RX_UINT_REQUIRE_EQUAL(sc.actionsz, 2U); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
111 RX_PTR_REQUIRE_EQUAL(sc.actions[0], &act[0]); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
112 RX_PTR_REQUIRE_EQUAL(sc.actions[1], &act[1]); |
65
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
113 |
336
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
114 RX_REQUIRE(script_append(&sc, &act[2]) == 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
115 RX_UINT_REQUIRE_EQUAL(sc.cur, 0U); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
116 RX_UINT_REQUIRE_EQUAL(sc.actionsz, 3U); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
117 RX_PTR_REQUIRE_EQUAL(sc.actions[0], &act[0]); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
118 RX_PTR_REQUIRE_EQUAL(sc.actions[1], &act[1]); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
119 RX_PTR_REQUIRE_EQUAL(sc.actions[2], &act[2]); |
65
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
120 |
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
121 script_finish(&sc); |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
122 } |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
123 |
408
0ea90751a62d
tests: disable entirely automatic registration
David Demelier <markand@malikania.fr>
parents:
407
diff
changeset
|
124 RX_TEST_CASE(basics, handle) |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
125 { |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
126 struct { |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
127 struct invokes inv; |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
128 struct action act; |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
129 } table[] = { |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
130 { .act = INIT(&table[0].inv, my_update_true) }, |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
131 { .act = INIT(&table[1].inv, my_update_true) }, |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
132 { .act = INIT(&table[2].inv, my_update_false) } |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
133 }; |
407
e6f972e04519
tests: don't use automatic feature
David Demelier <markand@malikania.fr>
parents:
378
diff
changeset
|
134 |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
135 struct script sc = {0}; |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
136 |
336
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
137 RX_REQUIRE(script_append(&sc, &table[0].act) == 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
138 RX_REQUIRE(script_append(&sc, &table[1].act) == 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
139 RX_REQUIRE(script_append(&sc, &table[2].act) == 0); |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
140 |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
141 /* [0] */ |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
142 script_handle(&sc, &(union event){0}); |
336
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
143 RX_INT_REQUIRE_EQUAL(table[0].inv.handle, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
144 RX_INT_REQUIRE_EQUAL(table[0].inv.update, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
145 RX_INT_REQUIRE_EQUAL(table[0].inv.draw, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
146 RX_INT_REQUIRE_EQUAL(table[0].inv.end, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
147 RX_INT_REQUIRE_EQUAL(table[0].inv.finish, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
148 RX_INT_REQUIRE_EQUAL(table[1].inv.handle, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
149 RX_INT_REQUIRE_EQUAL(table[1].inv.update, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
150 RX_INT_REQUIRE_EQUAL(table[1].inv.draw, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
151 RX_INT_REQUIRE_EQUAL(table[1].inv.end, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
152 RX_INT_REQUIRE_EQUAL(table[1].inv.finish, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
153 RX_INT_REQUIRE_EQUAL(table[2].inv.handle, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
154 RX_INT_REQUIRE_EQUAL(table[2].inv.update, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
155 RX_INT_REQUIRE_EQUAL(table[2].inv.draw, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
156 RX_INT_REQUIRE_EQUAL(table[2].inv.end, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
157 RX_INT_REQUIRE_EQUAL(table[2].inv.finish, 0); |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
158 |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
159 /* [0] -> [1] */ |
336
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
160 RX_REQUIRE(!script_update(&sc, 0)); |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
161 script_handle(&sc, &(union event){0}); |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
162 |
336
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
163 RX_INT_REQUIRE_EQUAL(table[0].inv.handle, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
164 RX_INT_REQUIRE_EQUAL(table[0].inv.update, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
165 RX_INT_REQUIRE_EQUAL(table[0].inv.draw, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
166 RX_INT_REQUIRE_EQUAL(table[0].inv.end, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
167 RX_INT_REQUIRE_EQUAL(table[0].inv.finish, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
168 RX_INT_REQUIRE_EQUAL(table[1].inv.handle, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
169 RX_INT_REQUIRE_EQUAL(table[1].inv.update, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
170 RX_INT_REQUIRE_EQUAL(table[1].inv.draw, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
171 RX_INT_REQUIRE_EQUAL(table[1].inv.end, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
172 RX_INT_REQUIRE_EQUAL(table[1].inv.finish, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
173 RX_INT_REQUIRE_EQUAL(table[2].inv.handle, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
174 RX_INT_REQUIRE_EQUAL(table[2].inv.update, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
175 RX_INT_REQUIRE_EQUAL(table[2].inv.draw, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
176 RX_INT_REQUIRE_EQUAL(table[2].inv.end, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
177 RX_INT_REQUIRE_EQUAL(table[2].inv.finish, 0); |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
178 |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
179 /* [2] */ |
336
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
180 RX_REQUIRE(!script_update(&sc, 0)); |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
181 script_handle(&sc, &(union event){0}); |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
182 |
336
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
183 RX_INT_REQUIRE_EQUAL(table[0].inv.handle, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
184 RX_INT_REQUIRE_EQUAL(table[0].inv.update, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
185 RX_INT_REQUIRE_EQUAL(table[0].inv.draw, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
186 RX_INT_REQUIRE_EQUAL(table[0].inv.end, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
187 RX_INT_REQUIRE_EQUAL(table[0].inv.finish, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
188 RX_INT_REQUIRE_EQUAL(table[1].inv.handle, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
189 RX_INT_REQUIRE_EQUAL(table[1].inv.update, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
190 RX_INT_REQUIRE_EQUAL(table[1].inv.draw, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
191 RX_INT_REQUIRE_EQUAL(table[1].inv.end, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
192 RX_INT_REQUIRE_EQUAL(table[1].inv.finish, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
193 RX_INT_REQUIRE_EQUAL(table[2].inv.handle, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
194 RX_INT_REQUIRE_EQUAL(table[2].inv.update, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
195 RX_INT_REQUIRE_EQUAL(table[2].inv.draw, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
196 RX_INT_REQUIRE_EQUAL(table[2].inv.end, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
197 RX_INT_REQUIRE_EQUAL(table[2].inv.finish, 0); |
65
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
198 } |
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
199 |
408
0ea90751a62d
tests: disable entirely automatic registration
David Demelier <markand@malikania.fr>
parents:
407
diff
changeset
|
200 RX_TEST_CASE(basics, update) |
65
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
201 { |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
202 struct { |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
203 struct invokes inv; |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
204 struct action act; |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
205 } table[] = { |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
206 { .act = INIT(&table[0].inv, my_update_true) }, |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
207 { .act = INIT(&table[1].inv, my_update_true) }, |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
208 { .act = INIT(&table[2].inv, my_update_false) } |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
209 }; |
407
e6f972e04519
tests: don't use automatic feature
David Demelier <markand@malikania.fr>
parents:
378
diff
changeset
|
210 |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
211 struct script sc = {0}; |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
212 |
336
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
213 RX_REQUIRE(script_append(&sc, &table[0].act) == 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
214 RX_REQUIRE(script_append(&sc, &table[1].act) == 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
215 RX_REQUIRE(script_append(&sc, &table[2].act) == 0); |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
216 |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
217 /* 0 -> 1 */ |
336
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
218 RX_REQUIRE(!script_update(&sc, 0)); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
219 RX_INT_REQUIRE_EQUAL(table[0].inv.handle, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
220 RX_INT_REQUIRE_EQUAL(table[0].inv.update, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
221 RX_INT_REQUIRE_EQUAL(table[0].inv.draw, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
222 RX_INT_REQUIRE_EQUAL(table[0].inv.end, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
223 RX_INT_REQUIRE_EQUAL(table[0].inv.finish, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
224 RX_INT_REQUIRE_EQUAL(table[1].inv.handle, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
225 RX_INT_REQUIRE_EQUAL(table[1].inv.update, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
226 RX_INT_REQUIRE_EQUAL(table[1].inv.draw, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
227 RX_INT_REQUIRE_EQUAL(table[1].inv.end, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
228 RX_INT_REQUIRE_EQUAL(table[1].inv.finish, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
229 RX_INT_REQUIRE_EQUAL(table[2].inv.handle, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
230 RX_INT_REQUIRE_EQUAL(table[2].inv.update, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
231 RX_INT_REQUIRE_EQUAL(table[2].inv.draw, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
232 RX_INT_REQUIRE_EQUAL(table[2].inv.end, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
233 RX_INT_REQUIRE_EQUAL(table[2].inv.finish, 0); |
65
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
234 |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
235 /* 1 -> 2 */ |
336
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
236 RX_REQUIRE(!script_update(&sc, 0)); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
237 RX_INT_REQUIRE_EQUAL(table[0].inv.handle, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
238 RX_INT_REQUIRE_EQUAL(table[0].inv.update, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
239 RX_INT_REQUIRE_EQUAL(table[0].inv.draw, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
240 RX_INT_REQUIRE_EQUAL(table[0].inv.end, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
241 RX_INT_REQUIRE_EQUAL(table[0].inv.finish, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
242 RX_INT_REQUIRE_EQUAL(table[1].inv.handle, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
243 RX_INT_REQUIRE_EQUAL(table[1].inv.update, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
244 RX_INT_REQUIRE_EQUAL(table[1].inv.draw, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
245 RX_INT_REQUIRE_EQUAL(table[1].inv.end, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
246 RX_INT_REQUIRE_EQUAL(table[1].inv.finish, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
247 RX_INT_REQUIRE_EQUAL(table[2].inv.handle, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
248 RX_INT_REQUIRE_EQUAL(table[2].inv.update, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
249 RX_INT_REQUIRE_EQUAL(table[2].inv.draw, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
250 RX_INT_REQUIRE_EQUAL(table[2].inv.end, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
251 RX_INT_REQUIRE_EQUAL(table[2].inv.finish, 0); |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
252 |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
253 /* 2 stays, it never ends. */ |
336
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
254 RX_REQUIRE(!script_update(&sc, 0)); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
255 RX_REQUIRE(!script_update(&sc, 0)); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
256 RX_REQUIRE(!script_update(&sc, 0)); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
257 RX_INT_REQUIRE_EQUAL(table[0].inv.handle, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
258 RX_INT_REQUIRE_EQUAL(table[0].inv.update, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
259 RX_INT_REQUIRE_EQUAL(table[0].inv.draw, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
260 RX_INT_REQUIRE_EQUAL(table[0].inv.end, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
261 RX_INT_REQUIRE_EQUAL(table[0].inv.finish, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
262 RX_INT_REQUIRE_EQUAL(table[1].inv.handle, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
263 RX_INT_REQUIRE_EQUAL(table[1].inv.update, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
264 RX_INT_REQUIRE_EQUAL(table[1].inv.draw, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
265 RX_INT_REQUIRE_EQUAL(table[1].inv.end, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
266 RX_INT_REQUIRE_EQUAL(table[1].inv.finish, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
267 RX_INT_REQUIRE_EQUAL(table[2].inv.handle, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
268 RX_INT_REQUIRE_EQUAL(table[2].inv.update, 3); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
269 RX_INT_REQUIRE_EQUAL(table[2].inv.draw, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
270 RX_INT_REQUIRE_EQUAL(table[2].inv.end, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
271 RX_INT_REQUIRE_EQUAL(table[2].inv.finish, 0); |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
272 |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
273 /* Now, change its update function to complete the script. */ |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
274 table[2].act.update = my_update_true; |
336
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
275 RX_REQUIRE(script_update(&sc, 0)); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
276 RX_INT_REQUIRE_EQUAL(table[0].inv.handle, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
277 RX_INT_REQUIRE_EQUAL(table[0].inv.update, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
278 RX_INT_REQUIRE_EQUAL(table[0].inv.draw, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
279 RX_INT_REQUIRE_EQUAL(table[0].inv.end, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
280 RX_INT_REQUIRE_EQUAL(table[0].inv.finish, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
281 RX_INT_REQUIRE_EQUAL(table[1].inv.handle, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
282 RX_INT_REQUIRE_EQUAL(table[1].inv.update, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
283 RX_INT_REQUIRE_EQUAL(table[1].inv.draw, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
284 RX_INT_REQUIRE_EQUAL(table[1].inv.end, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
285 RX_INT_REQUIRE_EQUAL(table[1].inv.finish, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
286 RX_INT_REQUIRE_EQUAL(table[2].inv.handle, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
287 RX_INT_REQUIRE_EQUAL(table[2].inv.update, 4); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
288 RX_INT_REQUIRE_EQUAL(table[2].inv.draw, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
289 RX_INT_REQUIRE_EQUAL(table[2].inv.end, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
290 RX_INT_REQUIRE_EQUAL(table[2].inv.finish, 0); |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
291 } |
65
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
292 |
408
0ea90751a62d
tests: disable entirely automatic registration
David Demelier <markand@malikania.fr>
parents:
407
diff
changeset
|
293 RX_TEST_CASE(basics, draw) |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
294 { |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
295 struct { |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
296 struct invokes inv; |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
297 struct action act; |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
298 } table[] = { |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
299 { .act = INIT(&table[0].inv, my_update_true) }, |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
300 { .act = INIT(&table[1].inv, my_update_true) }, |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
301 { .act = INIT(&table[2].inv, my_update_false) } |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
302 }; |
407
e6f972e04519
tests: don't use automatic feature
David Demelier <markand@malikania.fr>
parents:
378
diff
changeset
|
303 |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
304 struct script sc = {0}; |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
305 |
336
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
306 RX_REQUIRE(script_append(&sc, &table[0].act) == 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
307 RX_REQUIRE(script_append(&sc, &table[1].act) == 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
308 RX_REQUIRE(script_append(&sc, &table[2].act) == 0); |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
309 |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
310 /* [0] */ |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
311 script_draw(&sc); |
336
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
312 RX_INT_REQUIRE_EQUAL(table[0].inv.handle, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
313 RX_INT_REQUIRE_EQUAL(table[0].inv.update, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
314 RX_INT_REQUIRE_EQUAL(table[0].inv.draw, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
315 RX_INT_REQUIRE_EQUAL(table[0].inv.end, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
316 RX_INT_REQUIRE_EQUAL(table[0].inv.finish, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
317 RX_INT_REQUIRE_EQUAL(table[1].inv.handle, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
318 RX_INT_REQUIRE_EQUAL(table[1].inv.update, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
319 RX_INT_REQUIRE_EQUAL(table[1].inv.draw, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
320 RX_INT_REQUIRE_EQUAL(table[1].inv.end, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
321 RX_INT_REQUIRE_EQUAL(table[1].inv.finish, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
322 RX_INT_REQUIRE_EQUAL(table[2].inv.handle, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
323 RX_INT_REQUIRE_EQUAL(table[2].inv.update, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
324 RX_INT_REQUIRE_EQUAL(table[2].inv.draw, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
325 RX_INT_REQUIRE_EQUAL(table[2].inv.end, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
326 RX_INT_REQUIRE_EQUAL(table[2].inv.finish, 0); |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
327 |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
328 /* [0] -> [1] */ |
336
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
329 RX_REQUIRE(!script_update(&sc, 0)); |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
330 script_draw(&sc); |
65
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
331 |
336
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
332 RX_INT_REQUIRE_EQUAL(table[0].inv.handle, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
333 RX_INT_REQUIRE_EQUAL(table[0].inv.update, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
334 RX_INT_REQUIRE_EQUAL(table[0].inv.draw, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
335 RX_INT_REQUIRE_EQUAL(table[0].inv.end, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
336 RX_INT_REQUIRE_EQUAL(table[0].inv.finish, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
337 RX_INT_REQUIRE_EQUAL(table[1].inv.handle, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
338 RX_INT_REQUIRE_EQUAL(table[1].inv.update, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
339 RX_INT_REQUIRE_EQUAL(table[1].inv.draw, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
340 RX_INT_REQUIRE_EQUAL(table[1].inv.end, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
341 RX_INT_REQUIRE_EQUAL(table[1].inv.finish, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
342 RX_INT_REQUIRE_EQUAL(table[2].inv.handle, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
343 RX_INT_REQUIRE_EQUAL(table[2].inv.update, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
344 RX_INT_REQUIRE_EQUAL(table[2].inv.draw, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
345 RX_INT_REQUIRE_EQUAL(table[2].inv.end, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
346 RX_INT_REQUIRE_EQUAL(table[2].inv.finish, 0); |
65
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
347 |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
348 /* [2] */ |
336
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
349 RX_REQUIRE(!script_update(&sc, 0)); |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
350 script_draw(&sc); |
65
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
351 |
336
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
352 RX_INT_REQUIRE_EQUAL(table[0].inv.handle, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
353 RX_INT_REQUIRE_EQUAL(table[0].inv.update, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
354 RX_INT_REQUIRE_EQUAL(table[0].inv.draw, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
355 RX_INT_REQUIRE_EQUAL(table[0].inv.end, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
356 RX_INT_REQUIRE_EQUAL(table[0].inv.finish, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
357 RX_INT_REQUIRE_EQUAL(table[1].inv.handle, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
358 RX_INT_REQUIRE_EQUAL(table[1].inv.update, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
359 RX_INT_REQUIRE_EQUAL(table[1].inv.draw, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
360 RX_INT_REQUIRE_EQUAL(table[1].inv.end, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
361 RX_INT_REQUIRE_EQUAL(table[1].inv.finish, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
362 RX_INT_REQUIRE_EQUAL(table[2].inv.handle, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
363 RX_INT_REQUIRE_EQUAL(table[2].inv.update, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
364 RX_INT_REQUIRE_EQUAL(table[2].inv.draw, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
365 RX_INT_REQUIRE_EQUAL(table[2].inv.end, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
366 RX_INT_REQUIRE_EQUAL(table[2].inv.finish, 0); |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
367 } |
65
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
368 |
408
0ea90751a62d
tests: disable entirely automatic registration
David Demelier <markand@malikania.fr>
parents:
407
diff
changeset
|
369 RX_TEST_CASE(basics, finish) |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
370 { |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
371 struct { |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
372 struct invokes inv; |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
373 struct action act; |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
374 } table[] = { |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
375 { .act = INIT(&table[0].inv, my_update_true) }, |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
376 { .act = INIT(&table[1].inv, my_update_true) }, |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
377 { .act = INIT(&table[2].inv, my_update_false) } |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
378 }; |
407
e6f972e04519
tests: don't use automatic feature
David Demelier <markand@malikania.fr>
parents:
378
diff
changeset
|
379 |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
380 struct script sc = {0}; |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
381 |
336
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
382 RX_REQUIRE(script_append(&sc, &table[0].act) == 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
383 RX_REQUIRE(script_append(&sc, &table[1].act) == 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
384 RX_REQUIRE(script_append(&sc, &table[2].act) == 0); |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
385 |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
386 /* Update once so that the current action goes to 1. */ |
336
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
387 RX_REQUIRE(!script_update(&sc, 0)); |
65
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
388 |
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
389 script_finish(&sc); |
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
390 |
336
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
391 RX_INT_REQUIRE_EQUAL(table[0].inv.handle, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
392 RX_INT_REQUIRE_EQUAL(table[0].inv.update, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
393 RX_INT_REQUIRE_EQUAL(table[0].inv.draw, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
394 RX_INT_REQUIRE_EQUAL(table[0].inv.end, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
395 RX_INT_REQUIRE_EQUAL(table[0].inv.finish, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
396 RX_INT_REQUIRE_EQUAL(table[1].inv.handle, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
397 RX_INT_REQUIRE_EQUAL(table[1].inv.update, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
398 RX_INT_REQUIRE_EQUAL(table[1].inv.draw, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
399 RX_INT_REQUIRE_EQUAL(table[1].inv.end, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
400 RX_INT_REQUIRE_EQUAL(table[1].inv.finish, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
401 RX_INT_REQUIRE_EQUAL(table[2].inv.handle, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
402 RX_INT_REQUIRE_EQUAL(table[2].inv.update, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
403 RX_INT_REQUIRE_EQUAL(table[2].inv.draw, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
404 RX_INT_REQUIRE_EQUAL(table[2].inv.end, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
405 RX_INT_REQUIRE_EQUAL(table[2].inv.finish, 1); |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
406 } |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
407 |
408
0ea90751a62d
tests: disable entirely automatic registration
David Demelier <markand@malikania.fr>
parents:
407
diff
changeset
|
408 RX_TEST_CASE(action, simple) |
65
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
409 { |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
410 struct { |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
411 struct invokes inv; |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
412 struct action act; |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
413 } table[] = { |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
414 { .act = INIT(&table[0].inv, my_update_true) }, |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
415 { .act = INIT(&table[1].inv, my_update_true) }, |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
416 { .act = INIT(&table[2].inv, my_update_false) } |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
417 }; |
407
e6f972e04519
tests: don't use automatic feature
David Demelier <markand@malikania.fr>
parents:
378
diff
changeset
|
418 |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
419 struct script sc = {0}; |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
420 struct action act; |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
421 |
336
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
422 RX_REQUIRE(script_append(&sc, &table[0].act) == 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
423 RX_REQUIRE(script_append(&sc, &table[1].act) == 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
424 RX_REQUIRE(script_append(&sc, &table[2].act) == 0); |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
425 |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
426 /* Now convert this script into an action itself. */ |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
427 script_action(&sc, &act); |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
428 |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
429 /* Draw and input before updating. */ |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
430 action_handle(&act, &(union event){0}); |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
431 action_draw(&act); |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
432 |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
433 /* [0] -> [1] */ |
336
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
434 RX_REQUIRE(!action_update(&act, 0)); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
435 RX_INT_REQUIRE_EQUAL(table[0].inv.handle, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
436 RX_INT_REQUIRE_EQUAL(table[0].inv.update, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
437 RX_INT_REQUIRE_EQUAL(table[0].inv.draw, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
438 RX_INT_REQUIRE_EQUAL(table[0].inv.end, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
439 RX_INT_REQUIRE_EQUAL(table[0].inv.finish, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
440 RX_INT_REQUIRE_EQUAL(table[1].inv.handle, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
441 RX_INT_REQUIRE_EQUAL(table[1].inv.update, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
442 RX_INT_REQUIRE_EQUAL(table[1].inv.draw, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
443 RX_INT_REQUIRE_EQUAL(table[1].inv.end, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
444 RX_INT_REQUIRE_EQUAL(table[1].inv.finish, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
445 RX_INT_REQUIRE_EQUAL(table[2].inv.handle, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
446 RX_INT_REQUIRE_EQUAL(table[2].inv.update, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
447 RX_INT_REQUIRE_EQUAL(table[2].inv.draw, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
448 RX_INT_REQUIRE_EQUAL(table[2].inv.end, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
449 RX_INT_REQUIRE_EQUAL(table[2].inv.finish, 0); |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
450 |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
451 action_handle(&act, &(union event){0}); |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
452 action_draw(&act); |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
453 |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
454 /* [1] -> [2] */ |
336
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
455 RX_REQUIRE(!action_update(&act, 0)); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
456 RX_INT_REQUIRE_EQUAL(table[0].inv.handle, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
457 RX_INT_REQUIRE_EQUAL(table[0].inv.update, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
458 RX_INT_REQUIRE_EQUAL(table[0].inv.draw, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
459 RX_INT_REQUIRE_EQUAL(table[0].inv.end, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
460 RX_INT_REQUIRE_EQUAL(table[0].inv.finish, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
461 RX_INT_REQUIRE_EQUAL(table[1].inv.handle, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
462 RX_INT_REQUIRE_EQUAL(table[1].inv.update, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
463 RX_INT_REQUIRE_EQUAL(table[1].inv.draw, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
464 RX_INT_REQUIRE_EQUAL(table[1].inv.end, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
465 RX_INT_REQUIRE_EQUAL(table[1].inv.finish, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
466 RX_INT_REQUIRE_EQUAL(table[2].inv.handle, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
467 RX_INT_REQUIRE_EQUAL(table[2].inv.update, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
468 RX_INT_REQUIRE_EQUAL(table[2].inv.draw, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
469 RX_INT_REQUIRE_EQUAL(table[2].inv.end, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
470 RX_INT_REQUIRE_EQUAL(table[2].inv.finish, 0); |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
471 |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
472 action_handle(&act, &(union event){0}); |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
473 action_draw(&act); |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
474 |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
475 /* 2 stays, it never ends. */ |
336
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
476 RX_REQUIRE(!action_update(&act, 0)); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
477 RX_REQUIRE(!action_update(&act, 0)); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
478 RX_REQUIRE(!action_update(&act, 0)); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
479 RX_INT_REQUIRE_EQUAL(table[0].inv.handle, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
480 RX_INT_REQUIRE_EQUAL(table[0].inv.update, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
481 RX_INT_REQUIRE_EQUAL(table[0].inv.draw, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
482 RX_INT_REQUIRE_EQUAL(table[0].inv.end, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
483 RX_INT_REQUIRE_EQUAL(table[0].inv.finish, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
484 RX_INT_REQUIRE_EQUAL(table[1].inv.handle, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
485 RX_INT_REQUIRE_EQUAL(table[1].inv.update, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
486 RX_INT_REQUIRE_EQUAL(table[1].inv.draw, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
487 RX_INT_REQUIRE_EQUAL(table[1].inv.end, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
488 RX_INT_REQUIRE_EQUAL(table[1].inv.finish, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
489 RX_INT_REQUIRE_EQUAL(table[2].inv.handle, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
490 RX_INT_REQUIRE_EQUAL(table[2].inv.update, 3); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
491 RX_INT_REQUIRE_EQUAL(table[2].inv.draw, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
492 RX_INT_REQUIRE_EQUAL(table[2].inv.end, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
493 RX_INT_REQUIRE_EQUAL(table[2].inv.finish, 0); |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
494 |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
495 table[2].act.update = my_update_true; |
336
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
496 RX_REQUIRE(action_update(&act, 0)); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
497 RX_INT_REQUIRE_EQUAL(table[0].inv.handle, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
498 RX_INT_REQUIRE_EQUAL(table[0].inv.update, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
499 RX_INT_REQUIRE_EQUAL(table[0].inv.draw, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
500 RX_INT_REQUIRE_EQUAL(table[0].inv.end, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
501 RX_INT_REQUIRE_EQUAL(table[0].inv.finish, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
502 RX_INT_REQUIRE_EQUAL(table[1].inv.handle, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
503 RX_INT_REQUIRE_EQUAL(table[1].inv.update, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
504 RX_INT_REQUIRE_EQUAL(table[1].inv.draw, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
505 RX_INT_REQUIRE_EQUAL(table[1].inv.end, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
506 RX_INT_REQUIRE_EQUAL(table[1].inv.finish, 0); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
507 RX_INT_REQUIRE_EQUAL(table[2].inv.handle, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
508 RX_INT_REQUIRE_EQUAL(table[2].inv.update, 4); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
509 RX_INT_REQUIRE_EQUAL(table[2].inv.draw, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
510 RX_INT_REQUIRE_EQUAL(table[2].inv.end, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
511 RX_INT_REQUIRE_EQUAL(table[2].inv.finish, 0); |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
512 |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
513 /* Also dispose resources. */ |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
514 action_finish(&act); |
336
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
515 RX_INT_REQUIRE_EQUAL(table[0].inv.handle, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
516 RX_INT_REQUIRE_EQUAL(table[0].inv.update, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
517 RX_INT_REQUIRE_EQUAL(table[0].inv.draw, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
518 RX_INT_REQUIRE_EQUAL(table[0].inv.end, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
519 RX_INT_REQUIRE_EQUAL(table[0].inv.finish, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
520 RX_INT_REQUIRE_EQUAL(table[1].inv.handle, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
521 RX_INT_REQUIRE_EQUAL(table[1].inv.update, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
522 RX_INT_REQUIRE_EQUAL(table[1].inv.draw, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
523 RX_INT_REQUIRE_EQUAL(table[1].inv.end, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
524 RX_INT_REQUIRE_EQUAL(table[1].inv.finish, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
525 RX_INT_REQUIRE_EQUAL(table[2].inv.handle, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
526 RX_INT_REQUIRE_EQUAL(table[2].inv.update, 4); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
527 RX_INT_REQUIRE_EQUAL(table[2].inv.draw, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
528 RX_INT_REQUIRE_EQUAL(table[2].inv.end, 1); |
f5a5bbb77122
tests: switch to rexo
David Demelier <markand@malikania.fr>
parents:
314
diff
changeset
|
529 RX_INT_REQUIRE_EQUAL(table[2].inv.finish, 1); |
136
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
530 } |
30b68089ae70
core: rework actions and a bit of drawables, closes #2492
David Demelier <markand@malikania.fr>
parents:
121
diff
changeset
|
531 |
407
e6f972e04519
tests: don't use automatic feature
David Demelier <markand@malikania.fr>
parents:
378
diff
changeset
|
532 static const struct rx_test_case tests[] = { |
408
0ea90751a62d
tests: disable entirely automatic registration
David Demelier <markand@malikania.fr>
parents:
407
diff
changeset
|
533 TEST(basics, init), |
0ea90751a62d
tests: disable entirely automatic registration
David Demelier <markand@malikania.fr>
parents:
407
diff
changeset
|
534 TEST(basics, append), |
0ea90751a62d
tests: disable entirely automatic registration
David Demelier <markand@malikania.fr>
parents:
407
diff
changeset
|
535 TEST(basics, handle), |
0ea90751a62d
tests: disable entirely automatic registration
David Demelier <markand@malikania.fr>
parents:
407
diff
changeset
|
536 TEST(basics, update), |
0ea90751a62d
tests: disable entirely automatic registration
David Demelier <markand@malikania.fr>
parents:
407
diff
changeset
|
537 TEST(basics, draw), |
0ea90751a62d
tests: disable entirely automatic registration
David Demelier <markand@malikania.fr>
parents:
407
diff
changeset
|
538 TEST(basics, finish), |
0ea90751a62d
tests: disable entirely automatic registration
David Demelier <markand@malikania.fr>
parents:
407
diff
changeset
|
539 TEST(action, simple) |
407
e6f972e04519
tests: don't use automatic feature
David Demelier <markand@malikania.fr>
parents:
378
diff
changeset
|
540 }; |
e6f972e04519
tests: don't use automatic feature
David Demelier <markand@malikania.fr>
parents:
378
diff
changeset
|
541 |
65
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
542 int |
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
543 main(int argc, char **argv) |
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
544 { |
408
0ea90751a62d
tests: disable entirely automatic registration
David Demelier <markand@malikania.fr>
parents:
407
diff
changeset
|
545 return TEST_RUN_ALL(tests, argc, argv); |
65
80a913d25aa9
core: implement script, closes #2465 @2h
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
546 } |