source: trunk/NewView/unittests/cmdlineparameterunittests.pas@ 35

Last change on this file since 35 was 35, checked in by RBRi, 19 years ago

+ StringUtilsUnit and the unit test
+ some More unit test (now we have 67)

  • Property svn:eol-style set to native
File size: 43.6 KB
Line 
1Unit CmdLineParameterUnitTests;
2
3Interface
4
5uses
6 Classes,
7 TestAssert,
8 CmdLineParameterUnit;
9
10 FUNCTION getCmdLineParameterUnitTests : TList;
11
12
13Implementation
14
15 PROCEDURE testSplitCmdLineParameter_Empty;
16 VAR
17 tmpResult : TStringList;
18 tmpRC : Integer;
19 BEGIN
20 tmpResult := TStringList.Create;
21 tmpRC := splitCmdLineParameter('', tmpResult);
22
23 assertEqualsInt('testSplitCmdLineParameter_Empty', 0, tmpRC);
24 assertEqualsInt('testSplitCmdLineParameter_Empty', 0, tmpResult.Count);
25
26 tmpResult.Destroy;
27 END;
28
29
30 PROCEDURE testSplitCmdLineParameter_simpleOne;
31 VAR
32 tmpResult : TStringList;
33 tmpRC : Integer;
34 BEGIN
35 tmpResult := TStringList.Create;
36 tmpRC := splitCmdLineParameter('abc', tmpResult);
37
38 assertEqualsInt('testSplitCmdLineParameter_simpleOne', 0, tmpRC);
39 assertEqualsInt('testSplitCmdLineParameter_simpleOne', 1, tmpResult.Count);
40 assertEqualsString('testSplitCmdLineParameter_simpleOne', 'abc', tmpResult[0]);
41
42 tmpResult.Destroy;
43 END;
44
45
46 PROCEDURE testSplitCmdLineParameter_simpleOneWithLeadingBlanks;
47 VAR
48 tmpResult : TStringList;
49 tmpRC : Integer;
50 BEGIN
51 tmpResult := TStringList.Create;
52 tmpRC := splitCmdLineParameter(' abc', tmpResult);
53
54 assertEqualsInt('testSplitCmdLineParameter_simpleOneWithLeadingBlanks', 0, tmpRC);
55 assertEqualsInt('testSplitCmdLineParameter_simpleOneWithLeadingBlanks', 1, tmpResult.Count);
56 assertEqualsString('testSplitCmdLineParameter_simpleOneWithLeadingBlanks', 'abc', tmpResult[0]);
57
58 tmpResult.Destroy;
59 END;
60
61
62 PROCEDURE testSplitCmdLineParameter_simpleThreeParts;
63 VAR
64 tmpResult : TStringList;
65 tmpRC : Integer;
66 BEGIN
67 tmpResult := TStringList.Create;
68 tmpRC := splitCmdLineParameter('abc def ghi', tmpResult);
69
70 assertEqualsInt('testSplitCmdLineParameter_simpleThreeParts', 0, tmpRC);
71 assertEqualsInt('testSplitCmdLineParameter_simpleThreeParts', 3, tmpResult.Count);
72 assertEqualsString('testSplitCmdLineParameter_simpleThreeParts', 'abc', tmpResult[0]);
73 assertEqualsString('testSplitCmdLineParameter_simpleThreeParts', 'def', tmpResult[1]);
74 assertEqualsString('testSplitCmdLineParameter_simpleThreeParts', 'ghi', tmpResult[2]);
75
76 tmpResult.Destroy;
77 END;
78
79
80 PROCEDURE testSplitCmdLineParameter_quoted;
81 VAR
82 tmpResult : TStringList;
83 tmpRC : Integer;
84 BEGIN
85 tmpResult := TStringList.Create;
86 tmpRC := splitCmdLineParameter('"abc def"', tmpResult);
87
88 assertEqualsInt('testSplitCmdLineParameter_quoted', 0, tmpRC);
89 assertEqualsInt('testSplitCmdLineParameter_quoted', 1, tmpResult.Count);
90 assertEqualsString('testSplitCmdLineParameter_quoted', 'abc def', tmpResult[0]);
91
92 tmpResult.Destroy;
93 END;
94
95
96 PROCEDURE testSplitCmdLineParameter_quotedPart;
97 VAR
98 tmpResult : TStringList;
99 tmpRC : Integer;
100 BEGIN
101 tmpResult := TStringList.Create;
102 tmpRC := splitCmdLineParameter('ab"abc def"', tmpResult);
103
104 assertEqualsInt('testSplitCmdLineParameter_quotedPart', 0, tmpRC);
105 assertEqualsInt('testSplitCmdLineParameter_quotedPart', 1, tmpResult.Count);
106 assertEqualsString('testSplitCmdLineParameter_quotedPart', 'ababc def', tmpResult[0]);
107
108 tmpResult.Destroy;
109 END;
110
111
112 PROCEDURE testSplitCmdLineParameter_quotedPartIncludingQuoteAtStart;
113 VAR
114 tmpResult : TStringList;
115 tmpRC : Integer;
116 BEGIN
117 tmpResult := TStringList.Create;
118 tmpRC := splitCmdLineParameter('ab"""abc def"', tmpResult);
119
120 assertEqualsInt('testSplitCmdLineParameter_quotedPartIncludingQuoteAtStart', 0, tmpRC);
121 assertEqualsInt('testSplitCmdLineParameter_quotedPartIncludingQuoteAtStart', 1, tmpResult.Count);
122 assertEqualsString('testSplitCmdLineParameter_quotedPartIncludingQuoteAtStart', 'ab"abc def', tmpResult[0]);
123
124 tmpResult.Destroy;
125 END;
126
127
128 PROCEDURE testSplitCmdLineParameter_quotedPartIncludingQuoteInside;
129 VAR
130 tmpResult : TStringList;
131 tmpRC : Integer;
132 BEGIN
133 tmpResult := TStringList.Create;
134 tmpRC := splitCmdLineParameter('ab"ab c""d ef"', tmpResult);
135
136 assertEqualsInt('testSplitCmdLineParameter_quotedPartIncludingQuoteInside', 0, tmpRC);
137 assertEqualsInt('testSplitCmdLineParameter_quotedPartIncludingQuoteInside', 1, tmpResult.Count);
138 assertEqualsString('testSplitCmdLineParameter_quotedPartIncludingQuoteInside', 'abab c"d ef', tmpResult[0]);
139
140 tmpResult.Destroy;
141 END;
142
143
144 PROCEDURE testSplitCmdLineParameter_quotedPartIncludingQuoteAtEnd;
145 VAR
146 tmpResult : TStringList;
147 tmpRC : Integer;
148 BEGIN
149 tmpResult := TStringList.Create;
150 tmpRC := splitCmdLineParameter('ab"abc def"""', tmpResult);
151
152 assertEqualsInt('testSplitCmdLineParameter_quotedPartIncludingQuoteAtEnd', 0, tmpRC);
153 assertEqualsInt('testSplitCmdLineParameter_quotedPartIncludingQuoteAtEnd', 1, tmpResult.Count);
154 assertEqualsString('testSplitCmdLineParameter_quotedPartIncludingQuoteAtEnd', 'ababc def"', tmpResult[0]);
155
156 tmpResult.Destroy;
157 END;
158
159
160 PROCEDURE testSplitCmdLineParameter_TwoQuotedParts;
161 VAR
162 tmpResult : TStringList;
163 tmpRC : Integer;
164 BEGIN
165 tmpResult := TStringList.Create;
166 tmpRC := splitCmdLineParameter('ab"abc""def" "ghi"', tmpResult);
167
168 assertEqualsInt('testSplitCmdLineParameter_TwoQuotedParts', 0, tmpRC);
169 assertEqualsInt('testSplitCmdLineParameter_TwoQuotedParts', 2, tmpResult.Count);
170 assertEqualsString('testSplitCmdLineParameter_TwoQuotedParts', 'ababc"def', tmpResult[0]);
171 assertEqualsString('testSplitCmdLineParameter_TwoQuotedParts', 'ghi', tmpResult[1]);
172
173 tmpResult.Destroy;
174 END;
175
176
177 PROCEDURE testSplitCmdLineParameter_TwoQuotesAtStartEnd;
178 VAR
179 tmpResult : TStringList;
180 tmpRC : Integer;
181 BEGIN
182 tmpResult := TStringList.Create;
183 tmpRC := splitCmdLineParameter('""abc def""', tmpResult);
184
185 assertEqualsInt('testSplitCmdLineParameter_TwoQuotesAtStartEnd', 0, tmpRC);
186 assertEqualsInt('testSplitCmdLineParameter_TwoQuotesAtStartEnd', 2, tmpResult.Count);
187 assertEqualsString('testSplitCmdLineParameter_TwoQuotesAtStartEnd', 'abc', tmpResult[0]);
188 assertEqualsString('testSplitCmdLineParameter_TwoQuotesAtStartEnd', 'def', tmpResult[1]);
189
190 tmpResult.Destroy;
191 END;
192
193
194 PROCEDURE testSplitCmdLineParameter_Failure_TwoQuotesAtEnd;
195 VAR
196 tmpResult : TStringList;
197 tmpRC : Integer;
198 BEGIN
199 tmpResult := TStringList.Create;
200 tmpRC := splitCmdLineParameter('"abc def""', tmpResult);
201
202 assertEqualsInt('testSplitCmdLineParameter_Failure_TwoQuotesAtEnd', -1, tmpRC);
203 assertEqualsInt('testSplitCmdLineParameter_Failure_TwoQuotesAtEnd', 1, tmpResult.Count);
204 assertEqualsString('testSplitCmdLineParameter_Failure_TwoQuotesAtEnd', 'abc def"', tmpResult[0]);
205
206 tmpResult.Destroy;
207 END;
208
209
210 PROCEDURE testSplitCmdLineParameter_TwoQuotedPartsMissingClosedQuote;
211 VAR
212 tmpResult : TStringList;
213 tmpRC : Integer;
214 BEGIN
215 tmpResult := TStringList.Create;
216 tmpRC := splitCmdLineParameter('ab"abc""def" "ghi', tmpResult);
217
218 assertEqualsInt('testSplitCmdLineParameter_TwoQuotedPartsMissingClosedQuote', -1, tmpRC);
219 assertEqualsInt('testSplitCmdLineParameter_TwoQuotedPartsMissingClosedQuote', 2, tmpResult.Count);
220 assertEqualsString('testSplitCmdLineParameter_TwoQuotedPartsMissingClosedQuote', 'ababc"def', tmpResult[0]);
221 assertEqualsString('testSplitCmdLineParameter_TwoQuotedPartsMissingClosedQuote', 'ghi', tmpResult[1]);
222
223 tmpResult.Destroy;
224 END;
225
226
227 PROCEDURE testSplitCmdLineParameter_1Quote;
228 VAR
229 tmpResult : TStringList;
230 tmpRC : Integer;
231 BEGIN
232 tmpResult := TStringList.Create;
233 tmpRC := splitCmdLineParameter('"', tmpResult);
234
235 assertEqualsInt('testSplitCmdLineParameter_1Quote', -1, tmpRC);
236 assertEqualsInt('testSplitCmdLineParameter_1Quote', 0, tmpResult.Count);
237
238 tmpResult.Destroy;
239 END;
240
241
242 PROCEDURE testSplitCmdLineParameter_2Quote;
243 VAR
244 tmpResult : TStringList;
245 tmpRC : Integer;
246 BEGIN
247 tmpResult := TStringList.Create;
248 tmpRC := splitCmdLineParameter('""', tmpResult);
249
250 assertEqualsInt('testSplitCmdLineParameter_2Quote', 0, tmpRC);
251 assertEqualsInt('testSplitCmdLineParameter_2Quote', 0, tmpResult.Count);
252
253 tmpResult.Destroy;
254 END;
255
256
257 PROCEDURE testSplitCmdLineParameter_3Quote;
258 VAR
259 tmpResult : TStringList;
260 tmpRC : Integer;
261 BEGIN
262 tmpResult := TStringList.Create;
263 tmpRC := splitCmdLineParameter('"""', tmpResult);
264
265 assertEqualsInt('testSplitCmdLineParameter_3Quote', -1, tmpRC);
266 assertEqualsInt('', 1, tmpResult.Count);
267 assertEqualsString('testSplitCmdLineParameter_3Quote', '"', tmpResult[0]);
268
269 tmpResult.Destroy;
270 END;
271
272
273 PROCEDURE testSplitCmdLineParameter_4Quote;
274 VAR
275 tmpResult : TStringList;
276 tmpRC : Integer;
277 BEGIN
278 tmpResult := TStringList.Create;
279 tmpRC := splitCmdLineParameter('""""', tmpResult);
280
281 assertEqualsInt('testSplitCmdLineParameter_4Quote', 0, tmpRC);
282 assertEqualsInt('testSplitCmdLineParameter_4Quote', 1, tmpResult.Count);
283 assertEqualsString('testSplitCmdLineParameter_4Quote', '"', tmpResult[0]);
284
285 tmpResult.Destroy;
286 END;
287
288
289 PROCEDURE testSplitCmdLineParameter_5Quote;
290 VAR
291 tmpResult : TStringList;
292 tmpRC : Integer;
293 BEGIN
294 tmpResult := TStringList.Create;
295 tmpRC := splitCmdLineParameter('"""""', tmpResult);
296
297 assertEqualsInt('testSplitCmdLineParameter_5Quote', -1, tmpRC);
298 assertEqualsInt('testSplitCmdLineParameter_5Quote', 1, tmpResult.Count);
299 assertEqualsString('testSplitCmdLineParameter_5Quote', '""', tmpResult[0]);
300
301 tmpResult.Destroy;
302 END;
303
304
305 PROCEDURE testSplitCmdLineParameter_6Quote;
306 VAR
307 tmpResult : TStringList;
308 tmpRC : Integer;
309 BEGIN
310 tmpResult := TStringList.Create;
311 tmpRC := splitCmdLineParameter('""""""', tmpResult);
312
313 assertEqualsInt('testSplitCmdLineParameter_6Quote', 0, tmpRC);
314 assertEqualsInt('testSplitCmdLineParameter_6Quote', 1, tmpResult.Count);
315 assertEqualsString('testSplitCmdLineParameter_6Quote', '""', tmpResult[0]);
316
317 tmpResult.Destroy;
318 END;
319
320
321 //////////////////
322 // parser Tests
323 //////////////////
324
325
326 PROCEDURE testParseCmdLine_Empty;
327 VAR
328 tmpParams : TStringList;
329 tmpCmdLineParameters : TCmdLineParameters;
330 BEGIN
331 tmpParams := TStringList.Create;
332 tmpCmdLineParameters := TCmdLineParameters.Create;
333 tmpCmdLineParameters.parseCmdLine(tmpParams);
334
335 assertFalse('testParseCmdLine_Empty', tmpCmdLineParameters.getShowUsageFlag);
336 assertFalse('testParseCmdLine_Empty', tmpCmdLineParameters.getSearchTextFlag);
337 assertEqualsString('testParseCmdLine_Empty', '', tmpCmdLineParameters.getSearchText);
338 assertFalse('testParseCmdLine_Empty', tmpCmdLineParameters.getGlobalSearchTextFlag);
339 assertEqualsString('testParseCmdLine_Empty', '', tmpCmdLineParameters.getGlobalSearchText);
340 assertEqualsString('testParseCmdLine_Empty', '', tmpCmdLineParameters.getLanguage);
341 assertFalse('testParseCmdLine_Empty', tmpCmdLineParameters.getHelpManagerFlag);
342 assertEqualsInt('testParseCmdLine_Empty', 0, tmpCmdLineParameters.getHelpManagerWindow);
343 assertEqualsInt('testParseCmdLine_Empty', 0, tmpCmdLineParameters.getOwnerWindow);
344 assertEqualsString('testParseCmdLine_Empty', '', tmpCmdLineParameters.getWindowTitle);
345 END;
346
347
348 PROCEDURE testParseCmdLine_QuestionMark;
349 VAR
350 tmpParams : TStringList;
351 tmpCmdLineParameters : TCmdLineParameters;
352 BEGIN
353 tmpParams := TStringList.Create;
354 tmpParams.add('-?');
355 tmpCmdLineParameters := TCmdLineParameters.Create;
356 tmpCmdLineParameters.parseCmdLine(tmpParams);
357
358 assertTrue('testParseCmdLine_QuestionMark', tmpCmdLineParameters.getShowUsageFlag);
359 assertFalse('testParseCmdLine_QuestionMark', tmpCmdLineParameters.getSearchTextFlag);
360 assertEqualsString('testParseCmdLine_QuestionMark', '', tmpCmdLineParameters.getSearchText);
361 assertFalse('testParseCmdLine_QuestionMark', tmpCmdLineParameters.getGlobalSearchTextFlag);
362 assertEqualsString('testParseCmdLine_QuestionMark', '', tmpCmdLineParameters.getGlobalSearchText);
363 assertEqualsString('testParseCmdLine_QuestionMark', '', tmpCmdLineParameters.getLanguage);
364 assertFalse('testParseCmdLine_QuestionMark', tmpCmdLineParameters.getHelpManagerFlag);
365 assertEqualsInt('testParseCmdLine_QuestionMark', 0, tmpCmdLineParameters.getHelpManagerWindow);
366 assertEqualsInt('testParseCmdLine_QuestionMark', 0, tmpCmdLineParameters.getOwnerWindow);
367 assertEqualsString('testParseCmdLine_QuestionMark', '', tmpCmdLineParameters.getWindowTitle);
368 END;
369
370
371 PROCEDURE testParseCmdLine_lowerH;
372 VAR
373 tmpParams : TStringList;
374 tmpCmdLineParameters : TCmdLineParameters;
375 BEGIN
376 tmpParams := TStringList.Create;
377 tmpParams.add('-h');
378 tmpCmdLineParameters := TCmdLineParameters.Create;
379 tmpCmdLineParameters.parseCmdLine(tmpParams);
380
381 assertTrue('testParseCmdLine_lowerH', tmpCmdLineParameters.getShowUsageFlag);
382 assertFalse('testParseCmdLine_lowerH', tmpCmdLineParameters.getSearchTextFlag);
383 assertEqualsString('testParseCmdLine_lowerH', '', tmpCmdLineParameters.getSearchText);
384 assertFalse('testParseCmdLine_lowerH', tmpCmdLineParameters.getGlobalSearchTextFlag);
385 assertEqualsString('testParseCmdLine_lowerH', '', tmpCmdLineParameters.getGlobalSearchText);
386 assertEqualsString('testParseCmdLine_lowerH', '', tmpCmdLineParameters.getLanguage);
387 assertFalse('testParseCmdLine_lowerH', tmpCmdLineParameters.getHelpManagerFlag);
388 assertEqualsInt('testParseCmdLine_lowerH', 0, tmpCmdLineParameters.getHelpManagerWindow);
389 assertEqualsInt('testParseCmdLine_lowerH', 0, tmpCmdLineParameters.getOwnerWindow);
390 assertEqualsString('testParseCmdLine_lowerH', '', tmpCmdLineParameters.getWindowTitle);
391 END;
392
393
394 PROCEDURE testParseCmdLine_upperH;
395 VAR
396 tmpParams : TStringList;
397 tmpCmdLineParameters : TCmdLineParameters;
398 BEGIN
399 tmpParams := TStringList.Create;
400 tmpParams.add('-H');
401 tmpCmdLineParameters := TCmdLineParameters.Create;
402 tmpCmdLineParameters.parseCmdLine(tmpParams);
403
404 assertTrue('testParseCmdLine_upperH', tmpCmdLineParameters.getShowUsageFlag);
405 assertFalse('testParseCmdLine_upperH', tmpCmdLineParameters.getSearchTextFlag);
406 assertEqualsString('testParseCmdLine_upperH', '', tmpCmdLineParameters.getSearchText);
407 assertFalse('testParseCmdLine_upperH', tmpCmdLineParameters.getGlobalSearchTextFlag);
408 assertEqualsString('testParseCmdLine_upperH', '', tmpCmdLineParameters.getGlobalSearchText);
409 assertEqualsString('testParseCmdLine_upperH', '', tmpCmdLineParameters.getLanguage);
410 assertFalse('testParseCmdLine_upperH', tmpCmdLineParameters.getHelpManagerFlag);
411 assertEqualsInt('testParseCmdLine_upperH', 0, tmpCmdLineParameters.getHelpManagerWindow);
412 assertEqualsInt('testParseCmdLine_upperH', 0, tmpCmdLineParameters.getOwnerWindow);
413 assertEqualsString('testParseCmdLine_upperH', '', tmpCmdLineParameters.getWindowTitle);
414 END;
415
416
417 PROCEDURE testParseCmdLine_lowerHelp;
418 VAR
419 tmpParams : TStringList;
420 tmpCmdLineParameters : TCmdLineParameters;
421 BEGIN
422 tmpParams := TStringList.Create;
423 tmpParams.add('-help');
424 tmpCmdLineParameters := TCmdLineParameters.Create;
425 tmpCmdLineParameters.parseCmdLine(tmpParams);
426
427 assertTrue('testParseCmdLine_lowerHelp', tmpCmdLineParameters.getShowUsageFlag);
428 assertFalse('testParseCmdLine_lowerHelp', tmpCmdLineParameters.getSearchTextFlag);
429 assertEqualsString('testParseCmdLine_lowerHelp', '', tmpCmdLineParameters.getSearchText);
430 assertFalse('testParseCmdLine_lowerHelp', tmpCmdLineParameters.getGlobalSearchTextFlag);
431 assertEqualsString('testParseCmdLine_lowerHelp', '', tmpCmdLineParameters.getGlobalSearchText);
432 assertEqualsString('testParseCmdLine_lowerHelp', '', tmpCmdLineParameters.getLanguage);
433 assertFalse('testParseCmdLine_lowerHelp', tmpCmdLineParameters.getHelpManagerFlag);
434 assertEqualsInt('testParseCmdLine_lowerHelp', 0, tmpCmdLineParameters.getHelpManagerWindow);
435 assertEqualsInt('testParseCmdLine_lowerHelp', 0, tmpCmdLineParameters.getOwnerWindow);
436 assertEqualsString('testParseCmdLine_lowerHelp', '', tmpCmdLineParameters.getWindowTitle);
437 END;
438
439
440 PROCEDURE testParseCmdLine_upperHELP;
441 VAR
442 tmpParams : TStringList;
443 tmpCmdLineParameters : TCmdLineParameters;
444 BEGIN
445 tmpParams := TStringList.Create;
446 tmpParams.add('-HELP');
447 tmpCmdLineParameters := TCmdLineParameters.Create;
448 tmpCmdLineParameters.parseCmdLine(tmpParams);
449
450 assertTrue('testParseCmdLine_upperHELP', tmpCmdLineParameters.getShowUsageFlag);
451 assertFalse('testParseCmdLine_upperHELP', tmpCmdLineParameters.getSearchTextFlag);
452 assertEqualsString('testParseCmdLine_upperHELP', '', tmpCmdLineParameters.getSearchText);
453 assertFalse('testParseCmdLine_upperHELP', tmpCmdLineParameters.getGlobalSearchTextFlag);
454 assertEqualsString('testParseCmdLine_upperHELP', '', tmpCmdLineParameters.getGlobalSearchText);
455 assertEqualsString('testParseCmdLine_upperHELP', '', tmpCmdLineParameters.getLanguage);
456 assertFalse('testParseCmdLine_upperHELP', tmpCmdLineParameters.getHelpManagerFlag);
457 assertEqualsInt('testParseCmdLine_upperHELP', 0, tmpCmdLineParameters.getHelpManagerWindow);
458 assertEqualsInt('testParseCmdLine_upperHELP', 0, tmpCmdLineParameters.getOwnerWindow);
459 assertEqualsString('testParseCmdLine_upperHELP', '', tmpCmdLineParameters.getWindowTitle);
460 END;
461
462
463 PROCEDURE testParseCmdLine_lowerS;
464 VAR
465 tmpParams : TStringList;
466 tmpCmdLineParameters : TCmdLineParameters;
467 BEGIN
468 tmpParams := TStringList.Create;
469 tmpParams.add('-s:search');
470 tmpCmdLineParameters := TCmdLineParameters.Create;
471 tmpCmdLineParameters.parseCmdLine(tmpParams);
472
473 assertFalse('testParseCmdLine_lowerS', tmpCmdLineParameters.getShowUsageFlag);
474 assertTrue('testParseCmdLine_lowerS', tmpCmdLineParameters.getSearchTextFlag);
475 assertEqualsString('testParseCmdLine_lowerS', 'search', tmpCmdLineParameters.getSearchText);
476 assertFalse('testParseCmdLine_lowerS', tmpCmdLineParameters.getGlobalSearchTextFlag);
477 assertEqualsString('testParseCmdLine_lowerS', '', tmpCmdLineParameters.getGlobalSearchText);
478 assertEqualsString('testParseCmdLine_lowerS', '', tmpCmdLineParameters.getLanguage);
479 assertFalse('testParseCmdLine_lowerS', tmpCmdLineParameters.getHelpManagerFlag);
480 assertEqualsInt('testParseCmdLine_lowerS', 0, tmpCmdLineParameters.getHelpManagerWindow);
481 assertEqualsInt('testParseCmdLine_lowerS', 0, tmpCmdLineParameters.getOwnerWindow);
482 assertEqualsString('testParseCmdLine_lowerS', '', tmpCmdLineParameters.getWindowTitle);
483 END;
484
485
486 PROCEDURE testParseCmdLine_upperS;
487 VAR
488 tmpParams : TStringList;
489 tmpCmdLineParameters : TCmdLineParameters;
490 BEGIN
491 tmpParams := TStringList.Create;
492 tmpParams.add('-S:seArch');
493 tmpCmdLineParameters := TCmdLineParameters.Create;
494 tmpCmdLineParameters.parseCmdLine(tmpParams);
495
496 assertFalse('testParseCmdLine_upperS', tmpCmdLineParameters.getShowUsageFlag);
497 assertTrue('testParseCmdLine_upperS', tmpCmdLineParameters.getSearchTextFlag);
498 assertEqualsString('testParseCmdLine_upperS', 'seArch', tmpCmdLineParameters.getSearchText);
499 assertFalse('testParseCmdLine_upperS', tmpCmdLineParameters.getGlobalSearchTextFlag);
500 assertEqualsString('testParseCmdLine_upperS', '', tmpCmdLineParameters.getGlobalSearchText);
501 assertEqualsString('testParseCmdLine_upperS', '', tmpCmdLineParameters.getLanguage);
502 assertFalse('testParseCmdLine_upperS', tmpCmdLineParameters.getHelpManagerFlag);
503 assertEqualsInt('testParseCmdLine_upperS', 0, tmpCmdLineParameters.getHelpManagerWindow);
504 assertEqualsInt('testParseCmdLine_upperS', 0, tmpCmdLineParameters.getOwnerWindow);
505 assertEqualsString('testParseCmdLine_upperS', '', tmpCmdLineParameters.getWindowTitle);
506 END;
507
508
509 PROCEDURE testParseCmdLine_emptyS;
510 VAR
511 tmpParams : TStringList;
512 tmpCmdLineParameters : TCmdLineParameters;
513 BEGIN
514 tmpParams := TStringList.Create;
515 tmpParams.add('-S');
516 tmpCmdLineParameters := TCmdLineParameters.Create;
517 tmpCmdLineParameters.parseCmdLine(tmpParams);
518
519 assertFalse('testParseCmdLine_emptyS', tmpCmdLineParameters.getShowUsageFlag);
520 assertTrue('testParseCmdLine_emptyS', tmpCmdLineParameters.getSearchTextFlag);
521 assertEqualsString('testParseCmdLine_emptyS', '', tmpCmdLineParameters.getSearchText);
522 assertFalse('testParseCmdLine_emptyS', tmpCmdLineParameters.getGlobalSearchTextFlag);
523 assertEqualsString('testParseCmdLine_emptyS', '', tmpCmdLineParameters.getGlobalSearchText);
524 assertEqualsString('testParseCmdLine_emptyS', '', tmpCmdLineParameters.getLanguage);
525 assertFalse('testParseCmdLine_emptyS', tmpCmdLineParameters.getHelpManagerFlag);
526 assertEqualsInt('testParseCmdLine_emptyS', 0, tmpCmdLineParameters.getHelpManagerWindow);
527 assertEqualsInt('testParseCmdLine_emptyS', 0, tmpCmdLineParameters.getOwnerWindow);
528 assertEqualsString('testParseCmdLine_emptyS', '', tmpCmdLineParameters.getWindowTitle);
529 END;
530
531
532 PROCEDURE testParseCmdLine_emptyColonS;
533 VAR
534 tmpParams : TStringList;
535 tmpCmdLineParameters : TCmdLineParameters;
536 BEGIN
537 tmpParams := TStringList.Create;
538 tmpParams.add('-S:');
539 tmpCmdLineParameters := TCmdLineParameters.Create;
540 tmpCmdLineParameters.parseCmdLine(tmpParams);
541
542 assertFalse('testParseCmdLine_emptyColonS', tmpCmdLineParameters.getShowUsageFlag);
543 assertTrue('testParseCmdLine_emptyColonS', tmpCmdLineParameters.getSearchTextFlag);
544 assertEqualsString('testParseCmdLine_emptyColonS', '', tmpCmdLineParameters.getSearchText);
545 assertFalse('testParseCmdLine_emptyColonS', tmpCmdLineParameters.getGlobalSearchTextFlag);
546 assertEqualsString('testParseCmdLine_emptyColonS', '', tmpCmdLineParameters.getGlobalSearchText);
547 assertEqualsString('testParseCmdLine_emptyColonS', '', tmpCmdLineParameters.getLanguage);
548 assertFalse('testParseCmdLine_emptyColonS', tmpCmdLineParameters.getHelpManagerFlag);
549 assertEqualsInt('testParseCmdLine_emptyColonS', 0, tmpCmdLineParameters.getHelpManagerWindow);
550 assertEqualsInt('testParseCmdLine_emptyColonS', 0, tmpCmdLineParameters.getOwnerWindow);
551 assertEqualsString('testParseCmdLine_emptyColonS', '', tmpCmdLineParameters.getWindowTitle);
552 END;
553
554
555 PROCEDURE testParseCmdLine_withoutColonS;
556 VAR
557 tmpParams : TStringList;
558 tmpCmdLineParameters : TCmdLineParameters;
559 BEGIN
560 tmpParams := TStringList.Create;
561 tmpParams.add('-ssEarRch');
562 tmpCmdLineParameters := TCmdLineParameters.Create;
563 tmpCmdLineParameters.parseCmdLine(tmpParams);
564
565 assertFalse('testParseCmdLine_withoutColonS', tmpCmdLineParameters.getShowUsageFlag);
566 assertTrue('testParseCmdLine_withoutColonS', tmpCmdLineParameters.getSearchTextFlag);
567 assertEqualsString('testParseCmdLine_withoutColonS', 'sEarRch', tmpCmdLineParameters.getSearchText);
568 assertFalse('testParseCmdLine_withoutColonS', tmpCmdLineParameters.getGlobalSearchTextFlag);
569 assertEqualsString('testParseCmdLine_withoutColonS', '', tmpCmdLineParameters.getGlobalSearchText);
570 assertEqualsString('testParseCmdLine_withoutColonS', '', tmpCmdLineParameters.getLanguage);
571 assertFalse('testParseCmdLine_withoutColonS', tmpCmdLineParameters.getHelpManagerFlag);
572 assertEqualsInt('testParseCmdLine_withoutColonS', 0, tmpCmdLineParameters.getHelpManagerWindow);
573 assertEqualsInt('testParseCmdLine_withoutColonS', 0, tmpCmdLineParameters.getOwnerWindow);
574 assertEqualsString('testParseCmdLine_withoutColonS', '', tmpCmdLineParameters.getWindowTitle);
575 END;
576
577
578 PROCEDURE testParseCmdLine_doubleColonS;
579 VAR
580 tmpParams : TStringList;
581 tmpCmdLineParameters : TCmdLineParameters;
582 BEGIN
583 tmpParams := TStringList.Create;
584 tmpParams.add('-s::sEarRch');
585 tmpCmdLineParameters := TCmdLineParameters.Create;
586 tmpCmdLineParameters.parseCmdLine(tmpParams);
587
588 assertFalse('testParseCmdLine_doubleColonS', tmpCmdLineParameters.getShowUsageFlag);
589 assertTrue('testParseCmdLine_doubleColonS', tmpCmdLineParameters.getSearchTextFlag);
590 assertEqualsString('testParseCmdLine_doubleColonS', ':sEarRch', tmpCmdLineParameters.getSearchText);
591 assertFalse('testParseCmdLine_doubleColonS', tmpCmdLineParameters.getGlobalSearchTextFlag);
592 assertEqualsString('testParseCmdLine_doubleColonS', '', tmpCmdLineParameters.getGlobalSearchText);
593 assertEqualsString('testParseCmdLine_doubleColonS', '', tmpCmdLineParameters.getLanguage);
594 assertFalse('testParseCmdLine_doubleColonS', tmpCmdLineParameters.getHelpManagerFlag);
595 assertEqualsInt('testParseCmdLine_doubleColonS', 0, tmpCmdLineParameters.getHelpManagerWindow);
596 assertEqualsInt('testParseCmdLine_doubleColonS', 0, tmpCmdLineParameters.getOwnerWindow);
597 assertEqualsString('testParseCmdLine_doubleColonS', '', tmpCmdLineParameters.getWindowTitle);
598 END;
599
600
601 PROCEDURE testParseCmdLine_lowerG;
602 VAR
603 tmpParams : TStringList;
604 tmpCmdLineParameters : TCmdLineParameters;
605 BEGIN
606 tmpParams := TStringList.Create;
607 tmpParams.add('-g:search');
608 tmpCmdLineParameters := TCmdLineParameters.Create;
609 tmpCmdLineParameters.parseCmdLine(tmpParams);
610
611 assertFalse('testParseCmdLine_lowerG', tmpCmdLineParameters.getShowUsageFlag);
612 assertFalse('testParseCmdLine_lowerG', tmpCmdLineParameters.getSearchTextFlag);
613 assertEqualsString('testParseCmdLine_lowerG', '', tmpCmdLineParameters.getSearchText);
614 assertTrue('testParseCmdLine_lowerG', tmpCmdLineParameters.getGlobalSearchTextFlag);
615 assertEqualsString('testParseCmdLine_lowerG', 'search', tmpCmdLineParameters.getGlobalSearchText);
616 assertEqualsString('testParseCmdLine_lowerG', '', tmpCmdLineParameters.getLanguage);
617 assertFalse('testParseCmdLine_lowerG', tmpCmdLineParameters.getHelpManagerFlag);
618 assertEqualsInt('testParseCmdLine_lowerG', 0, tmpCmdLineParameters.getHelpManagerWindow);
619 assertEqualsInt('testParseCmdLine_lowerG', 0, tmpCmdLineParameters.getOwnerWindow);
620 assertEqualsString('testParseCmdLine_lowerG', '', tmpCmdLineParameters.getWindowTitle);
621 END;
622
623
624 PROCEDURE testParseCmdLine_upperG;
625 VAR
626 tmpParams : TStringList;
627 tmpCmdLineParameters : TCmdLineParameters;
628 BEGIN
629 tmpParams := TStringList.Create;
630 tmpParams.add('-G:seArch');
631 tmpCmdLineParameters := TCmdLineParameters.Create;
632 tmpCmdLineParameters.parseCmdLine(tmpParams);
633
634 assertFalse('testParseCmdLine_upperG', tmpCmdLineParameters.getShowUsageFlag);
635 assertFalse('testParseCmdLine_upperG', tmpCmdLineParameters.getSearchTextFlag);
636 assertEqualsString('testParseCmdLine_upperG', '', tmpCmdLineParameters.getSearchText);
637 assertTrue('testParseCmdLine_upperG', tmpCmdLineParameters.getGlobalSearchTextFlag);
638 assertEqualsString('testParseCmdLine_upperG', 'seArch', tmpCmdLineParameters.getGlobalSearchText);
639 assertEqualsString('testParseCmdLine_upperG', '', tmpCmdLineParameters.getLanguage);
640 assertFalse('testParseCmdLine_upperG', tmpCmdLineParameters.getHelpManagerFlag);
641 assertEqualsInt('testParseCmdLine_upperG', 0, tmpCmdLineParameters.getHelpManagerWindow);
642 assertEqualsInt('testParseCmdLine_upperG', 0, tmpCmdLineParameters.getOwnerWindow);
643 assertEqualsString('testParseCmdLine_upperG', '', tmpCmdLineParameters.getWindowTitle);
644 END;
645
646
647 PROCEDURE testParseCmdLine_emptyG;
648 VAR
649 tmpParams : TStringList;
650 tmpCmdLineParameters : TCmdLineParameters;
651 BEGIN
652 tmpParams := TStringList.Create;
653 tmpParams.add('-G');
654 tmpCmdLineParameters := TCmdLineParameters.Create;
655 tmpCmdLineParameters.parseCmdLine(tmpParams);
656
657 assertFalse('testParseCmdLine_emptyG', tmpCmdLineParameters.getShowUsageFlag);
658 assertFalse('testParseCmdLine_emptyG', tmpCmdLineParameters.getSearchTextFlag);
659 assertEqualsString('testParseCmdLine_emptyG', '', tmpCmdLineParameters.getSearchText);
660 assertTrue('testParseCmdLine_emptyG', tmpCmdLineParameters.getGlobalSearchTextFlag);
661 assertEqualsString('testParseCmdLine_emptyG', '', tmpCmdLineParameters.getGlobalSearchText);
662 assertEqualsString('testParseCmdLine_emptyG', '', tmpCmdLineParameters.getLanguage);
663 assertFalse('testParseCmdLine_emptyG', tmpCmdLineParameters.getHelpManagerFlag);
664 assertEqualsInt('testParseCmdLine_emptyG', 0, tmpCmdLineParameters.getHelpManagerWindow);
665 assertEqualsInt('testParseCmdLine_emptyG', 0, tmpCmdLineParameters.getOwnerWindow);
666 assertEqualsString('testParseCmdLine_emptyG', '', tmpCmdLineParameters.getWindowTitle);
667 END;
668
669
670 PROCEDURE testParseCmdLine_emptyColonG;
671 VAR
672 tmpParams : TStringList;
673 tmpCmdLineParameters : TCmdLineParameters;
674 BEGIN
675 tmpParams := TStringList.Create;
676 tmpParams.add('-G:');
677 tmpCmdLineParameters := TCmdLineParameters.Create;
678 tmpCmdLineParameters.parseCmdLine(tmpParams);
679
680 assertFalse('testParseCmdLine_emptyColonG', tmpCmdLineParameters.getShowUsageFlag);
681 assertFalse('testParseCmdLine_emptyColonG', tmpCmdLineParameters.getSearchTextFlag);
682 assertEqualsString('testParseCmdLine_emptyColonG', '', tmpCmdLineParameters.getSearchText);
683 assertTrue('testParseCmdLine_emptyColonG', tmpCmdLineParameters.getGlobalSearchTextFlag);
684 assertEqualsString('testParseCmdLine_emptyColonG', '', tmpCmdLineParameters.getGlobalSearchText);
685 assertEqualsString('testParseCmdLine_emptyColonG', '', tmpCmdLineParameters.getLanguage);
686 assertFalse('testParseCmdLine_emptyColonG', tmpCmdLineParameters.getHelpManagerFlag);
687 assertEqualsInt('testParseCmdLine_emptyColonG', 0, tmpCmdLineParameters.getHelpManagerWindow);
688 assertEqualsInt('testParseCmdLine_emptyColonG', 0, tmpCmdLineParameters.getOwnerWindow);
689 assertEqualsString('testParseCmdLine_emptyColonG', '', tmpCmdLineParameters.getWindowTitle);
690 END;
691
692
693 PROCEDURE testParseCmdLine_withoutColonG;
694 VAR
695 tmpParams : TStringList;
696 tmpCmdLineParameters : TCmdLineParameters;
697 BEGIN
698 tmpParams := TStringList.Create;
699 tmpParams.add('-gsEarRch');
700 tmpCmdLineParameters := TCmdLineParameters.Create;
701 tmpCmdLineParameters.parseCmdLine(tmpParams);
702
703 assertFalse('testParseCmdLine_withoutColonG', tmpCmdLineParameters.getShowUsageFlag);
704 assertFalse('testParseCmdLine_withoutColonG', tmpCmdLineParameters.getSearchTextFlag);
705 assertEqualsString('testParseCmdLine_withoutColonG', '', tmpCmdLineParameters.getSearchText);
706 assertTrue('testParseCmdLine_withoutColonG', tmpCmdLineParameters.getGlobalSearchTextFlag);
707 assertEqualsString('testParseCmdLine_withoutColonG', 'sEarRch', tmpCmdLineParameters.getGlobalSearchText);
708 assertEqualsString('testParseCmdLine_withoutColonG', '', tmpCmdLineParameters.getLanguage);
709 assertFalse('testParseCmdLine_withoutColonG', tmpCmdLineParameters.getHelpManagerFlag);
710 assertEqualsInt('testParseCmdLine_withoutColonG', 0, tmpCmdLineParameters.getHelpManagerWindow);
711 assertEqualsInt('testParseCmdLine_withoutColonG', 0, tmpCmdLineParameters.getOwnerWindow);
712 assertEqualsString('testParseCmdLine_withoutColonG', '', tmpCmdLineParameters.getWindowTitle);
713 END;
714
715
716 PROCEDURE testParseCmdLine_doubleColonG;
717 VAR
718 tmpParams : TStringList;
719 tmpCmdLineParameters : TCmdLineParameters;
720 BEGIN
721 tmpParams := TStringList.Create;
722 tmpParams.add('-g::sEarRch');
723 tmpCmdLineParameters := TCmdLineParameters.Create;
724 tmpCmdLineParameters.parseCmdLine(tmpParams);
725
726 assertFalse('testParseCmdLine_doubleColonG', tmpCmdLineParameters.getShowUsageFlag);
727 assertFalse('testParseCmdLine_doubleColonG', tmpCmdLineParameters.getSearchTextFlag);
728 assertEqualsString('testParseCmdLine_doubleColonG', '', tmpCmdLineParameters.getSearchText);
729 assertTrue('testParseCmdLine_doubleColonG', tmpCmdLineParameters.getGlobalSearchTextFlag);
730 assertEqualsString('testParseCmdLine_doubleColonG', ':sEarRch', tmpCmdLineParameters.getGlobalSearchText);
731 assertEqualsString('testParseCmdLine_doubleColonG', '', tmpCmdLineParameters.getLanguage);
732 assertFalse('testParseCmdLine_doubleColonG', tmpCmdLineParameters.getHelpManagerFlag);
733 assertEqualsInt('testParseCmdLine_doubleColonG', 0, tmpCmdLineParameters.getHelpManagerWindow);
734 assertEqualsInt('testParseCmdLine_doubleColonG', 0, tmpCmdLineParameters.getOwnerWindow);
735 assertEqualsString('testParseCmdLine_doubleColonG', '', tmpCmdLineParameters.getWindowTitle);
736 END;
737
738
739 PROCEDURE testParseCmdLine_Language;
740 VAR
741 tmpParams : TStringList;
742 tmpCmdLineParameters : TCmdLineParameters;
743 BEGIN
744 tmpParams := TStringList.Create;
745 tmpParams.add('-lang:DE');
746 tmpCmdLineParameters := TCmdLineParameters.Create;
747 tmpCmdLineParameters.parseCmdLine(tmpParams);
748
749 assertFalse('testParseCmdLine_Language', tmpCmdLineParameters.getShowUsageFlag);
750 assertFalse('testParseCmdLine_Language', tmpCmdLineParameters.getSearchTextFlag);
751 assertEqualsString('testParseCmdLine_Language', '', tmpCmdLineParameters.getSearchText);
752 assertFalse('testParseCmdLine_Language', tmpCmdLineParameters.getGlobalSearchTextFlag);
753 assertEqualsString('testParseCmdLine_Language', '', tmpCmdLineParameters.getGlobalSearchText);
754 assertEqualsString('testParseCmdLine_Language', 'DE', tmpCmdLineParameters.getLanguage);
755 assertFalse('testParseCmdLine_Language', tmpCmdLineParameters.getHelpManagerFlag);
756 assertEqualsInt('testParseCmdLine_Language', 0, tmpCmdLineParameters.getHelpManagerWindow);
757 assertEqualsInt('testParseCmdLine_Language', 0, tmpCmdLineParameters.getOwnerWindow);
758 assertEqualsString('testParseCmdLine_Language', '', tmpCmdLineParameters.getWindowTitle);
759 END;
760
761
762 PROCEDURE testParseCmdLine_HelpManagerNumber;
763 VAR
764 tmpParams : TStringList;
765 tmpCmdLineParameters : TCmdLineParameters;
766 BEGIN
767 tmpParams := TStringList.Create;
768 tmpParams.add('-Hm:123');
769 tmpCmdLineParameters := TCmdLineParameters.Create;
770 tmpCmdLineParameters.parseCmdLine(tmpParams);
771
772 assertFalse('testParseCmdLine_HelpManagerNumber', tmpCmdLineParameters.getShowUsageFlag);
773 assertFalse('testParseCmdLine_HelpManagerNumber', tmpCmdLineParameters.getSearchTextFlag);
774 assertEqualsString('testParseCmdLine_HelpManagerNumber', '', tmpCmdLineParameters.getSearchText);
775 assertFalse('testParseCmdLine_HelpManagerNumber', tmpCmdLineParameters.getGlobalSearchTextFlag);
776 assertEqualsString('testParseCmdLine_HelpManagerNumber', '', tmpCmdLineParameters.getGlobalSearchText);
777 assertEqualsString('testParseCmdLine_HelpManagerNumber', '', tmpCmdLineParameters.getLanguage);
778 assertTrue('testParseCmdLine_HelpManagerNumber', tmpCmdLineParameters.getHelpManagerFlag);
779 assertEqualsInt('testParseCmdLine_HelpManagerNumber', 123, tmpCmdLineParameters.getHelpManagerWindow);
780 assertEqualsInt('testParseCmdLine_HelpManagerNumber', 0, tmpCmdLineParameters.getOwnerWindow);
781 assertEqualsString('testParseCmdLine_HelpManagerNumber', '', tmpCmdLineParameters.getWindowTitle);
782 END;
783
784
785 PROCEDURE testParseCmdLine_HelpManagerText;
786 VAR
787 tmpParams : TStringList;
788 tmpCmdLineParameters : TCmdLineParameters;
789 BEGIN
790 tmpParams := TStringList.Create;
791 tmpParams.add('-HM:1zwei3');
792 tmpCmdLineParameters := TCmdLineParameters.Create;
793 tmpCmdLineParameters.parseCmdLine(tmpParams);
794
795 assertFalse('testParseCmdLine_HelpManagerText', tmpCmdLineParameters.getShowUsageFlag);
796 assertFalse('testParseCmdLine_HelpManagerText', tmpCmdLineParameters.getSearchTextFlag);
797 assertEqualsString('testParseCmdLine_HelpManagerText', '', tmpCmdLineParameters.getSearchText);
798 assertFalse('testParseCmdLine_HelpManagerText', tmpCmdLineParameters.getGlobalSearchTextFlag);
799 assertEqualsString('parseCmdLine [getGlobalSearchText](19)', '', tmpCmdLineParameters.getGlobalSearchText);
800 assertEqualsString('testParseCmdLine_HelpManagerText', '', tmpCmdLineParameters.getLanguage);
801 assertFalse('testParseCmdLine_HelpManagerText', tmpCmdLineParameters.getHelpManagerFlag);
802 assertEqualsInt('testParseCmdLine_HelpManagerText', 0, tmpCmdLineParameters.getHelpManagerWindow);
803 assertEqualsInt('testParseCmdLine_HelpManagerText', 0, tmpCmdLineParameters.getOwnerWindow);
804 assertEqualsString('testParseCmdLine_HelpManagerText', '', tmpCmdLineParameters.getWindowTitle);
805 END;
806
807
808 PROCEDURE testParseCmdLine_OwnerNumber;
809 VAR
810 tmpParams : TStringList;
811 tmpCmdLineParameters : TCmdLineParameters;
812 BEGIN
813 tmpParams := TStringList.Create;
814 tmpParams.add('-oWner:123');
815 tmpCmdLineParameters := TCmdLineParameters.Create;
816 tmpCmdLineParameters.parseCmdLine(tmpParams);
817
818 assertFalse('testParseCmdLine_OwnerNumber', tmpCmdLineParameters.getShowUsageFlag);
819 assertFalse('testParseCmdLine_OwnerNumber', tmpCmdLineParameters.getSearchTextFlag);
820 assertEqualsString('testParseCmdLine_OwnerNumber', '', tmpCmdLineParameters.getSearchText);
821 assertFalse('testParseCmdLine_OwnerNumber', tmpCmdLineParameters.getGlobalSearchTextFlag);
822 assertEqualsString('testParseCmdLine_OwnerNumber', '', tmpCmdLineParameters.getGlobalSearchText);
823 assertEqualsString('testParseCmdLine_OwnerNumber', '', tmpCmdLineParameters.getLanguage);
824 assertFalse('testParseCmdLine_OwnerNumber', tmpCmdLineParameters.getHelpManagerFlag);
825 assertEqualsInt('testParseCmdLine_OwnerNumber', 0, tmpCmdLineParameters.getHelpManagerWindow);
826 assertEqualsInt('testParseCmdLine_OwnerNumber', 123, tmpCmdLineParameters.getOwnerWindow);
827 assertEqualsString('testParseCmdLine_OwnerNumber', '', tmpCmdLineParameters.getWindowTitle);
828 END;
829
830
831 PROCEDURE testParseCmdLine_OwnerTest;
832 VAR
833 tmpParams : TStringList;
834 tmpCmdLineParameters : TCmdLineParameters;
835 BEGIN
836 tmpParams := TStringList.Create;
837 tmpParams.add('-oWner:1zwei3');
838 tmpCmdLineParameters := TCmdLineParameters.Create;
839 tmpCmdLineParameters.parseCmdLine(tmpParams);
840
841 assertFalse('testParseCmdLine_OwnerTest', tmpCmdLineParameters.getShowUsageFlag);
842 assertFalse('testParseCmdLine_OwnerTest', tmpCmdLineParameters.getSearchTextFlag);
843 assertEqualsString('testParseCmdLine_OwnerTest', '', tmpCmdLineParameters.getSearchText);
844 assertFalse('testParseCmdLine_OwnerTest', tmpCmdLineParameters.getGlobalSearchTextFlag);
845 assertEqualsString('testParseCmdLine_OwnerTest', '', tmpCmdLineParameters.getGlobalSearchText);
846 assertEqualsString('testParseCmdLine_OwnerTest', '', tmpCmdLineParameters.getLanguage);
847 assertFalse('testParseCmdLine_OwnerTest', tmpCmdLineParameters.getHelpManagerFlag);
848 assertEqualsInt('testParseCmdLine_OwnerTest', 0, tmpCmdLineParameters.getHelpManagerWindow);
849 assertEqualsInt('testParseCmdLine_OwnerTest', 0, tmpCmdLineParameters.getOwnerWindow);
850 assertEqualsString('testParseCmdLine_OwnerTest', '', tmpCmdLineParameters.getWindowTitle);
851 END;
852
853
854 PROCEDURE testParseCmdLine_Title;
855 VAR
856 tmpParams : TStringList;
857 tmpCmdLineParameters : TCmdLineParameters;
858 BEGIN
859 tmpParams := TStringList.Create;
860 tmpParams.add('-tiTle:testTitle');
861 tmpCmdLineParameters := TCmdLineParameters.Create;
862 tmpCmdLineParameters.parseCmdLine(tmpParams);
863
864 assertFalse('testParseCmdLine_Title', tmpCmdLineParameters.getShowUsageFlag);
865 assertFalse('testParseCmdLine_Title', tmpCmdLineParameters.getSearchTextFlag);
866 assertEqualsString('testParseCmdLine_Title', '', tmpCmdLineParameters.getSearchText);
867 assertFalse('testParseCmdLine_Title', tmpCmdLineParameters.getGlobalSearchTextFlag);
868 assertEqualsString('testParseCmdLine_Title', '', tmpCmdLineParameters.getGlobalSearchText);
869 assertEqualsString('testParseCmdLine_Title', '', tmpCmdLineParameters.getLanguage);
870 assertFalse('testParseCmdLine_Title', tmpCmdLineParameters.getHelpManagerFlag);
871 assertEqualsInt('testParseCmdLine_Title', 0, tmpCmdLineParameters.getHelpManagerWindow);
872 assertEqualsInt('testParseCmdLine_Title', 0, tmpCmdLineParameters.getOwnerWindow);
873 assertEqualsString('testParseCmdLine_Title', 'testTitle', tmpCmdLineParameters.getWindowTitle);
874 END;
875
876
877 // can't test start profile
878
879 PROCEDURE testParseCmdLine_WindowPos;
880 VAR
881 tmpParams : TStringList;
882 tmpCmdLineParameters : TCmdLineParameters;
883 tmpWindowPosition : TWindowPosition;
884 BEGIN
885 tmpParams := TStringList.Create;
886 tmpParams.add('-pos:20,40,60,80');
887 tmpCmdLineParameters := TCmdLineParameters.Create;
888 tmpCmdLineParameters.parseCmdLine(tmpParams);
889
890 assertTrue('parseCmdLine [getWindowPositionFlag](40)', tmpCmdLineParameters.getWindowPositionFlag);
891 tmpWindowPosition := tmpCmdLineParameters.getWindowPosition;
892 assertEqualsInt('testParseCmdLine_WindowPos', 20, tmpWindowPosition.left);
893 assertEqualsInt('testParseCmdLine_WindowPos', 40, tmpWindowPosition.bottom);
894 assertEqualsInt('testParseCmdLine_WindowPos', 60, tmpWindowPosition.width);
895 assertEqualsInt('testParseCmdLine_WindowPos', 80, tmpWindowPosition.height);
896 END;
897
898
899 PROCEDURE testParseCmdLine_WindowPosPercentage;
900 VAR
901 tmpParams : TStringList;
902 tmpCmdLineParameters : TCmdLineParameters;
903 tmpWindowPosition : TWindowPosition;
904 BEGIN
905 tmpParams := TStringList.Create;
906 tmpParams.add('-pos:100p,100p,50p,50p');
907 tmpCmdLineParameters := TCmdLineParameters.Create;
908 tmpCmdLineParameters.parseCmdLine(tmpParams);
909
910 assertTrue('parseCmdLine [getWindowPositionFlag](41)', tmpCmdLineParameters.getWindowPositionFlag);
911 tmpWindowPosition := tmpCmdLineParameters.getWindowPosition;
912 assertEqualsInt('testParseCmdLine_WindowPosPercentage [left](41)', 1280, tmpWindowPosition.left);
913 assertEqualsInt('testParseCmdLine_WindowPosPercentage [bottom](41)', 1024, tmpWindowPosition.bottom);
914 assertEqualsInt('testParseCmdLine_WindowPosPercentage [width](41)', 640, tmpWindowPosition.width);
915 assertEqualsInt('testParseCmdLine_WindowPosPercentage [height](41)', 512, tmpWindowPosition.height);
916 END;
917
918
919 PROCEDURE testParseCmdLine_Topic;
920 VAR
921 tmpParams : TStringList;
922 tmpCmdLineParameters : TCmdLineParameters;
923 BEGIN
924 tmpParams := TStringList.Create;
925 tmpParams.add('ab c');
926 tmpParams.add('topi1');
927 tmpParams.add('topi2');
928 tmpCmdLineParameters := TCmdLineParameters.Create;
929 tmpCmdLineParameters.parseCmdLine(tmpParams);
930
931 assertEqualsString('testParseCmdLine_Topic', 'ab c', tmpCmdLineParameters.getFileNames);
932 assertEqualsString('testParseCmdLine_Topic', 'topi1 topi2', tmpCmdLineParameters.getTopics);
933 END;
934
935
936 FUNCTION getCmdLineParameterUnitTests : TList;
937 BEGIN
938 result := TList.Create;
939
940 result.add(@testSplitCmdLineParameter_Empty);
941 result.add(@testSplitCmdLineParameter_simpleOne);
942 result.add(@testSplitCmdLineParameter_simpleOneWithLeadingBlanks);
943 result.add(@testSplitCmdLineParameter_simpleThreeParts);
944 result.add(@testSplitCmdLineParameter_quoted);
945 result.add(@testSplitCmdLineParameter_quotedPart);
946 result.add(@testSplitCmdLineParameter_quotedPartIncludingQuoteAtStart);
947 result.add(@testSplitCmdLineParameter_quotedPartIncludingQuoteInside);
948 result.add(@testSplitCmdLineParameter_quotedPartIncludingQuoteAtEnd);
949 result.add(@testSplitCmdLineParameter_TwoQuotedParts);
950 result.add(@testSplitCmdLineParameter_TwoQuotesAtStartEnd);
951 result.add(@testSplitCmdLineParameter_Failure_TwoQuotesAtEnd);
952 result.add(@testSplitCmdLineParameter_TwoQuotedPartsMissingClosedQuote);
953 result.add(@testSplitCmdLineParameter_1Quote);
954 result.add(@testSplitCmdLineParameter_2Quote);
955 result.add(@testSplitCmdLineParameter_3Quote);
956 result.add(@testSplitCmdLineParameter_4Quote);
957 result.add(@testSplitCmdLineParameter_5Quote);
958 result.add(@testSplitCmdLineParameter_6Quote);
959
960 result.add(@testParseCmdLine_Empty);
961
962 result.add(@testParseCmdLine_QuestionMark);
963 result.add(@testParseCmdLine_lowerH);
964 result.add(@testParseCmdLine_upperH);
965 result.add(@testParseCmdLine_lowerHelp);
966 result.add(@testParseCmdLine_upperHELP);
967
968 result.add(@testParseCmdLine_lowerS);
969 result.add(@testParseCmdLine_upperS);
970 result.add(@testParseCmdLine_emptyS);
971 result.add(@testParseCmdLine_emptyColonS);
972 result.add(@testParseCmdLine_emptyColonS);
973 result.add(@testParseCmdLine_withoutColonS);
974 result.add(@testParseCmdLine_doubleColonS);
975
976 result.add(@testParseCmdLine_lowerG);
977 result.add(@testParseCmdLine_upperG);
978 result.add(@testParseCmdLine_emptyG);
979 result.add(@testParseCmdLine_emptyColonG);
980 result.add(@testParseCmdLine_emptyColonG);
981 result.add(@testParseCmdLine_withoutColonG);
982 result.add(@testParseCmdLine_doubleColonG);
983
984 result.add(@testParseCmdLine_Language);
985 result.add(@testParseCmdLine_HelpManagerNumber);
986 result.add(@testParseCmdLine_HelpManagerText);
987 result.add(@testParseCmdLine_OwnerNumber);
988 result.add(@testParseCmdLine_OwnerTest);
989 result.add(@testParseCmdLine_Title);
990 result.add(@testParseCmdLine_WindowPos);
991 result.add(@testParseCmdLine_WindowPosPercentage);
992 result.add(@testParseCmdLine_Topic);
993 END;
994
995END.
Note: See TracBrowser for help on using the repository browser.