1 | #![allow (deprecated)]slint::slint!{#[include_path=r#"/input/slint/tests/driver/driverlib/../../cases/bindings"# ] |
2 | // Copyright © SixtyFPS GmbH <info@slint.dev> |
3 | // SPDX-License-Identifier: GPL-3.0-only OR LicenseRef-Slint-Royalty-free-1.1 OR LicenseRef-Slint-commercial |
4 | |
5 | OtherComp := Rectangle { |
6 | property <string> t <=> text.text; |
7 | property <string> get_text <=> text.text; |
8 | text := Text { |
9 | text: "to be overridden" ; |
10 | } |
11 | property <int> some_value: 42; |
12 | property <int> some_value_alias <=> some_value; |
13 | } |
14 | |
15 | TestCase := Rectangle { |
16 | |
17 | property <string> text1: "Hello" ; |
18 | property <string> text2: "Blah" ; |
19 | property <string> ti1_text: ti1.text; |
20 | property <string> ti2_text: ti2.text; |
21 | property <string> text_item_text: text_item.text; |
22 | property <string> othercomp_t: "real value" ; |
23 | property <string> othercomp_get_text: other_comp.get_text; |
24 | property <int> othercomp_some_value; |
25 | property <int> othercomp_some_value_alias <=> other_comp.some_value_alias; |
26 | property <int> othercomp_some_value_alias2; |
27 | |
28 | ti1 := TextInput { |
29 | text <=> text1; |
30 | } |
31 | |
32 | ti2 := TextInput { |
33 | text <=> text_item.text; |
34 | } |
35 | |
36 | text_item := Text { |
37 | text: text2; |
38 | } |
39 | |
40 | Text { |
41 | text <=> text1; |
42 | } |
43 | |
44 | other_comp := OtherComp { |
45 | t <=> root.othercomp_t; |
46 | some_value <=> othercomp_some_value; |
47 | some_value_alias <=> othercomp_some_value_alias2; |
48 | } |
49 | |
50 | callback set_ti1(string); |
51 | set_ti1(a) => { ti1.text = a; } |
52 | callback set_ti2(string); |
53 | set_ti2(a) => { ti2.text = a; } |
54 | } |
55 | |
56 | |
57 | /* |
58 | |
59 | ```rust |
60 | let instance = TestCase::new().unwrap(); |
61 | assert_eq!(instance.get_text1(), slint::SharedString::from("Hello")); |
62 | assert_eq!(instance.get_text2(), slint::SharedString::from("Blah")); |
63 | assert_eq!(instance.get_ti1_text(), slint::SharedString::from("Hello")); |
64 | assert_eq!(instance.get_ti2_text(), slint::SharedString::from("Blah")); |
65 | assert_eq!(instance.get_text_item_text(), slint::SharedString::from("Blah")); |
66 | assert_eq!(instance.get_othercomp_t(), instance.get_othercomp_get_text()); |
67 | assert_eq!(instance.get_othercomp_t(), slint::SharedString::from("real value")); |
68 | assert_eq!(instance.get_othercomp_get_text(), slint::SharedString::from("real value")); |
69 | |
70 | instance.set_text1(slint::SharedString::from("Text1New")); |
71 | instance.set_text2(slint::SharedString::from("Text2New")); |
72 | assert_eq!(instance.get_text1(), slint::SharedString::from("Text1New")); |
73 | assert_eq!(instance.get_text2(), slint::SharedString::from("Text2New")); |
74 | assert_eq!(instance.get_ti1_text(), slint::SharedString::from("Text1New")); |
75 | assert_eq!(instance.get_ti2_text(), slint::SharedString::from("Text2New")); |
76 | assert_eq!(instance.get_text_item_text(), slint::SharedString::from("Text2New")); |
77 | |
78 | instance.invoke_set_ti1(slint::SharedString::from("Hallo")); |
79 | instance.invoke_set_ti2(slint::SharedString::from("Bonjour")); |
80 | assert_eq!(instance.get_text1(), slint::SharedString::from("Hallo")); |
81 | assert_eq!(instance.get_text2(), slint::SharedString::from("Text2New")); |
82 | assert_eq!(instance.get_ti1_text(), slint::SharedString::from("Hallo")); |
83 | assert_eq!(instance.get_ti2_text(), slint::SharedString::from("Bonjour")); |
84 | assert_eq!(instance.get_text_item_text(), slint::SharedString::from("Bonjour")); |
85 | |
86 | assert_eq!(instance.get_othercomp_some_value(), 0); |
87 | assert_eq!(instance.get_othercomp_some_value_alias(), 0); |
88 | assert_eq!(instance.get_othercomp_some_value_alias2(), 0); |
89 | instance.set_othercomp_some_value(88); |
90 | assert_eq!(instance.get_othercomp_some_value(), 88); |
91 | assert_eq!(instance.get_othercomp_some_value_alias(), 88); |
92 | assert_eq!(instance.get_othercomp_some_value_alias2(), 88); |
93 | instance.set_othercomp_some_value_alias(81); |
94 | assert_eq!(instance.get_othercomp_some_value(), 81); |
95 | assert_eq!(instance.get_othercomp_some_value_alias(), 81); |
96 | assert_eq!(instance.get_othercomp_some_value_alias2(), 81); |
97 | instance.set_othercomp_some_value_alias2(1); |
98 | assert_eq!(instance.get_othercomp_some_value(), 1); |
99 | assert_eq!(instance.get_othercomp_some_value_alias(), 1); |
100 | assert_eq!(instance.get_othercomp_some_value_alias2(), 1); |
101 | |
102 | ``` |
103 | |
104 | |
105 | |
106 | ```cpp |
107 | auto handle = TestCase::create(); |
108 | const TestCase &instance = *handle; |
109 | assert_eq(instance.get_text1(), slint::SharedString("Hello")); |
110 | assert_eq(instance.get_text2(), slint::SharedString("Blah")); |
111 | assert_eq(instance.get_ti1_text(), slint::SharedString("Hello")); |
112 | assert_eq(instance.get_ti2_text(), slint::SharedString("Blah")); |
113 | assert_eq(instance.get_text_item_text(), slint::SharedString("Blah")); |
114 | assert_eq(instance.get_othercomp_t(), instance.get_othercomp_get_text()); |
115 | assert_eq(instance.get_othercomp_t(), slint::SharedString("real value")); |
116 | assert_eq(instance.get_othercomp_get_text(), slint::SharedString("real value")); |
117 | |
118 | |
119 | instance.set_text1(slint::SharedString("Text1New")); |
120 | instance.set_text2(slint::SharedString("Text2New")); |
121 | assert_eq(instance.get_text1(), slint::SharedString("Text1New")); |
122 | assert_eq(instance.get_text2(), slint::SharedString("Text2New")); |
123 | assert_eq(instance.get_ti1_text(), slint::SharedString("Text1New")); |
124 | assert_eq(instance.get_ti2_text(), slint::SharedString("Text2New")); |
125 | assert_eq(instance.get_text_item_text(), slint::SharedString("Text2New")); |
126 | |
127 | instance.invoke_set_ti1(slint::SharedString("Hallo")); |
128 | instance.invoke_set_ti2(slint::SharedString("Bonjour")); |
129 | assert_eq(instance.get_text1(), slint::SharedString("Hallo")); |
130 | assert_eq(instance.get_text2(), slint::SharedString("Text2New")); |
131 | assert_eq(instance.get_ti1_text(), slint::SharedString("Hallo")); |
132 | assert_eq(instance.get_ti2_text(), slint::SharedString("Bonjour")); |
133 | assert_eq(instance.get_text_item_text(), slint::SharedString("Bonjour")); |
134 | |
135 | assert_eq(instance.get_othercomp_some_value(), 0); |
136 | assert_eq(instance.get_othercomp_some_value_alias(), 0); |
137 | assert_eq(instance.get_othercomp_some_value_alias2(), 0); |
138 | instance.set_othercomp_some_value(88); |
139 | assert_eq(instance.get_othercomp_some_value(), 88); |
140 | assert_eq(instance.get_othercomp_some_value_alias(), 88); |
141 | assert_eq(instance.get_othercomp_some_value_alias2(), 88); |
142 | instance.set_othercomp_some_value_alias(81); |
143 | assert_eq(instance.get_othercomp_some_value(), 81); |
144 | assert_eq(instance.get_othercomp_some_value_alias(), 81); |
145 | assert_eq(instance.get_othercomp_some_value_alias2(), 81); |
146 | instance.set_othercomp_some_value_alias2(1); |
147 | assert_eq(instance.get_othercomp_some_value(), 1); |
148 | assert_eq(instance.get_othercomp_some_value_alias(), 1); |
149 | assert_eq(instance.get_othercomp_some_value_alias2(), 1); |
150 | ``` |
151 | |
152 | |
153 | ```js |
154 | let instance = new slint.TestCase({}); |
155 | assert.equal(instance.text1, "Hello"); |
156 | assert.equal(instance.text2, "Blah"); |
157 | assert.equal(instance.ti1_text, "Hello"); |
158 | assert.equal(instance.ti2_text, "Blah"); |
159 | assert.equal(instance.text_item_text, "Blah"); |
160 | assert.equal(instance.othercomp_t, instance.othercomp_get_text); |
161 | assert.equal(instance.othercomp_t, "real value"); |
162 | assert.equal(instance.othercomp_get_text, "real value"); |
163 | |
164 | instance.text1 = "Text1New"; |
165 | instance.text2 = "Text2New"; |
166 | assert.equal(instance.text1, "Text1New"); |
167 | assert.equal(instance.text2, "Text2New"); |
168 | assert.equal(instance.ti1_text, "Text1New"); |
169 | assert.equal(instance.ti2_text, "Text2New"); |
170 | assert.equal(instance.text_item_text, "Text2New"); |
171 | |
172 | instance.set_ti1("Hallo"); |
173 | instance.set_ti2("Bonjour"); |
174 | assert.equal(instance.text1, "Hallo"); |
175 | assert.equal(instance.text2, "Text2New"); |
176 | assert.equal(instance.ti1_text, "Hallo"); |
177 | assert.equal(instance.ti2_text, "Bonjour"); |
178 | assert.equal(instance.text_item_text, "Bonjour"); |
179 | |
180 | assert.equal(instance.othercomp_some_value, 0); |
181 | assert.equal(instance.othercomp_some_value_alias, 0); |
182 | assert.equal(instance.othercomp_some_value_alias2, 0); |
183 | instance.othercomp_some_value = 88; |
184 | assert.equal(instance.othercomp_some_value, 88); |
185 | assert.equal(instance.othercomp_some_value_alias, 88); |
186 | assert.equal(instance.othercomp_some_value_alias2, 88); |
187 | instance.othercomp_some_value_alias = 81; |
188 | assert.equal(instance.othercomp_some_value, 81); |
189 | assert.equal(instance.othercomp_some_value_alias, 81); |
190 | assert.equal(instance.othercomp_some_value_alias2, 81); |
191 | instance.othercomp_some_value_alias2 = 1; |
192 | assert.equal(instance.othercomp_some_value, 1); |
193 | assert.equal(instance.othercomp_some_value_alias, 1); |
194 | assert.equal(instance.othercomp_some_value_alias2, 1); |
195 | ``` |
196 | |
197 | */ |
198 | } |
199 | |
200 | #[test ] fn t_0() -> std::result::Result<(), std::boxed::Box<dyn std::error::Error>> { |
201 | use i_slint_backend_testing as slint_testing; |
202 | slint_testing::init(); |
203 | let instance = TestCase::new().unwrap(); |
204 | assert_eq!(instance.get_text1(), slint::SharedString::from("Hello" )); |
205 | assert_eq!(instance.get_text2(), slint::SharedString::from("Blah" )); |
206 | assert_eq!(instance.get_ti1_text(), slint::SharedString::from("Hello" )); |
207 | assert_eq!(instance.get_ti2_text(), slint::SharedString::from("Blah" )); |
208 | assert_eq!(instance.get_text_item_text(), slint::SharedString::from("Blah" )); |
209 | assert_eq!(instance.get_othercomp_t(), instance.get_othercomp_get_text()); |
210 | assert_eq!(instance.get_othercomp_t(), slint::SharedString::from("real value" )); |
211 | assert_eq!(instance.get_othercomp_get_text(), slint::SharedString::from("real value" )); |
212 | |
213 | instance.set_text1(slint::SharedString::from("Text1New" )); |
214 | instance.set_text2(slint::SharedString::from("Text2New" )); |
215 | assert_eq!(instance.get_text1(), slint::SharedString::from("Text1New" )); |
216 | assert_eq!(instance.get_text2(), slint::SharedString::from("Text2New" )); |
217 | assert_eq!(instance.get_ti1_text(), slint::SharedString::from("Text1New" )); |
218 | assert_eq!(instance.get_ti2_text(), slint::SharedString::from("Text2New" )); |
219 | assert_eq!(instance.get_text_item_text(), slint::SharedString::from("Text2New" )); |
220 | |
221 | instance.invoke_set_ti1(slint::SharedString::from("Hallo" )); |
222 | instance.invoke_set_ti2(slint::SharedString::from("Bonjour" )); |
223 | assert_eq!(instance.get_text1(), slint::SharedString::from("Hallo" )); |
224 | assert_eq!(instance.get_text2(), slint::SharedString::from("Text2New" )); |
225 | assert_eq!(instance.get_ti1_text(), slint::SharedString::from("Hallo" )); |
226 | assert_eq!(instance.get_ti2_text(), slint::SharedString::from("Bonjour" )); |
227 | assert_eq!(instance.get_text_item_text(), slint::SharedString::from("Bonjour" )); |
228 | |
229 | assert_eq!(instance.get_othercomp_some_value(), 0); |
230 | assert_eq!(instance.get_othercomp_some_value_alias(), 0); |
231 | assert_eq!(instance.get_othercomp_some_value_alias2(), 0); |
232 | instance.set_othercomp_some_value(88); |
233 | assert_eq!(instance.get_othercomp_some_value(), 88); |
234 | assert_eq!(instance.get_othercomp_some_value_alias(), 88); |
235 | assert_eq!(instance.get_othercomp_some_value_alias2(), 88); |
236 | instance.set_othercomp_some_value_alias(81); |
237 | assert_eq!(instance.get_othercomp_some_value(), 81); |
238 | assert_eq!(instance.get_othercomp_some_value_alias(), 81); |
239 | assert_eq!(instance.get_othercomp_some_value_alias2(), 81); |
240 | instance.set_othercomp_some_value_alias2(1); |
241 | assert_eq!(instance.get_othercomp_some_value(), 1); |
242 | assert_eq!(instance.get_othercomp_some_value_alias(), 1); |
243 | assert_eq!(instance.get_othercomp_some_value_alias2(), 1); |
244 | |
245 | Ok(()) |
246 | } |