Merge lp:~smspillaz/nux/nux.fix_1112321 into lp:nux
- nux.fix_1112321
- Merge into trunk
Status: | Merged | ||||
---|---|---|---|---|---|
Approved by: | Brandon Schaefer | ||||
Approved revision: | 758 | ||||
Merged at revision: | 762 | ||||
Proposed branch: | lp:~smspillaz/nux/nux.fix_1112321 | ||||
Merge into: | lp:nux | ||||
Prerequisite: | lp:~smspillaz/nux/nux.fix_1097281 | ||||
Diff against target: |
1355 lines (+671/-619) 4 files modified
tests/nux_automated_test_framework.cpp (+39/-8) tests/nux_automated_test_framework.h (+7/-0) tests/xtest-text-entry-compositionkeys.cpp (+315/-308) tests/xtest-text-entry-deadkeys.cpp (+310/-303) |
||||
To merge this branch: | bzr merge lp:~smspillaz/nux/nux.fix_1112321 | ||||
Related bugs: |
|
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Brandon Schaefer (community) | Approve | ||
PS Jenkins bot | continuous-integration | Pending | |
Review via email: mp+146098@code.launchpad.net |
Commit message
Skip the composition key tests if the server doesn't support it so that
we don't SIGABRT when trying to use that functionality (LP: #1112321)
Description of the change
Skip the composition key tests if the server doesn't support it so that
we don't SIGABRT when trying to use that functionality (LP: #1112321).
All the nux tests now pass
Michi Henning (michihenning) wrote : | # |
Sam Spilsbury (smspillaz) wrote : | # |
On Fri, Feb 1, 2013 at 7:41 PM, Michi Henning
<email address hidden> wrote:
> As a general comment, there are hundreds of lines that repeat every five or ten lines, doing the same thing over and over again. It would probably help a lot in terms of the maintainability of the tests if there were a table containing the inputs and outputs. In that case, there would be the table (easy to read, one line per test), and something like ten or twenty lines of code for the single test that runs through the table.
I agree.
I note that the "xtest" set of tests in Nux appear to be mainly
acceptance/
model slightly more acceptable. There's a lot of dependencies between
each of the tests, and they don't use an xUnit like framework.
The set-up and tear-down times would almost make separation not worth
it, although I'm pretty sure the tests take long enough with all those
sleep() statements used to get around the threading concerns.
We should focus on this later on.
> --
> https:/
> You are the owner of lp:~smspillaz/nux/nux.fix_1112321.
--
Sam Spilsbury
Brandon Schaefer (brandontschaefer) wrote : | # |
@Michi
This test was generated by script that test every single possible compilation of dead keys. Though it would be nicer to go through the header in Nux to go over ever combo....overall no more dead key combos will be needed but I do agree there is wwwaaayy to much repetition in this test and I apologize :(
Looks good and works for me
Brandon Schaefer (brandontschaefer) : | # |
Brandon Schaefer (brandontschaefer) wrote : | # |
Approved!
Preview Diff
1 | === modified file 'tests/nux_automated_test_framework.cpp' |
2 | --- tests/nux_automated_test_framework.cpp 2012-10-19 00:23:27 +0000 |
3 | +++ tests/nux_automated_test_framework.cpp 2013-02-01 11:15:39 +0000 |
4 | @@ -31,15 +31,16 @@ |
5 | int NuxAutomatedTestFramework::safety_border_inside_view = 1; // pixels |
6 | |
7 | NuxAutomatedTestFramework::NuxAutomatedTestFramework(nux::WindowThread *window_thread) |
8 | + : ready_to_start_(false) |
9 | + , display_(NULL) |
10 | + , window_thread_(window_thread) |
11 | + , window_x_(0) |
12 | + , window_y_(0) |
13 | + , window_width_(0) |
14 | + , window_height_(0) |
15 | + , terminate_when_test_over_(false) |
16 | + , composition_keys_supported_(false) |
17 | { |
18 | - ready_to_start_ = false; |
19 | - display_ = NULL; |
20 | - window_thread_ = window_thread; |
21 | - window_x_ = 0; |
22 | - window_y_ = 0; |
23 | - window_width_ = 0; |
24 | - window_height_ = 0; |
25 | - terminate_when_test_over_ = false; |
26 | } |
27 | |
28 | NuxAutomatedTestFramework::~NuxAutomatedTestFramework() |
29 | @@ -47,6 +48,17 @@ |
30 | XCloseDisplay(display_); |
31 | } |
32 | |
33 | +void NuxAutomatedTestFramework::WarnCompositionKeysNotSupported() |
34 | +{ |
35 | + nuxWarningMsg("Composition keys are not supported by your server, " |
36 | + "not running the composition keys tests"); |
37 | +} |
38 | + |
39 | +bool NuxAutomatedTestFramework::CompositionKeysSupported() |
40 | +{ |
41 | + return composition_keys_supported_; |
42 | +} |
43 | + |
44 | void NuxAutomatedTestFramework::SetTerminateProgramWhenDone(bool terminate) |
45 | { |
46 | terminate_when_test_over_ = terminate; |
47 | @@ -63,6 +75,25 @@ |
48 | nux::Geometry rect = window_thread_->GetGraphicsDisplay().GetWindowGeometry(); |
49 | //nuxDebugMsg("Window geometry: (%d, %d, %d, %d)", rect.x, rect.y, rect.width, rect.height); |
50 | |
51 | + int min, max, per_keycode; |
52 | + |
53 | + // Get the min and max keycodes |
54 | + XDisplayKeycodes(display_, &min, &max); |
55 | + |
56 | + // Must be called with: |
57 | + // first_keycode: min, |
58 | + // keycode_count: max - min |
59 | + KeySym *syms = XGetKeyboardMapping(display_, min, max - min, &per_keycode); |
60 | + |
61 | + // Number of keysyms is (max - min) * keysyms_per_keycode |
62 | + for (int i = 0; i < (max - min) * per_keycode; ++i) |
63 | + { |
64 | + if (syms[i] == XK_Multi_key) |
65 | + composition_keys_supported_ = true; |
66 | + } |
67 | + |
68 | + XFree(syms); |
69 | + |
70 | window_x_ = rect.x; |
71 | window_y_ = rect.y; |
72 | window_width_ = rect.width; |
73 | |
74 | === modified file 'tests/nux_automated_test_framework.h' |
75 | --- tests/nux_automated_test_framework.h 2012-09-11 06:50:44 +0000 |
76 | +++ tests/nux_automated_test_framework.h 2013-02-01 11:15:39 +0000 |
77 | @@ -30,6 +30,12 @@ |
78 | NuxAutomatedTestFramework(nux::WindowThread *window_thread); |
79 | virtual ~NuxAutomatedTestFramework(); |
80 | |
81 | + //! Returns true if composition keys are supported by the server |
82 | + bool CompositionKeysSupported(); |
83 | + |
84 | + //! Warn the developer composition keys are not supported |
85 | + void WarnCompositionKeysNotSupported(); |
86 | + |
87 | //! Initialize the testing framework. |
88 | void Startup(); |
89 | |
90 | @@ -130,6 +136,7 @@ |
91 | int window_width_; |
92 | int window_height_; |
93 | bool terminate_when_test_over_; |
94 | + bool composition_keys_supported_; |
95 | |
96 | static int mouse_motion_time_span; // in milliseconds |
97 | static int mouse_click_time_span; // in milliseconds |
98 | |
99 | === modified file 'tests/xtest-text-entry-compositionkeys.cpp' |
100 | --- tests/xtest-text-entry-compositionkeys.cpp 2012-10-01 23:37:25 +0000 |
101 | +++ tests/xtest-text-entry-compositionkeys.cpp 2013-02-01 11:15:39 +0000 |
102 | @@ -108,314 +108,321 @@ |
103 | |
104 | test.TestReportMsg(test_textentry->text_entry_, "TextEntry created"); |
105 | |
106 | - test_textentry->ResetEvents(); |
107 | - test.ViewSendMouseMotionToCenter(test_textentry->text_entry_); |
108 | - |
109 | - test.ViewSendMouseClick(0, 1); |
110 | - |
111 | - test.ViewSendCompositionKeys("`o"); |
112 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "ò", "ò"); |
113 | - |
114 | - test.ViewSendCompositionKeys("~o"); |
115 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "òõ", "òõ"); |
116 | - |
117 | - test.ViewSendCompositionKeys("^o"); |
118 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "òõô", "òõô"); |
119 | - |
120 | - test.ViewSendCompositionKeys("c="); |
121 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "òõô€", "òõô€"); |
122 | - |
123 | - test.ViewSendCompositionKeys("oc"); |
124 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "òõô€©", "òõô€©"); |
125 | - |
126 | - test.ViewSendCompositionKeys("\"w"); |
127 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "òõô€©ẅ", "òõô€©ẅ"); |
128 | - |
129 | - test.ViewSendCompositionKeys("'S"); |
130 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "òõô€©ẅŚ", "òõô€©ẅŚ"); |
131 | - test.ViewSendCtrlA(); |
132 | - test.ViewSendDelete(); |
133 | - |
134 | - nux::SleepForMilliseconds(100);; |
135 | - //exclamdown # INVERTED EXCLAMATION MARK |
136 | - test.ViewSendCompositionKeys("!!"); |
137 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "¡", "¡"); |
138 | - test.ViewSendCtrlA(); |
139 | - test.ViewSendDelete(); |
140 | - nux::SleepForMilliseconds(100);; |
141 | - |
142 | - //CENT SIGN |
143 | - test.ViewSendCompositionKeys("|c"); |
144 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "¢", "¢"); |
145 | - test.ViewSendCtrlA(); |
146 | - test.ViewSendDelete(); |
147 | - nux::SleepForMilliseconds(100);; |
148 | - |
149 | - //POUND SIGN |
150 | - test.ViewSendCompositionKeys("-L"); |
151 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "£", "£"); |
152 | - test.ViewSendCtrlA(); |
153 | - test.ViewSendDelete(); |
154 | - nux::SleepForMilliseconds(100);; |
155 | - |
156 | - //currency # CURRENCY SIGN |
157 | - test.ViewSendCompositionKeys("xo"); |
158 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "¤", "¤"); |
159 | - test.ViewSendCtrlA(); |
160 | - test.ViewSendDelete(); |
161 | - nux::SleepForMilliseconds(100);; |
162 | - |
163 | - //yen # YEN SIGN |
164 | - test.ViewSendCompositionKeys("Y="); |
165 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "¥", "¥"); |
166 | - test.ViewSendCtrlA(); |
167 | - test.ViewSendDelete(); |
168 | - nux::SleepForMilliseconds(100);; |
169 | - |
170 | - //FEMININE ORDINAL INDICATOR |
171 | - test.ViewSendCompositionKeys("^_a"); |
172 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "ª", "ª"); |
173 | - test.ViewSendCtrlA(); |
174 | - test.ViewSendDelete(); |
175 | - nux::SleepForMilliseconds(100);; |
176 | - |
177 | - //guillemotleft # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK |
178 | - test.ViewSendCompositionKeys("<<"); |
179 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "«", "«"); |
180 | - test.ViewSendCtrlA(); |
181 | - test.ViewSendDelete(); |
182 | - nux::SleepForMilliseconds(100);; |
183 | - |
184 | - //SUPERSCRIPT THREE |
185 | - test.ViewSendCompositionKeys("^3"); |
186 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "³", "³"); |
187 | - test.ViewSendCtrlA(); |
188 | - test.ViewSendDelete(); |
189 | - nux::SleepForMilliseconds(100);; |
190 | - |
191 | - //MIDDLE DOT |
192 | - test.ViewSendCompositionKeys(".."); |
193 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "·", "·"); |
194 | - test.ViewSendCtrlA(); |
195 | - test.ViewSendDelete(); |
196 | - nux::SleepForMilliseconds(100);; |
197 | - |
198 | - //cedilla # CEDILLA |
199 | - test.ViewSendCompositionKeys(", "); |
200 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "¸", "¸"); |
201 | - test.ViewSendCtrlA(); |
202 | - test.ViewSendDelete(); |
203 | - nux::SleepForMilliseconds(100);; |
204 | - |
205 | - //VULGAR FRACTION THREE QUARTERS |
206 | - test.ViewSendCompositionKeys("34"); |
207 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "¾", "¾"); |
208 | - test.ViewSendCtrlA(); |
209 | - test.ViewSendDelete(); |
210 | - nux::SleepForMilliseconds(100);; |
211 | - |
212 | - //questiondown # INVERTED QUESTION MARK |
213 | - test.ViewSendCompositionKeys("??"); |
214 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "¿", "¿"); |
215 | - test.ViewSendCtrlA(); |
216 | - test.ViewSendDelete(); |
217 | - nux::SleepForMilliseconds(100);; |
218 | - |
219 | - //LATIN CAPITAL LETTER A WITH GRAVE |
220 | - test.ViewSendCompositionKeys("`A"); |
221 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "À", "À"); |
222 | - test.ViewSendCtrlA(); |
223 | - test.ViewSendDelete(); |
224 | - nux::SleepForMilliseconds(100);; |
225 | - |
226 | - //LATIN CAPITAL LETTER A WITH ACUTE |
227 | - test.ViewSendCompositionKeys("'A"); |
228 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "Á", "Á"); |
229 | - test.ViewSendCtrlA(); |
230 | - test.ViewSendDelete(); |
231 | - nux::SleepForMilliseconds(100);; |
232 | - |
233 | - //LATIN CAPITAL LETTER A WITH CIRCUMFLEX |
234 | - test.ViewSendCompositionKeys("^A"); |
235 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "Â", "Â"); |
236 | - test.ViewSendCtrlA(); |
237 | - test.ViewSendDelete(); |
238 | - nux::SleepForMilliseconds(100);; |
239 | - |
240 | - //LATIN CAPITAL LETTER A WITH TILDE |
241 | - test.ViewSendCompositionKeys("~A"); |
242 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "Ã", "Ã"); |
243 | - test.ViewSendCtrlA(); |
244 | - test.ViewSendDelete(); |
245 | - nux::SleepForMilliseconds(100);; |
246 | - |
247 | - //LATIN CAPITAL LETTER A WITH DIAERESIS |
248 | - test.ViewSendCompositionKeys("\"A"); |
249 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "Ä", "Ä"); |
250 | - test.ViewSendCtrlA(); |
251 | - test.ViewSendDelete(); |
252 | - nux::SleepForMilliseconds(100);; |
253 | - |
254 | - //LATIN CAPITAL LETTER A WITH RING ABOVE |
255 | - test.ViewSendCompositionKeys("oA"); |
256 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "Å", "Å"); |
257 | - test.ViewSendCtrlA(); |
258 | - test.ViewSendDelete(); |
259 | - nux::SleepForMilliseconds(100);; |
260 | - |
261 | - //AE # LATIN CAPITAL LETTER AE |
262 | - test.ViewSendCompositionKeys("AE"); |
263 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "Æ", "Æ"); |
264 | - test.ViewSendCtrlA(); |
265 | - test.ViewSendDelete(); |
266 | - nux::SleepForMilliseconds(100);; |
267 | - |
268 | - //ssharp # LATIN SMALL LETTER SHARP S |
269 | - test.ViewSendCompositionKeys("ss"); |
270 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "ß", "ß"); |
271 | - test.ViewSendCtrlA(); |
272 | - test.ViewSendDelete(); |
273 | - nux::SleepForMilliseconds(100);; |
274 | - |
275 | - //LATIN SMALL LETTER A WITH GRAVE |
276 | - test.ViewSendCompositionKeys("`a"); |
277 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "à", "à"); |
278 | - test.ViewSendCtrlA(); |
279 | - test.ViewSendDelete(); |
280 | - nux::SleepForMilliseconds(100);; |
281 | - |
282 | - //LATIN SMALL LETTER A WITH ACUTE |
283 | - test.ViewSendCompositionKeys("'a"); |
284 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "á", "á"); |
285 | - test.ViewSendCtrlA(); |
286 | - test.ViewSendDelete(); |
287 | - nux::SleepForMilliseconds(100);; |
288 | - |
289 | - //LATIN SMALL LETTER A WITH CIRCUMFLEX |
290 | - test.ViewSendCompositionKeys("^a"); |
291 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "â", "â"); |
292 | - test.ViewSendCtrlA(); |
293 | - test.ViewSendDelete(); |
294 | - nux::SleepForMilliseconds(100);; |
295 | - |
296 | - //LATIN SMALL LETTER A WITH TILDE |
297 | - test.ViewSendCompositionKeys("~a"); |
298 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "ã", "ã"); |
299 | - test.ViewSendCtrlA(); |
300 | - test.ViewSendDelete(); |
301 | - nux::SleepForMilliseconds(100);; |
302 | - |
303 | - //LATIN SMALL LETTER A WITH DIAERESIS |
304 | - test.ViewSendCompositionKeys("\"a"); |
305 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "ä", "ä"); |
306 | - test.ViewSendCtrlA(); |
307 | - test.ViewSendDelete(); |
308 | - nux::SleepForMilliseconds(100);; |
309 | - |
310 | - //LATIN SMALL LETTER A WITH RING ABOVE |
311 | - test.ViewSendCompositionKeys("oa"); |
312 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "å", "å"); |
313 | - test.ViewSendCtrlA(); |
314 | - test.ViewSendDelete(); |
315 | - nux::SleepForMilliseconds(100);; |
316 | - |
317 | - //ae # LATIN SMALL LETTER AE |
318 | - test.ViewSendCompositionKeys("ae"); |
319 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "æ", "æ"); |
320 | - test.ViewSendCtrlA(); |
321 | - test.ViewSendDelete(); |
322 | - nux::SleepForMilliseconds(100);; |
323 | - |
324 | - //DIVISION SIGN |
325 | - test.ViewSendCompositionKeys("-:"); |
326 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "÷", "÷"); |
327 | - test.ViewSendCtrlA(); |
328 | - test.ViewSendDelete(); |
329 | - nux::SleepForMilliseconds(100);; |
330 | - |
331 | - //LATIN CAPITAL LETTER A WITH OGONEK |
332 | - test.ViewSendCompositionKeys(";A"); |
333 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "Ą", "Ą"); |
334 | - test.ViewSendCtrlA(); |
335 | - test.ViewSendDelete(); |
336 | - nux::SleepForMilliseconds(100);; |
337 | - |
338 | - //LATIN SMALL LETTER A WITH OGONEK |
339 | - test.ViewSendCompositionKeys(";a"); |
340 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "ą", "ą"); |
341 | - test.ViewSendCtrlA(); |
342 | - test.ViewSendDelete(); |
343 | - nux::SleepForMilliseconds(100);; |
344 | - |
345 | - //LATIN CAPITAL LETTER A WITH CARON |
346 | - test.ViewSendCompositionKeys("cA"); |
347 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "Ǎ", "Ǎ"); |
348 | - test.ViewSendCtrlA(); |
349 | - test.ViewSendDelete(); |
350 | - nux::SleepForMilliseconds(100); |
351 | - |
352 | - //EN DASH |
353 | - test.ViewSendCompositionKeys("--."); |
354 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "–", "–"); |
355 | - test.ViewSendCtrlA(); |
356 | - test.ViewSendDelete(); |
357 | - nux::SleepForMilliseconds(100); |
358 | - |
359 | - //RIGHT SINGLE QUOTATION MARK |
360 | - test.ViewSendCompositionKeys(">'"); |
361 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "’", "’"); |
362 | - test.ViewSendCtrlA(); |
363 | - test.ViewSendDelete(); |
364 | - nux::SleepForMilliseconds(100); |
365 | - |
366 | - //LEFT DOUBLE QUOTATION MARK |
367 | - test.ViewSendCompositionKeys("<\""); |
368 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "“", "“"); |
369 | - test.ViewSendCtrlA(); |
370 | - test.ViewSendDelete(); |
371 | - nux::SleepForMilliseconds(100); |
372 | - |
373 | - //RIGHT DOUBLE QUOTATION MARK |
374 | - test.ViewSendCompositionKeys("\">"); |
375 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "”", "”"); |
376 | - test.ViewSendCtrlA(); |
377 | - test.ViewSendDelete(); |
378 | - nux::SleepForMilliseconds(100); |
379 | - |
380 | - //DOUBLE LOW-9 QUOTATION MARK |
381 | - test.ViewSendCompositionKeys("\","); |
382 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "„", "„"); |
383 | - test.ViewSendCtrlA(); |
384 | - test.ViewSendDelete(); |
385 | - nux::SleepForMilliseconds(100); |
386 | - |
387 | - //PER MILLE SIGN |
388 | - test.ViewSendCompositionKeys("%o"); |
389 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "‰", "‰"); |
390 | - test.ViewSendCtrlA(); |
391 | - test.ViewSendDelete(); |
392 | - nux::SleepForMilliseconds(100); |
393 | - |
394 | - //SINGLE RIGHT-POINTING ANGLE QUOTATION MARK |
395 | - test.ViewSendCompositionKeys(".>"); |
396 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "›", "›"); |
397 | - test.ViewSendCtrlA(); |
398 | - test.ViewSendDelete(); |
399 | - nux::SleepForMilliseconds(100); |
400 | - |
401 | - //EuroSign # EURO SIGN |
402 | - test.ViewSendCompositionKeys("=E"); |
403 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "€", "€"); |
404 | - test.ViewSendCtrlA(); |
405 | - test.ViewSendDelete(); |
406 | - nux::SleepForMilliseconds(100); |
407 | - |
408 | - //REVERSED DOUBLE PRIME QUOTATION MARK |
409 | - test.ViewSendCompositionKeys("\"\\"); |
410 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "〝", "〝"); |
411 | - test.ViewSendCtrlA(); |
412 | - test.ViewSendDelete(); |
413 | - nux::SleepForMilliseconds(100); |
414 | + if (test.CompositionKeysSupported()) |
415 | + { |
416 | + test_textentry->ResetEvents(); |
417 | + test.ViewSendMouseMotionToCenter(test_textentry->text_entry_); |
418 | + |
419 | + test.ViewSendMouseClick(0, 1); |
420 | + |
421 | + test.ViewSendCompositionKeys("`o"); |
422 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "ò", "ò"); |
423 | + |
424 | + test.ViewSendCompositionKeys("~o"); |
425 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "òõ", "òõ"); |
426 | + |
427 | + test.ViewSendCompositionKeys("^o"); |
428 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "òõô", "òõô"); |
429 | + |
430 | + test.ViewSendCompositionKeys("c="); |
431 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "òõô€", "òõô€"); |
432 | + |
433 | + test.ViewSendCompositionKeys("oc"); |
434 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "òõô€©", "òõô€©"); |
435 | + |
436 | + test.ViewSendCompositionKeys("\"w"); |
437 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "òõô€©ẅ", "òõô€©ẅ"); |
438 | + |
439 | + test.ViewSendCompositionKeys("'S"); |
440 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "òõô€©ẅŚ", "òõô€©ẅŚ"); |
441 | + test.ViewSendCtrlA(); |
442 | + test.ViewSendDelete(); |
443 | + |
444 | + nux::SleepForMilliseconds(100);; |
445 | + //exclamdown # INVERTED EXCLAMATION MARK |
446 | + test.ViewSendCompositionKeys("!!"); |
447 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "¡", "¡"); |
448 | + test.ViewSendCtrlA(); |
449 | + test.ViewSendDelete(); |
450 | + nux::SleepForMilliseconds(100);; |
451 | + |
452 | + //CENT SIGN |
453 | + test.ViewSendCompositionKeys("|c"); |
454 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "¢", "¢"); |
455 | + test.ViewSendCtrlA(); |
456 | + test.ViewSendDelete(); |
457 | + nux::SleepForMilliseconds(100);; |
458 | + |
459 | + //POUND SIGN |
460 | + test.ViewSendCompositionKeys("-L"); |
461 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "£", "£"); |
462 | + test.ViewSendCtrlA(); |
463 | + test.ViewSendDelete(); |
464 | + nux::SleepForMilliseconds(100);; |
465 | + |
466 | + //currency # CURRENCY SIGN |
467 | + test.ViewSendCompositionKeys("xo"); |
468 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "¤", "¤"); |
469 | + test.ViewSendCtrlA(); |
470 | + test.ViewSendDelete(); |
471 | + nux::SleepForMilliseconds(100);; |
472 | + |
473 | + //yen # YEN SIGN |
474 | + test.ViewSendCompositionKeys("Y="); |
475 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "¥", "¥"); |
476 | + test.ViewSendCtrlA(); |
477 | + test.ViewSendDelete(); |
478 | + nux::SleepForMilliseconds(100);; |
479 | + |
480 | + //FEMININE ORDINAL INDICATOR |
481 | + test.ViewSendCompositionKeys("^_a"); |
482 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "ª", "ª"); |
483 | + test.ViewSendCtrlA(); |
484 | + test.ViewSendDelete(); |
485 | + nux::SleepForMilliseconds(100);; |
486 | + |
487 | + //guillemotleft # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK |
488 | + test.ViewSendCompositionKeys("<<"); |
489 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "«", "«"); |
490 | + test.ViewSendCtrlA(); |
491 | + test.ViewSendDelete(); |
492 | + nux::SleepForMilliseconds(100);; |
493 | + |
494 | + //SUPERSCRIPT THREE |
495 | + test.ViewSendCompositionKeys("^3"); |
496 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "³", "³"); |
497 | + test.ViewSendCtrlA(); |
498 | + test.ViewSendDelete(); |
499 | + nux::SleepForMilliseconds(100);; |
500 | + |
501 | + //MIDDLE DOT |
502 | + test.ViewSendCompositionKeys(".."); |
503 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "·", "·"); |
504 | + test.ViewSendCtrlA(); |
505 | + test.ViewSendDelete(); |
506 | + nux::SleepForMilliseconds(100);; |
507 | + |
508 | + //cedilla # CEDILLA |
509 | + test.ViewSendCompositionKeys(", "); |
510 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "¸", "¸"); |
511 | + test.ViewSendCtrlA(); |
512 | + test.ViewSendDelete(); |
513 | + nux::SleepForMilliseconds(100);; |
514 | + |
515 | + //VULGAR FRACTION THREE QUARTERS |
516 | + test.ViewSendCompositionKeys("34"); |
517 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "¾", "¾"); |
518 | + test.ViewSendCtrlA(); |
519 | + test.ViewSendDelete(); |
520 | + nux::SleepForMilliseconds(100);; |
521 | + |
522 | + //questiondown # INVERTED QUESTION MARK |
523 | + test.ViewSendCompositionKeys("??"); |
524 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "¿", "¿"); |
525 | + test.ViewSendCtrlA(); |
526 | + test.ViewSendDelete(); |
527 | + nux::SleepForMilliseconds(100);; |
528 | + |
529 | + //LATIN CAPITAL LETTER A WITH GRAVE |
530 | + test.ViewSendCompositionKeys("`A"); |
531 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "À", "À"); |
532 | + test.ViewSendCtrlA(); |
533 | + test.ViewSendDelete(); |
534 | + nux::SleepForMilliseconds(100);; |
535 | + |
536 | + //LATIN CAPITAL LETTER A WITH ACUTE |
537 | + test.ViewSendCompositionKeys("'A"); |
538 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "Á", "Á"); |
539 | + test.ViewSendCtrlA(); |
540 | + test.ViewSendDelete(); |
541 | + nux::SleepForMilliseconds(100);; |
542 | + |
543 | + //LATIN CAPITAL LETTER A WITH CIRCUMFLEX |
544 | + test.ViewSendCompositionKeys("^A"); |
545 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "Â", "Â"); |
546 | + test.ViewSendCtrlA(); |
547 | + test.ViewSendDelete(); |
548 | + nux::SleepForMilliseconds(100);; |
549 | + |
550 | + //LATIN CAPITAL LETTER A WITH TILDE |
551 | + test.ViewSendCompositionKeys("~A"); |
552 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "Ã", "Ã"); |
553 | + test.ViewSendCtrlA(); |
554 | + test.ViewSendDelete(); |
555 | + nux::SleepForMilliseconds(100);; |
556 | + |
557 | + //LATIN CAPITAL LETTER A WITH DIAERESIS |
558 | + test.ViewSendCompositionKeys("\"A"); |
559 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "Ä", "Ä"); |
560 | + test.ViewSendCtrlA(); |
561 | + test.ViewSendDelete(); |
562 | + nux::SleepForMilliseconds(100);; |
563 | + |
564 | + //LATIN CAPITAL LETTER A WITH RING ABOVE |
565 | + test.ViewSendCompositionKeys("oA"); |
566 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "Å", "Å"); |
567 | + test.ViewSendCtrlA(); |
568 | + test.ViewSendDelete(); |
569 | + nux::SleepForMilliseconds(100);; |
570 | + |
571 | + //AE # LATIN CAPITAL LETTER AE |
572 | + test.ViewSendCompositionKeys("AE"); |
573 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "Æ", "Æ"); |
574 | + test.ViewSendCtrlA(); |
575 | + test.ViewSendDelete(); |
576 | + nux::SleepForMilliseconds(100);; |
577 | + |
578 | + //ssharp # LATIN SMALL LETTER SHARP S |
579 | + test.ViewSendCompositionKeys("ss"); |
580 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "ß", "ß"); |
581 | + test.ViewSendCtrlA(); |
582 | + test.ViewSendDelete(); |
583 | + nux::SleepForMilliseconds(100);; |
584 | + |
585 | + //LATIN SMALL LETTER A WITH GRAVE |
586 | + test.ViewSendCompositionKeys("`a"); |
587 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "à", "à"); |
588 | + test.ViewSendCtrlA(); |
589 | + test.ViewSendDelete(); |
590 | + nux::SleepForMilliseconds(100);; |
591 | + |
592 | + //LATIN SMALL LETTER A WITH ACUTE |
593 | + test.ViewSendCompositionKeys("'a"); |
594 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "á", "á"); |
595 | + test.ViewSendCtrlA(); |
596 | + test.ViewSendDelete(); |
597 | + nux::SleepForMilliseconds(100);; |
598 | + |
599 | + //LATIN SMALL LETTER A WITH CIRCUMFLEX |
600 | + test.ViewSendCompositionKeys("^a"); |
601 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "â", "â"); |
602 | + test.ViewSendCtrlA(); |
603 | + test.ViewSendDelete(); |
604 | + nux::SleepForMilliseconds(100);; |
605 | + |
606 | + //LATIN SMALL LETTER A WITH TILDE |
607 | + test.ViewSendCompositionKeys("~a"); |
608 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "ã", "ã"); |
609 | + test.ViewSendCtrlA(); |
610 | + test.ViewSendDelete(); |
611 | + nux::SleepForMilliseconds(100);; |
612 | + |
613 | + //LATIN SMALL LETTER A WITH DIAERESIS |
614 | + test.ViewSendCompositionKeys("\"a"); |
615 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "ä", "ä"); |
616 | + test.ViewSendCtrlA(); |
617 | + test.ViewSendDelete(); |
618 | + nux::SleepForMilliseconds(100);; |
619 | + |
620 | + //LATIN SMALL LETTER A WITH RING ABOVE |
621 | + test.ViewSendCompositionKeys("oa"); |
622 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "å", "å"); |
623 | + test.ViewSendCtrlA(); |
624 | + test.ViewSendDelete(); |
625 | + nux::SleepForMilliseconds(100);; |
626 | + |
627 | + //ae # LATIN SMALL LETTER AE |
628 | + test.ViewSendCompositionKeys("ae"); |
629 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "æ", "æ"); |
630 | + test.ViewSendCtrlA(); |
631 | + test.ViewSendDelete(); |
632 | + nux::SleepForMilliseconds(100);; |
633 | + |
634 | + //DIVISION SIGN |
635 | + test.ViewSendCompositionKeys("-:"); |
636 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "÷", "÷"); |
637 | + test.ViewSendCtrlA(); |
638 | + test.ViewSendDelete(); |
639 | + nux::SleepForMilliseconds(100);; |
640 | + |
641 | + //LATIN CAPITAL LETTER A WITH OGONEK |
642 | + test.ViewSendCompositionKeys(";A"); |
643 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "Ą", "Ą"); |
644 | + test.ViewSendCtrlA(); |
645 | + test.ViewSendDelete(); |
646 | + nux::SleepForMilliseconds(100);; |
647 | + |
648 | + //LATIN SMALL LETTER A WITH OGONEK |
649 | + test.ViewSendCompositionKeys(";a"); |
650 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "ą", "ą"); |
651 | + test.ViewSendCtrlA(); |
652 | + test.ViewSendDelete(); |
653 | + nux::SleepForMilliseconds(100);; |
654 | + |
655 | + //LATIN CAPITAL LETTER A WITH CARON |
656 | + test.ViewSendCompositionKeys("cA"); |
657 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "Ǎ", "Ǎ"); |
658 | + test.ViewSendCtrlA(); |
659 | + test.ViewSendDelete(); |
660 | + nux::SleepForMilliseconds(100); |
661 | + |
662 | + //EN DASH |
663 | + test.ViewSendCompositionKeys("--."); |
664 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "–", "–"); |
665 | + test.ViewSendCtrlA(); |
666 | + test.ViewSendDelete(); |
667 | + nux::SleepForMilliseconds(100); |
668 | + |
669 | + //RIGHT SINGLE QUOTATION MARK |
670 | + test.ViewSendCompositionKeys(">'"); |
671 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "’", "’"); |
672 | + test.ViewSendCtrlA(); |
673 | + test.ViewSendDelete(); |
674 | + nux::SleepForMilliseconds(100); |
675 | + |
676 | + //LEFT DOUBLE QUOTATION MARK |
677 | + test.ViewSendCompositionKeys("<\""); |
678 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "“", "“"); |
679 | + test.ViewSendCtrlA(); |
680 | + test.ViewSendDelete(); |
681 | + nux::SleepForMilliseconds(100); |
682 | + |
683 | + //RIGHT DOUBLE QUOTATION MARK |
684 | + test.ViewSendCompositionKeys("\">"); |
685 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "”", "”"); |
686 | + test.ViewSendCtrlA(); |
687 | + test.ViewSendDelete(); |
688 | + nux::SleepForMilliseconds(100); |
689 | + |
690 | + //DOUBLE LOW-9 QUOTATION MARK |
691 | + test.ViewSendCompositionKeys("\","); |
692 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "„", "„"); |
693 | + test.ViewSendCtrlA(); |
694 | + test.ViewSendDelete(); |
695 | + nux::SleepForMilliseconds(100); |
696 | + |
697 | + //PER MILLE SIGN |
698 | + test.ViewSendCompositionKeys("%o"); |
699 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "‰", "‰"); |
700 | + test.ViewSendCtrlA(); |
701 | + test.ViewSendDelete(); |
702 | + nux::SleepForMilliseconds(100); |
703 | + |
704 | + //SINGLE RIGHT-POINTING ANGLE QUOTATION MARK |
705 | + test.ViewSendCompositionKeys(".>"); |
706 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "›", "›"); |
707 | + test.ViewSendCtrlA(); |
708 | + test.ViewSendDelete(); |
709 | + nux::SleepForMilliseconds(100); |
710 | + |
711 | + //EuroSign # EURO SIGN |
712 | + test.ViewSendCompositionKeys("=E"); |
713 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "€", "€"); |
714 | + test.ViewSendCtrlA(); |
715 | + test.ViewSendDelete(); |
716 | + nux::SleepForMilliseconds(100); |
717 | + |
718 | + //REVERSED DOUBLE PRIME QUOTATION MARK |
719 | + test.ViewSendCompositionKeys("\"\\"); |
720 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "〝", "〝"); |
721 | + test.ViewSendCtrlA(); |
722 | + test.ViewSendDelete(); |
723 | + nux::SleepForMilliseconds(100); |
724 | + } |
725 | + else |
726 | + { |
727 | + test.WarnCompositionKeysNotSupported(); |
728 | + } |
729 | |
730 | if (test.WhenDoneTerminateProgram()) |
731 | { |
732 | |
733 | === modified file 'tests/xtest-text-entry-deadkeys.cpp' |
734 | --- tests/xtest-text-entry-deadkeys.cpp 2012-12-04 01:10:25 +0000 |
735 | +++ tests/xtest-text-entry-deadkeys.cpp 2013-02-01 11:15:39 +0000 |
736 | @@ -113,309 +113,316 @@ |
737 | |
738 | test.ViewSendMouseClick(0, 1); |
739 | |
740 | - test.ViewSendCompositionKeys("`o"); |
741 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "ò", "ò"); |
742 | - |
743 | - test.ViewSendCompositionKeys("~o"); |
744 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "òõ", "òõ"); |
745 | - |
746 | - test.ViewSendCompositionKeys("^o"); |
747 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "òõô", "òõô"); |
748 | - |
749 | - test.ViewSendCompositionKeys("c="); |
750 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "òõô€", "òõô€"); |
751 | - |
752 | - test.ViewSendCompositionKeys("oc"); |
753 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "òõô€©", "òõô€©"); |
754 | - |
755 | - test.ViewSendCompositionKeys("\"w"); |
756 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "òõô€©ẅ", "òõô€©ẅ"); |
757 | - |
758 | - test.ViewSendCompositionKeys("'S"); |
759 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "òõô€©ẅŚ", "òõô€©ẅŚ"); |
760 | - test.ViewSendCtrlA(); |
761 | - test.ViewSendDelete(); |
762 | - |
763 | - nux::SleepForMilliseconds(100); |
764 | - //exclamdown # INVERTED EXCLAMATION MARK |
765 | - test.ViewSendCompositionKeys("!!"); |
766 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "¡", "¡"); |
767 | - test.ViewSendCtrlA(); |
768 | - test.ViewSendDelete(); |
769 | - nux::SleepForMilliseconds(100);; |
770 | - |
771 | - //CENT SIGN |
772 | - test.ViewSendCompositionKeys("|c"); |
773 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "¢", "¢"); |
774 | - test.ViewSendCtrlA(); |
775 | - test.ViewSendDelete(); |
776 | - nux::SleepForMilliseconds(100);; |
777 | - |
778 | - //POUND SIGN |
779 | - test.ViewSendCompositionKeys("-L"); |
780 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "£", "£"); |
781 | - test.ViewSendCtrlA(); |
782 | - test.ViewSendDelete(); |
783 | - nux::SleepForMilliseconds(100);; |
784 | - |
785 | - //currency # CURRENCY SIGN |
786 | - test.ViewSendCompositionKeys("xo"); |
787 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "¤", "¤"); |
788 | - test.ViewSendCtrlA(); |
789 | - test.ViewSendDelete(); |
790 | - nux::SleepForMilliseconds(100);; |
791 | - |
792 | - //yen # YEN SIGN |
793 | - test.ViewSendCompositionKeys("Y="); |
794 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "¥", "¥"); |
795 | - test.ViewSendCtrlA(); |
796 | - test.ViewSendDelete(); |
797 | - nux::SleepForMilliseconds(100);; |
798 | - |
799 | - //FEMININE ORDINAL INDICATOR |
800 | - test.ViewSendCompositionKeys("^_a"); |
801 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "ª", "ª"); |
802 | - test.ViewSendCtrlA(); |
803 | - test.ViewSendDelete(); |
804 | - nux::SleepForMilliseconds(100);; |
805 | - |
806 | - //guillemotleft # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK |
807 | - test.ViewSendCompositionKeys("<<"); |
808 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "«", "«"); |
809 | - test.ViewSendCtrlA(); |
810 | - test.ViewSendDelete(); |
811 | - nux::SleepForMilliseconds(100);; |
812 | - |
813 | - //SUPERSCRIPT THREE |
814 | - test.ViewSendCompositionKeys("^3"); |
815 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "³", "³"); |
816 | - test.ViewSendCtrlA(); |
817 | - test.ViewSendDelete(); |
818 | - nux::SleepForMilliseconds(100);; |
819 | - |
820 | - //MIDDLE DOT |
821 | - test.ViewSendCompositionKeys(".."); |
822 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "·", "·"); |
823 | - test.ViewSendCtrlA(); |
824 | - test.ViewSendDelete(); |
825 | - nux::SleepForMilliseconds(100);; |
826 | - |
827 | - //cedilla # CEDILLA |
828 | - test.ViewSendCompositionKeys(", "); |
829 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "¸", "¸"); |
830 | - test.ViewSendCtrlA(); |
831 | - test.ViewSendDelete(); |
832 | - nux::SleepForMilliseconds(100);; |
833 | - |
834 | - //VULGAR FRACTION THREE QUARTERS |
835 | - test.ViewSendCompositionKeys("34"); |
836 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "¾", "¾"); |
837 | - test.ViewSendCtrlA(); |
838 | - test.ViewSendDelete(); |
839 | - nux::SleepForMilliseconds(100);; |
840 | - |
841 | - //questiondown # INVERTED QUESTION MARK |
842 | - test.ViewSendCompositionKeys("??"); |
843 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "¿", "¿"); |
844 | - test.ViewSendCtrlA(); |
845 | - test.ViewSendDelete(); |
846 | - nux::SleepForMilliseconds(100);; |
847 | - |
848 | - //LATIN CAPITAL LETTER A WITH GRAVE |
849 | - test.ViewSendCompositionKeys("`A"); |
850 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "À", "À"); |
851 | - test.ViewSendCtrlA(); |
852 | - test.ViewSendDelete(); |
853 | - nux::SleepForMilliseconds(100);; |
854 | - |
855 | - //LATIN CAPITAL LETTER A WITH ACUTE |
856 | - test.ViewSendCompositionKeys("'A"); |
857 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "Á", "Á"); |
858 | - test.ViewSendCtrlA(); |
859 | - test.ViewSendDelete(); |
860 | - nux::SleepForMilliseconds(100);; |
861 | - |
862 | - //LATIN CAPITAL LETTER A WITH CIRCUMFLEX |
863 | - test.ViewSendCompositionKeys("^A"); |
864 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "Â", "Â"); |
865 | - test.ViewSendCtrlA(); |
866 | - test.ViewSendDelete(); |
867 | - nux::SleepForMilliseconds(100);; |
868 | - |
869 | - //LATIN CAPITAL LETTER A WITH TILDE |
870 | - test.ViewSendCompositionKeys("~A"); |
871 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "Ã", "Ã"); |
872 | - test.ViewSendCtrlA(); |
873 | - test.ViewSendDelete(); |
874 | - nux::SleepForMilliseconds(100);; |
875 | - |
876 | - //LATIN CAPITAL LETTER A WITH DIAERESIS |
877 | - test.ViewSendCompositionKeys("\"A"); |
878 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "Ä", "Ä"); |
879 | - test.ViewSendCtrlA(); |
880 | - test.ViewSendDelete(); |
881 | - nux::SleepForMilliseconds(100);; |
882 | - |
883 | - //LATIN CAPITAL LETTER A WITH RING ABOVE |
884 | - test.ViewSendCompositionKeys("oA"); |
885 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "Å", "Å"); |
886 | - test.ViewSendCtrlA(); |
887 | - test.ViewSendDelete(); |
888 | - nux::SleepForMilliseconds(100);; |
889 | - |
890 | - //AE # LATIN CAPITAL LETTER AE |
891 | - test.ViewSendCompositionKeys("AE"); |
892 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "Æ", "Æ"); |
893 | - test.ViewSendCtrlA(); |
894 | - test.ViewSendDelete(); |
895 | - nux::SleepForMilliseconds(100);; |
896 | - |
897 | - //ssharp # LATIN SMALL LETTER SHARP S |
898 | - test.ViewSendCompositionKeys("ss"); |
899 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "ß", "ß"); |
900 | - test.ViewSendCtrlA(); |
901 | - test.ViewSendDelete(); |
902 | - nux::SleepForMilliseconds(100);; |
903 | - |
904 | - //LATIN SMALL LETTER A WITH GRAVE |
905 | - test.ViewSendCompositionKeys("`a"); |
906 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "à", "à"); |
907 | - test.ViewSendCtrlA(); |
908 | - test.ViewSendDelete(); |
909 | - nux::SleepForMilliseconds(100);; |
910 | - |
911 | - //LATIN SMALL LETTER A WITH ACUTE |
912 | - test.ViewSendCompositionKeys("'a"); |
913 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "á", "á"); |
914 | - test.ViewSendCtrlA(); |
915 | - test.ViewSendDelete(); |
916 | - nux::SleepForMilliseconds(100);; |
917 | - |
918 | - //LATIN SMALL LETTER A WITH CIRCUMFLEX |
919 | - test.ViewSendCompositionKeys("^a"); |
920 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "â", "â"); |
921 | - test.ViewSendCtrlA(); |
922 | - test.ViewSendDelete(); |
923 | - nux::SleepForMilliseconds(100);; |
924 | - |
925 | - //LATIN SMALL LETTER A WITH TILDE |
926 | - test.ViewSendCompositionKeys("~a"); |
927 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "ã", "ã"); |
928 | - test.ViewSendCtrlA(); |
929 | - test.ViewSendDelete(); |
930 | - nux::SleepForMilliseconds(100);; |
931 | - |
932 | - //LATIN SMALL LETTER A WITH DIAERESIS |
933 | - test.ViewSendCompositionKeys("\"a"); |
934 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "ä", "ä"); |
935 | - test.ViewSendCtrlA(); |
936 | - test.ViewSendDelete(); |
937 | - nux::SleepForMilliseconds(100);; |
938 | - |
939 | - //LATIN SMALL LETTER A WITH RING ABOVE |
940 | - test.ViewSendCompositionKeys("oa"); |
941 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "å", "å"); |
942 | - test.ViewSendCtrlA(); |
943 | - test.ViewSendDelete(); |
944 | - nux::SleepForMilliseconds(100);; |
945 | - |
946 | - //ae # LATIN SMALL LETTER AE |
947 | - test.ViewSendCompositionKeys("ae"); |
948 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "æ", "æ"); |
949 | - test.ViewSendCtrlA(); |
950 | - test.ViewSendDelete(); |
951 | - nux::SleepForMilliseconds(100);; |
952 | - |
953 | - //DIVISION SIGN |
954 | - test.ViewSendCompositionKeys("-:"); |
955 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "÷", "÷"); |
956 | - test.ViewSendCtrlA(); |
957 | - test.ViewSendDelete(); |
958 | - nux::SleepForMilliseconds(100);; |
959 | - |
960 | - //LATIN CAPITAL LETTER A WITH OGONEK |
961 | - test.ViewSendCompositionKeys(";A"); |
962 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "Ą", "Ą"); |
963 | - test.ViewSendCtrlA(); |
964 | - test.ViewSendDelete(); |
965 | - nux::SleepForMilliseconds(100);; |
966 | - |
967 | - //LATIN SMALL LETTER A WITH OGONEK |
968 | - test.ViewSendCompositionKeys(";a"); |
969 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "ą", "ą"); |
970 | - test.ViewSendCtrlA(); |
971 | - test.ViewSendDelete(); |
972 | - nux::SleepForMilliseconds(100);; |
973 | - |
974 | - //LATIN CAPITAL LETTER A WITH CARON |
975 | - test.ViewSendCompositionKeys("cA"); |
976 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "Ǎ", "Ǎ"); |
977 | - test.ViewSendCtrlA(); |
978 | - test.ViewSendDelete(); |
979 | - nux::SleepForMilliseconds(100); |
980 | - |
981 | - //EN DASH |
982 | - test.ViewSendCompositionKeys("--."); |
983 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "–", "–"); |
984 | - test.ViewSendCtrlA(); |
985 | - test.ViewSendDelete(); |
986 | - nux::SleepForMilliseconds(100); |
987 | - |
988 | - //RIGHT SINGLE QUOTATION MARK |
989 | - test.ViewSendCompositionKeys(">'"); |
990 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "’", "’"); |
991 | - test.ViewSendCtrlA(); |
992 | - test.ViewSendDelete(); |
993 | - nux::SleepForMilliseconds(100); |
994 | - |
995 | - //LEFT DOUBLE QUOTATION MARK |
996 | - test.ViewSendCompositionKeys("<\""); |
997 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "“", "“"); |
998 | - test.ViewSendCtrlA(); |
999 | - test.ViewSendDelete(); |
1000 | - nux::SleepForMilliseconds(100); |
1001 | - |
1002 | - //RIGHT DOUBLE QUOTATION MARK |
1003 | - test.ViewSendCompositionKeys("\">"); |
1004 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "”", "”"); |
1005 | - test.ViewSendCtrlA(); |
1006 | - test.ViewSendDelete(); |
1007 | - nux::SleepForMilliseconds(100); |
1008 | - |
1009 | - //DOUBLE LOW-9 QUOTATION MARK |
1010 | - test.ViewSendCompositionKeys("\","); |
1011 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "„", "„"); |
1012 | - test.ViewSendCtrlA(); |
1013 | - test.ViewSendDelete(); |
1014 | - nux::SleepForMilliseconds(100); |
1015 | - |
1016 | - //PER MILLE SIGN |
1017 | - test.ViewSendCompositionKeys("%o"); |
1018 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "‰", "‰"); |
1019 | - test.ViewSendCtrlA(); |
1020 | - test.ViewSendDelete(); |
1021 | - nux::SleepForMilliseconds(100); |
1022 | - |
1023 | - //SINGLE RIGHT-POINTING ANGLE QUOTATION MARK |
1024 | - test.ViewSendCompositionKeys(".>"); |
1025 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "›", "›"); |
1026 | - test.ViewSendCtrlA(); |
1027 | - test.ViewSendDelete(); |
1028 | - nux::SleepForMilliseconds(100); |
1029 | - |
1030 | - //EuroSign # EURO SIGN |
1031 | - test.ViewSendCompositionKeys("=E"); |
1032 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "€", "€"); |
1033 | - test.ViewSendCtrlA(); |
1034 | - test.ViewSendDelete(); |
1035 | - nux::SleepForMilliseconds(100); |
1036 | - |
1037 | - //REVERSED DOUBLE PRIME QUOTATION MARK |
1038 | - test.ViewSendCompositionKeys("\"\\"); |
1039 | - test.TestReportMsg(test_textentry->text_entry_->GetText() == "〝", "〝"); |
1040 | - test.ViewSendCtrlA(); |
1041 | - test.ViewSendDelete(); |
1042 | - nux::SleepForMilliseconds(100); |
1043 | + if (test.CompositionKeysSupported()) |
1044 | + { |
1045 | + test.ViewSendCompositionKeys("`o"); |
1046 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "ò", "ò"); |
1047 | + |
1048 | + test.ViewSendCompositionKeys("~o"); |
1049 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "òõ", "òõ"); |
1050 | + |
1051 | + test.ViewSendCompositionKeys("^o"); |
1052 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "òõô", "òõô"); |
1053 | + |
1054 | + test.ViewSendCompositionKeys("c="); |
1055 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "òõô€", "òõô€"); |
1056 | + |
1057 | + test.ViewSendCompositionKeys("oc"); |
1058 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "òõô€©", "òõô€©"); |
1059 | + |
1060 | + test.ViewSendCompositionKeys("\"w"); |
1061 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "òõô€©ẅ", "òõô€©ẅ"); |
1062 | + |
1063 | + test.ViewSendCompositionKeys("'S"); |
1064 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "òõô€©ẅŚ", "òõô€©ẅŚ"); |
1065 | + test.ViewSendCtrlA(); |
1066 | + test.ViewSendDelete(); |
1067 | + |
1068 | + nux::SleepForMilliseconds(100); |
1069 | + //exclamdown # INVERTED EXCLAMATION MARK |
1070 | + test.ViewSendCompositionKeys("!!"); |
1071 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "¡", "¡"); |
1072 | + test.ViewSendCtrlA(); |
1073 | + test.ViewSendDelete(); |
1074 | + nux::SleepForMilliseconds(100);; |
1075 | + |
1076 | + //CENT SIGN |
1077 | + test.ViewSendCompositionKeys("|c"); |
1078 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "¢", "¢"); |
1079 | + test.ViewSendCtrlA(); |
1080 | + test.ViewSendDelete(); |
1081 | + nux::SleepForMilliseconds(100);; |
1082 | + |
1083 | + //POUND SIGN |
1084 | + test.ViewSendCompositionKeys("-L"); |
1085 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "£", "£"); |
1086 | + test.ViewSendCtrlA(); |
1087 | + test.ViewSendDelete(); |
1088 | + nux::SleepForMilliseconds(100);; |
1089 | + |
1090 | + //currency # CURRENCY SIGN |
1091 | + test.ViewSendCompositionKeys("xo"); |
1092 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "¤", "¤"); |
1093 | + test.ViewSendCtrlA(); |
1094 | + test.ViewSendDelete(); |
1095 | + nux::SleepForMilliseconds(100);; |
1096 | + |
1097 | + //yen # YEN SIGN |
1098 | + test.ViewSendCompositionKeys("Y="); |
1099 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "¥", "¥"); |
1100 | + test.ViewSendCtrlA(); |
1101 | + test.ViewSendDelete(); |
1102 | + nux::SleepForMilliseconds(100);; |
1103 | + |
1104 | + //FEMININE ORDINAL INDICATOR |
1105 | + test.ViewSendCompositionKeys("^_a"); |
1106 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "ª", "ª"); |
1107 | + test.ViewSendCtrlA(); |
1108 | + test.ViewSendDelete(); |
1109 | + nux::SleepForMilliseconds(100);; |
1110 | + |
1111 | + //guillemotleft # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK |
1112 | + test.ViewSendCompositionKeys("<<"); |
1113 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "«", "«"); |
1114 | + test.ViewSendCtrlA(); |
1115 | + test.ViewSendDelete(); |
1116 | + nux::SleepForMilliseconds(100);; |
1117 | + |
1118 | + //SUPERSCRIPT THREE |
1119 | + test.ViewSendCompositionKeys("^3"); |
1120 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "³", "³"); |
1121 | + test.ViewSendCtrlA(); |
1122 | + test.ViewSendDelete(); |
1123 | + nux::SleepForMilliseconds(100);; |
1124 | + |
1125 | + //MIDDLE DOT |
1126 | + test.ViewSendCompositionKeys(".."); |
1127 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "·", "·"); |
1128 | + test.ViewSendCtrlA(); |
1129 | + test.ViewSendDelete(); |
1130 | + nux::SleepForMilliseconds(100);; |
1131 | + |
1132 | + //cedilla # CEDILLA |
1133 | + test.ViewSendCompositionKeys(", "); |
1134 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "¸", "¸"); |
1135 | + test.ViewSendCtrlA(); |
1136 | + test.ViewSendDelete(); |
1137 | + nux::SleepForMilliseconds(100);; |
1138 | + |
1139 | + //VULGAR FRACTION THREE QUARTERS |
1140 | + test.ViewSendCompositionKeys("34"); |
1141 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "¾", "¾"); |
1142 | + test.ViewSendCtrlA(); |
1143 | + test.ViewSendDelete(); |
1144 | + nux::SleepForMilliseconds(100);; |
1145 | + |
1146 | + //questiondown # INVERTED QUESTION MARK |
1147 | + test.ViewSendCompositionKeys("??"); |
1148 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "¿", "¿"); |
1149 | + test.ViewSendCtrlA(); |
1150 | + test.ViewSendDelete(); |
1151 | + nux::SleepForMilliseconds(100);; |
1152 | + |
1153 | + //LATIN CAPITAL LETTER A WITH GRAVE |
1154 | + test.ViewSendCompositionKeys("`A"); |
1155 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "À", "À"); |
1156 | + test.ViewSendCtrlA(); |
1157 | + test.ViewSendDelete(); |
1158 | + nux::SleepForMilliseconds(100);; |
1159 | + |
1160 | + //LATIN CAPITAL LETTER A WITH ACUTE |
1161 | + test.ViewSendCompositionKeys("'A"); |
1162 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "Á", "Á"); |
1163 | + test.ViewSendCtrlA(); |
1164 | + test.ViewSendDelete(); |
1165 | + nux::SleepForMilliseconds(100);; |
1166 | + |
1167 | + //LATIN CAPITAL LETTER A WITH CIRCUMFLEX |
1168 | + test.ViewSendCompositionKeys("^A"); |
1169 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "Â", "Â"); |
1170 | + test.ViewSendCtrlA(); |
1171 | + test.ViewSendDelete(); |
1172 | + nux::SleepForMilliseconds(100);; |
1173 | + |
1174 | + //LATIN CAPITAL LETTER A WITH TILDE |
1175 | + test.ViewSendCompositionKeys("~A"); |
1176 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "Ã", "Ã"); |
1177 | + test.ViewSendCtrlA(); |
1178 | + test.ViewSendDelete(); |
1179 | + nux::SleepForMilliseconds(100);; |
1180 | + |
1181 | + //LATIN CAPITAL LETTER A WITH DIAERESIS |
1182 | + test.ViewSendCompositionKeys("\"A"); |
1183 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "Ä", "Ä"); |
1184 | + test.ViewSendCtrlA(); |
1185 | + test.ViewSendDelete(); |
1186 | + nux::SleepForMilliseconds(100);; |
1187 | + |
1188 | + //LATIN CAPITAL LETTER A WITH RING ABOVE |
1189 | + test.ViewSendCompositionKeys("oA"); |
1190 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "Å", "Å"); |
1191 | + test.ViewSendCtrlA(); |
1192 | + test.ViewSendDelete(); |
1193 | + nux::SleepForMilliseconds(100);; |
1194 | + |
1195 | + //AE # LATIN CAPITAL LETTER AE |
1196 | + test.ViewSendCompositionKeys("AE"); |
1197 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "Æ", "Æ"); |
1198 | + test.ViewSendCtrlA(); |
1199 | + test.ViewSendDelete(); |
1200 | + nux::SleepForMilliseconds(100);; |
1201 | + |
1202 | + //ssharp # LATIN SMALL LETTER SHARP S |
1203 | + test.ViewSendCompositionKeys("ss"); |
1204 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "ß", "ß"); |
1205 | + test.ViewSendCtrlA(); |
1206 | + test.ViewSendDelete(); |
1207 | + nux::SleepForMilliseconds(100);; |
1208 | + |
1209 | + //LATIN SMALL LETTER A WITH GRAVE |
1210 | + test.ViewSendCompositionKeys("`a"); |
1211 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "à", "à"); |
1212 | + test.ViewSendCtrlA(); |
1213 | + test.ViewSendDelete(); |
1214 | + nux::SleepForMilliseconds(100);; |
1215 | + |
1216 | + //LATIN SMALL LETTER A WITH ACUTE |
1217 | + test.ViewSendCompositionKeys("'a"); |
1218 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "á", "á"); |
1219 | + test.ViewSendCtrlA(); |
1220 | + test.ViewSendDelete(); |
1221 | + nux::SleepForMilliseconds(100);; |
1222 | + |
1223 | + //LATIN SMALL LETTER A WITH CIRCUMFLEX |
1224 | + test.ViewSendCompositionKeys("^a"); |
1225 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "â", "â"); |
1226 | + test.ViewSendCtrlA(); |
1227 | + test.ViewSendDelete(); |
1228 | + nux::SleepForMilliseconds(100);; |
1229 | + |
1230 | + //LATIN SMALL LETTER A WITH TILDE |
1231 | + test.ViewSendCompositionKeys("~a"); |
1232 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "ã", "ã"); |
1233 | + test.ViewSendCtrlA(); |
1234 | + test.ViewSendDelete(); |
1235 | + nux::SleepForMilliseconds(100);; |
1236 | + |
1237 | + //LATIN SMALL LETTER A WITH DIAERESIS |
1238 | + test.ViewSendCompositionKeys("\"a"); |
1239 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "ä", "ä"); |
1240 | + test.ViewSendCtrlA(); |
1241 | + test.ViewSendDelete(); |
1242 | + nux::SleepForMilliseconds(100);; |
1243 | + |
1244 | + //LATIN SMALL LETTER A WITH RING ABOVE |
1245 | + test.ViewSendCompositionKeys("oa"); |
1246 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "å", "å"); |
1247 | + test.ViewSendCtrlA(); |
1248 | + test.ViewSendDelete(); |
1249 | + nux::SleepForMilliseconds(100);; |
1250 | + |
1251 | + //ae # LATIN SMALL LETTER AE |
1252 | + test.ViewSendCompositionKeys("ae"); |
1253 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "æ", "æ"); |
1254 | + test.ViewSendCtrlA(); |
1255 | + test.ViewSendDelete(); |
1256 | + nux::SleepForMilliseconds(100);; |
1257 | + |
1258 | + //DIVISION SIGN |
1259 | + test.ViewSendCompositionKeys("-:"); |
1260 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "÷", "÷"); |
1261 | + test.ViewSendCtrlA(); |
1262 | + test.ViewSendDelete(); |
1263 | + nux::SleepForMilliseconds(100);; |
1264 | + |
1265 | + //LATIN CAPITAL LETTER A WITH OGONEK |
1266 | + test.ViewSendCompositionKeys(";A"); |
1267 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "Ą", "Ą"); |
1268 | + test.ViewSendCtrlA(); |
1269 | + test.ViewSendDelete(); |
1270 | + nux::SleepForMilliseconds(100);; |
1271 | + |
1272 | + //LATIN SMALL LETTER A WITH OGONEK |
1273 | + test.ViewSendCompositionKeys(";a"); |
1274 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "ą", "ą"); |
1275 | + test.ViewSendCtrlA(); |
1276 | + test.ViewSendDelete(); |
1277 | + nux::SleepForMilliseconds(100);; |
1278 | + |
1279 | + //LATIN CAPITAL LETTER A WITH CARON |
1280 | + test.ViewSendCompositionKeys("cA"); |
1281 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "Ǎ", "Ǎ"); |
1282 | + test.ViewSendCtrlA(); |
1283 | + test.ViewSendDelete(); |
1284 | + nux::SleepForMilliseconds(100); |
1285 | + |
1286 | + //EN DASH |
1287 | + test.ViewSendCompositionKeys("--."); |
1288 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "–", "–"); |
1289 | + test.ViewSendCtrlA(); |
1290 | + test.ViewSendDelete(); |
1291 | + nux::SleepForMilliseconds(100); |
1292 | + |
1293 | + //RIGHT SINGLE QUOTATION MARK |
1294 | + test.ViewSendCompositionKeys(">'"); |
1295 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "’", "’"); |
1296 | + test.ViewSendCtrlA(); |
1297 | + test.ViewSendDelete(); |
1298 | + nux::SleepForMilliseconds(100); |
1299 | + |
1300 | + //LEFT DOUBLE QUOTATION MARK |
1301 | + test.ViewSendCompositionKeys("<\""); |
1302 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "“", "“"); |
1303 | + test.ViewSendCtrlA(); |
1304 | + test.ViewSendDelete(); |
1305 | + nux::SleepForMilliseconds(100); |
1306 | + |
1307 | + //RIGHT DOUBLE QUOTATION MARK |
1308 | + test.ViewSendCompositionKeys("\">"); |
1309 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "”", "”"); |
1310 | + test.ViewSendCtrlA(); |
1311 | + test.ViewSendDelete(); |
1312 | + nux::SleepForMilliseconds(100); |
1313 | + |
1314 | + //DOUBLE LOW-9 QUOTATION MARK |
1315 | + test.ViewSendCompositionKeys("\","); |
1316 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "„", "„"); |
1317 | + test.ViewSendCtrlA(); |
1318 | + test.ViewSendDelete(); |
1319 | + nux::SleepForMilliseconds(100); |
1320 | + |
1321 | + //PER MILLE SIGN |
1322 | + test.ViewSendCompositionKeys("%o"); |
1323 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "‰", "‰"); |
1324 | + test.ViewSendCtrlA(); |
1325 | + test.ViewSendDelete(); |
1326 | + nux::SleepForMilliseconds(100); |
1327 | + |
1328 | + //SINGLE RIGHT-POINTING ANGLE QUOTATION MARK |
1329 | + test.ViewSendCompositionKeys(".>"); |
1330 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "›", "›"); |
1331 | + test.ViewSendCtrlA(); |
1332 | + test.ViewSendDelete(); |
1333 | + nux::SleepForMilliseconds(100); |
1334 | + |
1335 | + //EuroSign # EURO SIGN |
1336 | + test.ViewSendCompositionKeys("=E"); |
1337 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "€", "€"); |
1338 | + test.ViewSendCtrlA(); |
1339 | + test.ViewSendDelete(); |
1340 | + nux::SleepForMilliseconds(100); |
1341 | + |
1342 | + //REVERSED DOUBLE PRIME QUOTATION MARK |
1343 | + test.ViewSendCompositionKeys("\"\\"); |
1344 | + test.TestReportMsg(test_textentry->text_entry_->GetText() == "〝", "〝"); |
1345 | + test.ViewSendCtrlA(); |
1346 | + test.ViewSendDelete(); |
1347 | + nux::SleepForMilliseconds(100); |
1348 | + } |
1349 | + else |
1350 | + { |
1351 | + test.WarnCompositionKeysNotSupported(); |
1352 | + } |
1353 | |
1354 | if (test.WhenDoneTerminateProgram()) |
1355 | { |
As a general comment, there are hundreds of lines that repeat every five or ten lines, doing the same thing over and over again. It would probably help a lot in terms of the maintainability of the tests if there were a table containing the inputs and outputs. In that case, there would be the table (easy to read, one line per test), and something like ten or twenty lines of code for the single test that runs through the table.