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

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

more parser fixes and new unit tests

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