Ignore:
Timestamp:
Jan 2, 2007, 8:27:45 PM (19 years ago)
Author:
RBRi
Message:

% updated commandlineparser test
% updated test framework

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/NewView/unittests/cmdlineparameterunittests.pas

    r35 r41  
    1313Implementation
    1414
    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 
    32615  PROCEDURE testParseCmdLine_Empty;
    32716  VAR
    328     tmpParams : TStringList;
    329     tmpCmdLineParameters : TCmdLineParameters;
    330   BEGIN
    331     tmpParams := TStringList.Create;
    332     tmpCmdLineParameters := TCmdLineParameters.Create;
    333     tmpCmdLineParameters.parseCmdLine(tmpParams);
     17    tmpCmdLineString : String;
     18    tmpCmdLineParameters : TCmdLineParameters;
     19  BEGIN
     20    tmpCmdLineString := '';
     21    tmpCmdLineParameters := TCmdLineParameters.Create;
     22    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
    33423
    33524    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);
     25    assertFalse('testParseCmdLine_Empty', tmpCmdLineParameters.getSearchFlag);
     26    assertFalse('testParseCmdLine_Empty', tmpCmdLineParameters.getGlobalSearchFlag);
    34027    assertEqualsString('testParseCmdLine_Empty', '', tmpCmdLineParameters.getLanguage);
    34128    assertFalse('testParseCmdLine_Empty', tmpCmdLineParameters.getHelpManagerFlag);
     
    34330    assertEqualsInt('testParseCmdLine_Empty', 0, tmpCmdLineParameters.getOwnerWindow);
    34431    assertEqualsString('testParseCmdLine_Empty', '', tmpCmdLineParameters.getWindowTitle);
    345   END;
    346 
     32    assertEqualsString('testParseCmdLine_Empty', '', tmpCmdLineParameters.getFileNames);
     33    assertEqualsString('testParseCmdLine_Empty', '', tmpCmdLineParameters.getSearchText);
     34  END;
    34735
    34836  PROCEDURE testParseCmdLine_QuestionMark;
    34937  VAR
    350     tmpParams : TStringList;
    351     tmpCmdLineParameters : TCmdLineParameters;
    352   BEGIN
    353     tmpParams := TStringList.Create;
    354     tmpParams.add('-?');
    355     tmpCmdLineParameters := TCmdLineParameters.Create;
    356     tmpCmdLineParameters.parseCmdLine(tmpParams);
     38    tmpCmdLineString : String;
     39    tmpCmdLineParameters : TCmdLineParameters;
     40  BEGIN
     41    tmpCmdLineString := '-?';
     42    tmpCmdLineParameters := TCmdLineParameters.Create;
     43    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
    35744
    35845    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);
     46    assertFalse('testParseCmdLine_QuestionMark', tmpCmdLineParameters.getSearchFlag);
     47    assertFalse('testParseCmdLine_QuestionMark', tmpCmdLineParameters.getGlobalSearchFlag);
    36348    assertEqualsString('testParseCmdLine_QuestionMark', '', tmpCmdLineParameters.getLanguage);
    36449    assertFalse('testParseCmdLine_QuestionMark', tmpCmdLineParameters.getHelpManagerFlag);
     
    36651    assertEqualsInt('testParseCmdLine_QuestionMark', 0, tmpCmdLineParameters.getOwnerWindow);
    36752    assertEqualsString('testParseCmdLine_QuestionMark', '', tmpCmdLineParameters.getWindowTitle);
     53    assertEqualsString('testParseCmdLine_QuestionMark', '', tmpCmdLineParameters.getFileNames);
     54    assertEqualsString('testParseCmdLine_QuestionMark', '', tmpCmdLineParameters.getSearchText);
    36855  END;
    36956
     
    37158  PROCEDURE testParseCmdLine_lowerH;
    37259  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);
     60    tmpCmdLineString : String;
     61    tmpCmdLineParameters : TCmdLineParameters;
     62  BEGIN
     63    tmpCmdLineString := '-h';
     64    tmpCmdLineParameters := TCmdLineParameters.Create;
     65    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
    38066
    38167    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);
     68    assertFalse('testParseCmdLine_lowerH', tmpCmdLineParameters.getSearchFlag);
     69    assertFalse('testParseCmdLine_lowerH', tmpCmdLineParameters.getGlobalSearchFlag);
    38670    assertEqualsString('testParseCmdLine_lowerH', '', tmpCmdLineParameters.getLanguage);
    38771    assertFalse('testParseCmdLine_lowerH', tmpCmdLineParameters.getHelpManagerFlag);
     
    38973    assertEqualsInt('testParseCmdLine_lowerH', 0, tmpCmdLineParameters.getOwnerWindow);
    39074    assertEqualsString('testParseCmdLine_lowerH', '', tmpCmdLineParameters.getWindowTitle);
     75    assertEqualsString('testParseCmdLine_lowerH', '', tmpCmdLineParameters.getFileNames);
     76    assertEqualsString('testParseCmdLine_lowerH', '', tmpCmdLineParameters.getSearchText);
    39177  END;
    39278
     
    39480  PROCEDURE testParseCmdLine_upperH;
    39581  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);
     82    tmpCmdLineString : String;
     83    tmpCmdLineParameters : TCmdLineParameters;
     84  BEGIN
     85    tmpCmdLineString := '-H';
     86    tmpCmdLineParameters := TCmdLineParameters.Create;
     87    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
    40388
    40489    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);
     90    assertFalse('testParseCmdLine_upperH', tmpCmdLineParameters.getSearchFlag);
     91    assertFalse('testParseCmdLine_upperH', tmpCmdLineParameters.getGlobalSearchFlag);
    40992    assertEqualsString('testParseCmdLine_upperH', '', tmpCmdLineParameters.getLanguage);
    41093    assertFalse('testParseCmdLine_upperH', tmpCmdLineParameters.getHelpManagerFlag);
     
    41295    assertEqualsInt('testParseCmdLine_upperH', 0, tmpCmdLineParameters.getOwnerWindow);
    41396    assertEqualsString('testParseCmdLine_upperH', '', tmpCmdLineParameters.getWindowTitle);
     97    assertEqualsString('testParseCmdLine_upperH', '', tmpCmdLineParameters.getFileNames);
     98    assertEqualsString('testParseCmdLine_upperH', '', tmpCmdLineParameters.getSearchText);
    41499  END;
    415100
     
    417102  PROCEDURE testParseCmdLine_lowerHelp;
    418103  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);
     104    tmpCmdLineString : String;
     105    tmpCmdLineParameters : TCmdLineParameters;
     106  BEGIN
     107    tmpCmdLineString := '-help';
     108    tmpCmdLineParameters := TCmdLineParameters.Create;
     109    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
    426110
    427111    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);
     112    assertFalse('testParseCmdLine_lowerHelp', tmpCmdLineParameters.getSearchFlag);
     113    assertFalse('testParseCmdLine_lowerHelp', tmpCmdLineParameters.getGlobalSearchFlag);
    432114    assertEqualsString('testParseCmdLine_lowerHelp', '', tmpCmdLineParameters.getLanguage);
    433115    assertFalse('testParseCmdLine_lowerHelp', tmpCmdLineParameters.getHelpManagerFlag);
     
    435117    assertEqualsInt('testParseCmdLine_lowerHelp', 0, tmpCmdLineParameters.getOwnerWindow);
    436118    assertEqualsString('testParseCmdLine_lowerHelp', '', tmpCmdLineParameters.getWindowTitle);
     119    assertEqualsString('testParseCmdLine_lowerHelp', '', tmpCmdLineParameters.getFileNames);
     120    assertEqualsString('testParseCmdLine_lowerHelp', '', tmpCmdLineParameters.getSearchText);
    437121  END;
    438122
     
    440124  PROCEDURE testParseCmdLine_upperHELP;
    441125  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);
     126    tmpCmdLineString : String;
     127    tmpCmdLineParameters : TCmdLineParameters;
     128  BEGIN
     129    tmpCmdLineString := '-HELP';
     130    tmpCmdLineParameters := TCmdLineParameters.Create;
     131    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
    449132
    450133    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);
     134    assertFalse('testParseCmdLine_upperHELP', tmpCmdLineParameters.getSearchFlag);
     135    assertFalse('testParseCmdLine_upperHELP', tmpCmdLineParameters.getGlobalSearchFlag);
    455136    assertEqualsString('testParseCmdLine_upperHELP', '', tmpCmdLineParameters.getLanguage);
    456137    assertFalse('testParseCmdLine_upperHELP', tmpCmdLineParameters.getHelpManagerFlag);
     
    458139    assertEqualsInt('testParseCmdLine_upperHELP', 0, tmpCmdLineParameters.getOwnerWindow);
    459140    assertEqualsString('testParseCmdLine_upperHELP', '', tmpCmdLineParameters.getWindowTitle);
     141    assertEqualsString('testParseCmdLine_upperHELP', '', tmpCmdLineParameters.getFileNames);
     142    assertEqualsString('testParseCmdLine_upperHELP', '', tmpCmdLineParameters.getSearchText);
     143  END;
     144
     145
     146  PROCEDURE testParseCmdLine_upperHE;
     147  VAR
     148    tmpCmdLineString : String;
     149    tmpCmdLineParameters : TCmdLineParameters;
     150  BEGIN
     151    tmpCmdLineString := '-He';
     152    tmpCmdLineParameters := TCmdLineParameters.Create;
     153    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     154
     155    assertTrue('testParseCmdLine_upperHE', tmpCmdLineParameters.getShowUsageFlag);
     156    assertFalse('testParseCmdLine_upperHE', tmpCmdLineParameters.getSearchFlag);
     157    assertFalse('testParseCmdLine_upperHELP', tmpCmdLineParameters.getGlobalSearchFlag);
     158    assertEqualsString('testParseCmdLine_upperHE', '', tmpCmdLineParameters.getLanguage);
     159    assertFalse('testParseCmdLine_upperHE', tmpCmdLineParameters.getHelpManagerFlag);
     160    assertEqualsInt('testParseCmdLine_upperHE', 0, tmpCmdLineParameters.getHelpManagerWindow);
     161    assertEqualsInt('testParseCmdLine_upperHE', 0, tmpCmdLineParameters.getOwnerWindow);
     162    assertEqualsString('testParseCmdLine_upperHE', '', tmpCmdLineParameters.getWindowTitle);
     163    assertEqualsString('testParseCmdLine_upperHE', '', tmpCmdLineParameters.getFileNames);
     164    assertEqualsString('testParseCmdLine_upperHE', '', tmpCmdLineParameters.getSearchText);
     165  END;
     166
     167
     168  PROCEDURE testParseCmdLine_h_between;
     169  VAR
     170    tmpCmdLineString : String;
     171    tmpCmdLineParameters : TCmdLineParameters;
     172  BEGIN
     173    tmpCmdLineString := '-s-h-title';
     174    tmpCmdLineParameters := TCmdLineParameters.Create;
     175    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     176
     177    assertTrue('testParseCmdLine_h_between', tmpCmdLineParameters.getShowUsageFlag);
     178    assertTrue('testParseCmdLine_h_between', tmpCmdLineParameters.getSearchFlag);
     179    assertFalse('testParseCmdLine_h_between', tmpCmdLineParameters.getGlobalSearchFlag);
     180    assertEqualsString('testParseCmdLine_h_between', '', tmpCmdLineParameters.getLanguage);
     181    assertFalse('testParseCmdLine_h_between', tmpCmdLineParameters.getHelpManagerFlag);
     182    assertEqualsInt('testParseCmdLine_h_between', 0, tmpCmdLineParameters.getHelpManagerWindow);
     183    assertEqualsInt('testParseCmdLine_h_between', 0, tmpCmdLineParameters.getOwnerWindow);
     184    assertEqualsString('testParseCmdLine_h_between', '', tmpCmdLineParameters.getWindowTitle);
     185    assertEqualsString('testParseCmdLine_h_between', '', tmpCmdLineParameters.getFileNames);
     186    assertEqualsString('testParseCmdLine_h_between', '', tmpCmdLineParameters.getSearchText);
     187  END;
     188
     189
     190  PROCEDURE testParseCmdLine_h_between_withSpace;
     191  VAR
     192    tmpCmdLineString : String;
     193    tmpCmdLineParameters : TCmdLineParameters;
     194  BEGIN
     195    tmpCmdLineString := '-s -h -title';
     196    tmpCmdLineParameters := TCmdLineParameters.Create;
     197    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     198
     199    assertTrue('testParseCmdLine_h_between_withSpace', tmpCmdLineParameters.getShowUsageFlag);
     200    assertTrue('testParseCmdLine_h_between_withSpace', tmpCmdLineParameters.getSearchFlag);
     201    assertFalse('testParseCmdLine_h_between_withSpace', tmpCmdLineParameters.getGlobalSearchFlag);
     202    assertEqualsString('testParseCmdLine_h_between_withSpace', '', tmpCmdLineParameters.getLanguage);
     203    assertFalse('testParseCmdLine_h_between_withSpace', tmpCmdLineParameters.getHelpManagerFlag);
     204    assertEqualsInt('testParseCmdLine_h_between_withSpace', 0, tmpCmdLineParameters.getHelpManagerWindow);
     205    assertEqualsInt('testParseCmdLine_h_between_withSpace', 0, tmpCmdLineParameters.getOwnerWindow);
     206    assertEqualsString('testParseCmdLine_h_between_withSpace', '', tmpCmdLineParameters.getWindowTitle);
     207    assertEqualsString('testParseCmdLine_h_between_withSpace', '', tmpCmdLineParameters.getFileNames);
     208    assertEqualsString('testParseCmdLine_h_between_withSpace', '', tmpCmdLineParameters.getSearchText);
    460209  END;
    461210
     
    463212  PROCEDURE testParseCmdLine_lowerS;
    464213  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);
     214    tmpCmdLineString : String;
     215    tmpCmdLineParameters : TCmdLineParameters;
     216  BEGIN
     217    tmpCmdLineString := '-s file search';
     218    tmpCmdLineParameters := TCmdLineParameters.Create;
     219    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
    472220
    473221    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);
     222    assertTrue('testParseCmdLine_lowerS', tmpCmdLineParameters.getSearchFlag);
     223    assertFalse('testParseCmdLine_lowerS', tmpCmdLineParameters.getGlobalSearchFlag);
    478224    assertEqualsString('testParseCmdLine_lowerS', '', tmpCmdLineParameters.getLanguage);
    479225    assertFalse('testParseCmdLine_lowerS', tmpCmdLineParameters.getHelpManagerFlag);
     
    481227    assertEqualsInt('testParseCmdLine_lowerS', 0, tmpCmdLineParameters.getOwnerWindow);
    482228    assertEqualsString('testParseCmdLine_lowerS', '', tmpCmdLineParameters.getWindowTitle);
     229    assertEqualsString('testParseCmdLine_lowerS', 'file', tmpCmdLineParameters.getFileNames);
     230    assertEqualsString('testParseCmdLine_lowerS', 'search', tmpCmdLineParameters.getSearchText);
    483231  END;
    484232
     
    486234  PROCEDURE testParseCmdLine_upperS;
    487235  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);
     236    tmpCmdLineString : String;
     237    tmpCmdLineParameters : TCmdLineParameters;
     238  BEGIN
     239    tmpCmdLineString := '-S file seArch';
     240    tmpCmdLineParameters := TCmdLineParameters.Create;
     241    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
    495242
    496243    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);
     244    assertTrue('testParseCmdLine_upperS', tmpCmdLineParameters.getSearchFlag);
     245    assertFalse('testParseCmdLine_upperS', tmpCmdLineParameters.getGlobalSearchFlag);
    501246    assertEqualsString('testParseCmdLine_upperS', '', tmpCmdLineParameters.getLanguage);
    502247    assertFalse('testParseCmdLine_upperS', tmpCmdLineParameters.getHelpManagerFlag);
     
    504249    assertEqualsInt('testParseCmdLine_upperS', 0, tmpCmdLineParameters.getOwnerWindow);
    505250    assertEqualsString('testParseCmdLine_upperS', '', tmpCmdLineParameters.getWindowTitle);
     251    assertEqualsString('testParseCmdLine_upperS', 'file', tmpCmdLineParameters.getFileNames);
     252    assertEqualsString('testParseCmdLine_upperS', 'seArch', tmpCmdLineParameters.getSearchText);
     253  END;
     254
     255
     256
     257  PROCEDURE testParseCmdLine_upperS_withBlank;
     258  VAR
     259    tmpCmdLineString : String;
     260    tmpCmdLineParameters : TCmdLineParameters;
     261  BEGIN
     262    tmpCmdLineString := '-S FilE seArch';
     263    tmpCmdLineParameters := TCmdLineParameters.Create;
     264    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     265
     266    assertFalse('testParseCmdLine_upperS_withBlank', tmpCmdLineParameters.getShowUsageFlag);
     267    assertTrue('testParseCmdLine_upperS_withBlank', tmpCmdLineParameters.getSearchFlag);
     268    assertFalse('testParseCmdLine_upperS_withBlank', tmpCmdLineParameters.getGlobalSearchFlag);
     269    assertEqualsString('testParseCmdLine_upperS_withBlank', '', tmpCmdLineParameters.getLanguage);
     270    assertFalse('testParseCmdLine_upperS_withBlank', tmpCmdLineParameters.getHelpManagerFlag);
     271    assertEqualsInt('testParseCmdLine_upperS_withBlank', 0, tmpCmdLineParameters.getHelpManagerWindow);
     272    assertEqualsInt('testParseCmdLine_upperS_withBlank', 0, tmpCmdLineParameters.getOwnerWindow);
     273    assertEqualsString('testParseCmdLine_upperS_withBlank', '', tmpCmdLineParameters.getWindowTitle);
     274    assertEqualsString('testParseCmdLine_upperS_withBlank', 'FilE', tmpCmdLineParameters.getFileNames);
     275    assertEqualsString('testParseCmdLine_upperS_withBlank', 'seArch', tmpCmdLineParameters.getSearchText);
    506276  END;
    507277
     
    509279  PROCEDURE testParseCmdLine_emptyS;
    510280  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);
     281    tmpCmdLineString : String;
     282    tmpCmdLineParameters : TCmdLineParameters;
     283  BEGIN
     284    tmpCmdLineString := '-S';
     285    tmpCmdLineParameters := TCmdLineParameters.Create;
     286    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
    518287
    519288    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);
     289    assertTrue('testParseCmdLine_emptyS', tmpCmdLineParameters.getSearchFlag);
     290    assertFalse('testParseCmdLine_emptyS', tmpCmdLineParameters.getGlobalSearchFlag);
    524291    assertEqualsString('testParseCmdLine_emptyS', '', tmpCmdLineParameters.getLanguage);
    525292    assertFalse('testParseCmdLine_emptyS', tmpCmdLineParameters.getHelpManagerFlag);
     
    527294    assertEqualsInt('testParseCmdLine_emptyS', 0, tmpCmdLineParameters.getOwnerWindow);
    528295    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);
     296    assertEqualsString('testParseCmdLine_emptyS', '', tmpCmdLineParameters.getFileNames);
     297    assertEqualsString('testParseCmdLine_emptyS', '', tmpCmdLineParameters.getSearchText);
     298  END;
     299
     300
     301  PROCEDURE testParseCmdLine_s_between;
     302  VAR
     303    tmpCmdLineString : String;
     304    tmpCmdLineParameters : TCmdLineParameters;
     305  BEGIN
     306    tmpCmdLineString := '-h-s-h';
     307    tmpCmdLineParameters := TCmdLineParameters.Create;
     308    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     309
     310    assertTrue('testParseCmdLine_s_between', tmpCmdLineParameters.getShowUsageFlag);
     311    assertTrue('testParseCmdLine_s_between', tmpCmdLineParameters.getSearchFlag);
     312    assertFalse('testParseCmdLine_s_between', tmpCmdLineParameters.getGlobalSearchFlag);
     313    assertEqualsString('testParseCmdLine_emptyS', '', tmpCmdLineParameters.getLanguage);
     314    assertFalse('testParseCmdLine_s_between', tmpCmdLineParameters.getHelpManagerFlag);
     315    assertEqualsInt('testParseCmdLine_s_between', 0, tmpCmdLineParameters.getHelpManagerWindow);
     316    assertEqualsInt('testParseCmdLine_s_between', 0, tmpCmdLineParameters.getOwnerWindow);
     317    assertEqualsString('testParseCmdLine_s_between', '', tmpCmdLineParameters.getWindowTitle);
     318    assertEqualsString('testParseCmdLine_s_between', '', tmpCmdLineParameters.getFileNames);
     319    assertEqualsString('testParseCmdLine_s_between', '', tmpCmdLineParameters.getSearchText);
     320  END;
     321
     322
     323  PROCEDURE testParseCmdLine_s_between_withSpace;
     324  VAR
     325    tmpCmdLineString : String;
     326    tmpCmdLineParameters : TCmdLineParameters;
     327  BEGIN
     328    tmpCmdLineString := '-h -s -h';
     329    tmpCmdLineParameters := TCmdLineParameters.Create;
     330    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     331
     332    assertTrue('testParseCmdLine_s_between_withSpace', tmpCmdLineParameters.getShowUsageFlag);
     333    assertTrue('testParseCmdLine_s_between_withSpace', tmpCmdLineParameters.getSearchFlag);
     334    assertFalse('testParseCmdLine_s_between_withSpace', tmpCmdLineParameters.getGlobalSearchFlag);
     335    assertEqualsString('testParseCmdLine_s_between_withSpace', '', tmpCmdLineParameters.getLanguage);
     336    assertFalse('testParseCmdLine_s_between_withSpace', tmpCmdLineParameters.getHelpManagerFlag);
     337    assertEqualsInt('testParseCmdLine_s_between_withSpace', 0, tmpCmdLineParameters.getHelpManagerWindow);
     338    assertEqualsInt('testParseCmdLine_s_between_withSpace', 0, tmpCmdLineParameters.getOwnerWindow);
     339    assertEqualsString('testParseCmdLine_s_between_withSpace', '', tmpCmdLineParameters.getWindowTitle);
     340    assertEqualsString('testParseCmdLine_s_between_withSpace', '', tmpCmdLineParameters.getFileNames);
     341    assertEqualsString('testParseCmdLine_s_between_withSpace', '', tmpCmdLineParameters.getSearchText);
     342  END;
     343
     344
     345  PROCEDURE testParseCmdLine_help_and_s;
     346  VAR
     347    tmpCmdLineString : String;
     348    tmpCmdLineParameters : TCmdLineParameters;
     349  BEGIN
     350    tmpCmdLineString := '-h -s file ';
     351    tmpCmdLineParameters := TCmdLineParameters.Create;
     352    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     353
     354    assertTrue('testParseCmdLine_help_and_s', tmpCmdLineParameters.getShowUsageFlag);
     355    assertTrue('testParseCmdLine_help_and_s', tmpCmdLineParameters.getSearchFlag);
     356    assertFalse('testParseCmdLine_help_and_s', tmpCmdLineParameters.getGlobalSearchFlag);
     357    assertEqualsString('testParseCmdLine_help_and_s', '', tmpCmdLineParameters.getLanguage);
     358    assertFalse('testParseCmdLine_help_and_s', tmpCmdLineParameters.getHelpManagerFlag);
     359    assertEqualsInt('testParseCmdLine_help_and_s', 0, tmpCmdLineParameters.getHelpManagerWindow);
     360    assertEqualsInt('testParseCmdLine_help_and_s', 0, tmpCmdLineParameters.getOwnerWindow);
     361    assertEqualsString('testParseCmdLine_help_and_s', '', tmpCmdLineParameters.getWindowTitle);
     362    assertEqualsString('testParseCmdLine_help_and_s', 'file', tmpCmdLineParameters.getFileNames);
     363    assertEqualsString('testParseCmdLine_help_and_s', '', tmpCmdLineParameters.getSearchText);
     364  END;
     365
     366
     367  PROCEDURE testParseCmdLine_s_and_help;
     368  VAR
     369    tmpCmdLineString : String;
     370    tmpCmdLineParameters : TCmdLineParameters;
     371  BEGIN
     372    tmpCmdLineString := '-s -h file    ';
     373    tmpCmdLineParameters := TCmdLineParameters.Create;
     374    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     375
     376    assertTrue('testParseCmdLine_s_and_help', tmpCmdLineParameters.getShowUsageFlag);
     377    assertTrue('testParseCmdLine_s_and_help', tmpCmdLineParameters.getSearchFlag);
     378    assertFalse('testParseCmdLine_s_and_help', tmpCmdLineParameters.getGlobalSearchFlag);
     379    assertEqualsString('testParseCmdLine_s_and_help', '', tmpCmdLineParameters.getLanguage);
     380    assertFalse('testParseCmdLine_s_and_help', tmpCmdLineParameters.getHelpManagerFlag);
     381    assertEqualsInt('testParseCmdLine_s_and_help', 0, tmpCmdLineParameters.getHelpManagerWindow);
     382    assertEqualsInt('testParseCmdLine_s_and_help', 0, tmpCmdLineParameters.getOwnerWindow);
     383    assertEqualsString('testParseCmdLine_s_and_help', '', tmpCmdLineParameters.getWindowTitle);
     384    assertEqualsString('testParseCmdLine_s_and_help', 'file', tmpCmdLineParameters.getFileNames);
     385    assertEqualsString('testParseCmdLine_s_and_help', '', tmpCmdLineParameters.getSearchText);
     386  END;
     387
     388
     389  PROCEDURE testParseCmdLine_help_and_s_without_blank;
     390  VAR
     391    tmpCmdLineString : String;
     392    tmpCmdLineParameters : TCmdLineParameters;
     393  BEGIN
     394    tmpCmdLineString := '-s-h file';
     395    tmpCmdLineParameters := TCmdLineParameters.Create;
     396    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     397
     398    assertTrue('testParseCmdLine_help_and_s_without_blank', tmpCmdLineParameters.getShowUsageFlag);
     399    assertTrue('testParseCmdLine_help_and_s_without_blank', tmpCmdLineParameters.getSearchFlag);
     400    assertFalse('testParseCmdLine_help_and_s_without_blank', tmpCmdLineParameters.getGlobalSearchFlag);
     401    assertEqualsString('testParseCmdLine_help_and_s_without_blank', '', tmpCmdLineParameters.getLanguage);
     402    assertFalse('testParseCmdLine_help_and_s_without_blank', tmpCmdLineParameters.getHelpManagerFlag);
     403    assertEqualsInt('testParseCmdLine_help_and_s_without_blank', 0, tmpCmdLineParameters.getHelpManagerWindow);
     404    assertEqualsInt('testParseCmdLine_help_and_s_without_blank', 0, tmpCmdLineParameters.getOwnerWindow);
     405    assertEqualsString('testParseCmdLine_help_and_s_without_blank', '', tmpCmdLineParameters.getWindowTitle);
     406    assertEqualsString('testParseCmdLine_help_and_s_without_blank', 'file', tmpCmdLineParameters.getFileNames);
     407    assertEqualsString('testParseCmdLine_help_and_s_without_blank', '', tmpCmdLineParameters.getSearchText);
     408  END;
     409
     410
     411
     412 PROCEDURE testParseCmdLine_lowerG;
     413  VAR
     414    tmpCmdLineString : String;
     415    tmpCmdLineParameters : TCmdLineParameters;
     416  BEGIN
     417    tmpCmdLineString := '-g file search';
     418    tmpCmdLineParameters := TCmdLineParameters.Create;
     419    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
    610420
    611421    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);
     422    assertFalse('testParseCmdLine_lowerG', tmpCmdLineParameters.getSearchFlag);
     423    assertTrue('testParseCmdLine_lowerG', tmpCmdLineParameters.getGlobalSearchFlag);
    616424    assertEqualsString('testParseCmdLine_lowerG', '', tmpCmdLineParameters.getLanguage);
    617425    assertFalse('testParseCmdLine_lowerG', tmpCmdLineParameters.getHelpManagerFlag);
     
    619427    assertEqualsInt('testParseCmdLine_lowerG', 0, tmpCmdLineParameters.getOwnerWindow);
    620428    assertEqualsString('testParseCmdLine_lowerG', '', tmpCmdLineParameters.getWindowTitle);
     429    assertEqualsString('testParseCmdLine_lowerG', 'file', tmpCmdLineParameters.getFileNames);
     430    assertEqualsString('testParseCmdLine_lowerG', 'search', tmpCmdLineParameters.getSearchText);
    621431  END;
    622432
     
    624434  PROCEDURE testParseCmdLine_upperG;
    625435  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);
     436    tmpCmdLineString : String;
     437    tmpCmdLineParameters : TCmdLineParameters;
     438  BEGIN
     439    tmpCmdLineString := '-G fiLe seArch';
     440    tmpCmdLineParameters := TCmdLineParameters.Create;
     441    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
    633442
    634443    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);
     444    assertFalse('testParseCmdLine_upperG', tmpCmdLineParameters.getSearchFlag);
     445    assertTrue('testParseCmdLine_upperG', tmpCmdLineParameters.getGlobalSearchFlag);
    639446    assertEqualsString('testParseCmdLine_upperG', '', tmpCmdLineParameters.getLanguage);
    640447    assertFalse('testParseCmdLine_upperG', tmpCmdLineParameters.getHelpManagerFlag);
     
    642449    assertEqualsInt('testParseCmdLine_upperG', 0, tmpCmdLineParameters.getOwnerWindow);
    643450    assertEqualsString('testParseCmdLine_upperG', '', tmpCmdLineParameters.getWindowTitle);
     451    assertEqualsString('testParseCmdLine_upperG', 'fiLe', tmpCmdLineParameters.getFileNames);
     452    assertEqualsString('testParseCmdLine_upperG', 'seArch', tmpCmdLineParameters.getSearchText);
    644453  END;
    645454
     
    647456  PROCEDURE testParseCmdLine_emptyG;
    648457  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);
     458    tmpCmdLineString : String;
     459    tmpCmdLineParameters : TCmdLineParameters;
     460  BEGIN
     461    tmpCmdLineString := '-G';
     462    tmpCmdLineParameters := TCmdLineParameters.Create;
     463    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
    656464
    657465    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);
     466    assertFalse('testParseCmdLine_emptyG', tmpCmdLineParameters.getSearchFlag);
     467    assertTrue('testParseCmdLine_emptyG', tmpCmdLineParameters.getGlobalSearchFlag);
    662468    assertEqualsString('testParseCmdLine_emptyG', '', tmpCmdLineParameters.getLanguage);
    663469    assertFalse('testParseCmdLine_emptyG', tmpCmdLineParameters.getHelpManagerFlag);
     
    665471    assertEqualsInt('testParseCmdLine_emptyG', 0, tmpCmdLineParameters.getOwnerWindow);
    666472    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);
     473    assertEqualsString('testParseCmdLine_emptyG', '', tmpCmdLineParameters.getFileNames);
     474    assertEqualsString('testParseCmdLine_emptyG', '', tmpCmdLineParameters.getSearchText);
     475  END;
     476
     477
     478  PROCEDURE testParseCmdLine_g_between;
     479  VAR
     480    tmpCmdLineString : String;
     481    tmpCmdLineParameters : TCmdLineParameters;
     482  BEGIN
     483    tmpCmdLineString := '-h-G-s';
     484    tmpCmdLineParameters := TCmdLineParameters.Create;
     485    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     486
     487    assertTrue('testParseCmdLine_g_between', tmpCmdLineParameters.getShowUsageFlag);
     488    assertTrue('testParseCmdLine_g_between', tmpCmdLineParameters.getSearchFlag);
     489    assertTrue('testParseCmdLine_g_between', tmpCmdLineParameters.getGlobalSearchFlag);
     490    assertEqualsString('testParseCmdLine_g_between', '', tmpCmdLineParameters.getLanguage);
     491    assertFalse('testParseCmdLine_g_between', tmpCmdLineParameters.getHelpManagerFlag);
     492    assertEqualsInt('testParseCmdLine_g_between', 0, tmpCmdLineParameters.getHelpManagerWindow);
     493    assertEqualsInt('testParseCmdLine_g_between', 0, tmpCmdLineParameters.getOwnerWindow);
     494    assertEqualsString('testParseCmdLine_g_between', '', tmpCmdLineParameters.getWindowTitle);
     495    assertEqualsString('testParseCmdLine_g_between', '', tmpCmdLineParameters.getFileNames);
     496    assertEqualsString('testParseCmdLine_g_between', '', tmpCmdLineParameters.getSearchText);
     497  END;
     498
     499
     500  PROCEDURE testParseCmdLine_g_between_withSpace;
     501  VAR
     502    tmpCmdLineString : String;
     503    tmpCmdLineParameters : TCmdLineParameters;
     504  BEGIN
     505    tmpCmdLineString := '-h -G -s';
     506    tmpCmdLineParameters := TCmdLineParameters.Create;
     507    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     508
     509    assertTrue('testParseCmdLine_g_between_withSpace', tmpCmdLineParameters.getShowUsageFlag);
     510    assertTrue('testParseCmdLine_g_between_withSpace', tmpCmdLineParameters.getSearchFlag);
     511    assertTrue('testParseCmdLine_g_between_withSpace', tmpCmdLineParameters.getGlobalSearchFlag);
     512    assertEqualsString('testParseCmdLine_g_between_withSpace', '', tmpCmdLineParameters.getLanguage);
     513    assertFalse('testParseCmdLine_g_between_withSpace', tmpCmdLineParameters.getHelpManagerFlag);
     514    assertEqualsInt('testParseCmdLine_g_between_withSpace', 0, tmpCmdLineParameters.getHelpManagerWindow);
     515    assertEqualsInt('testParseCmdLine_g_between_withSpace', 0, tmpCmdLineParameters.getOwnerWindow);
     516    assertEqualsString('testParseCmdLine_g_between_withSpace', '', tmpCmdLineParameters.getWindowTitle);
     517    assertEqualsString('testParseCmdLine_g_between_withSpace', '', tmpCmdLineParameters.getFileNames);
     518    assertEqualsString('testParseCmdLine_g_between_withSpace', '', tmpCmdLineParameters.getSearchText);
    736519  END;
    737520
     
    739522  PROCEDURE testParseCmdLine_Language;
    740523  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);
     524    tmpCmdLineString : String;
     525    tmpCmdLineParameters : TCmdLineParameters;
     526  BEGIN
     527    tmpCmdLineString := '-lang:DE';
     528    tmpCmdLineParameters := TCmdLineParameters.Create;
     529    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
    748530
    749531    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);
     532    assertFalse('testParseCmdLine_Language', tmpCmdLineParameters.getSearchFlag);
     533    assertFalse('testParseCmdLine_Language', tmpCmdLineParameters.getGlobalSearchFlag);
    754534    assertEqualsString('testParseCmdLine_Language', 'DE', tmpCmdLineParameters.getLanguage);
    755535    assertFalse('testParseCmdLine_Language', tmpCmdLineParameters.getHelpManagerFlag);
     
    757537    assertEqualsInt('testParseCmdLine_Language', 0, tmpCmdLineParameters.getOwnerWindow);
    758538    assertEqualsString('testParseCmdLine_Language', '', tmpCmdLineParameters.getWindowTitle);
     539    assertEqualsString('testParseCmdLine_Language', '', tmpCmdLineParameters.getFileNames);
     540    assertEqualsString('testParseCmdLine_Language', '', tmpCmdLineParameters.getSearchText);
     541  END;
     542
     543
     544  PROCEDURE testParseCmdLine_Language_Empty;
     545  VAR
     546    tmpCmdLineString : String;
     547    tmpCmdLineParameters : TCmdLineParameters;
     548  BEGIN
     549    tmpCmdLineString := '-lang';
     550    tmpCmdLineParameters := TCmdLineParameters.Create;
     551    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     552
     553    assertFalse('testParseCmdLine_Language_Empty', tmpCmdLineParameters.getShowUsageFlag);
     554    assertFalse('testParseCmdLine_Language_Empty', tmpCmdLineParameters.getSearchFlag);
     555    assertFalse('testParseCmdLine_Language_Empty', tmpCmdLineParameters.getGlobalSearchFlag);
     556    assertEqualsString('testParseCmdLine_Language_Empty', '', tmpCmdLineParameters.getLanguage);
     557    assertFalse('testParseCmdLine_Language_Empty', tmpCmdLineParameters.getHelpManagerFlag);
     558    assertEqualsInt('testParseCmdLine_Language_Empty', 0, tmpCmdLineParameters.getHelpManagerWindow);
     559    assertEqualsInt('testParseCmdLine_Language_Empty', 0, tmpCmdLineParameters.getOwnerWindow);
     560    assertEqualsString('testParseCmdLine_Language_Empty', '', tmpCmdLineParameters.getWindowTitle);
     561    assertEqualsString('testParseCmdLine_Language_Empty', '', tmpCmdLineParameters.getFileNames);
     562    assertEqualsString('testParseCmdLine_Language_Empty', '', tmpCmdLineParameters.getSearchText);
     563  END;
     564
     565
     566  PROCEDURE testParseCmdLine_Language_Empty_WithColon;
     567  VAR
     568    tmpCmdLineString : String;
     569    tmpCmdLineParameters : TCmdLineParameters;
     570  BEGIN
     571    tmpCmdLineString := '-lang:';
     572    tmpCmdLineParameters := TCmdLineParameters.Create;
     573    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     574
     575    assertFalse('testParseCmdLine_Language_Empty_WithColon', tmpCmdLineParameters.getShowUsageFlag);
     576    assertFalse('testParseCmdLine_Language_Empty_WithColon', tmpCmdLineParameters.getSearchFlag);
     577    assertFalse('testParseCmdLine_Language_Empty_WithColon', tmpCmdLineParameters.getGlobalSearchFlag);
     578    assertEqualsString('testParseCmdLine_Language_Empty_WithColon', '', tmpCmdLineParameters.getLanguage);
     579    assertFalse('testParseCmdLine_Language_Empty_WithColon', tmpCmdLineParameters.getHelpManagerFlag);
     580    assertEqualsInt('testParseCmdLine_Language_Empty_WithColon', 0, tmpCmdLineParameters.getHelpManagerWindow);
     581    assertEqualsInt('testParseCmdLine_Language_Empty_WithColon', 0, tmpCmdLineParameters.getOwnerWindow);
     582    assertEqualsString('testParseCmdLine_Language_Empty_WithColon', '', tmpCmdLineParameters.getWindowTitle);
     583    assertEqualsString('testParseCmdLine_Language_Empty_WithColon', '', tmpCmdLineParameters.getFileNames);
     584    assertEqualsString('testParseCmdLine_Language_Empty_WithColon', '', tmpCmdLineParameters.getSearchText);
     585  END;
     586
     587
     588  PROCEDURE testParseCmdLine_Language_WithFile;
     589  VAR
     590    tmpCmdLineString : String;
     591    tmpCmdLineParameters : TCmdLineParameters;
     592  BEGIN
     593    tmpCmdLineString := '-lang:DE filE';
     594    tmpCmdLineParameters := TCmdLineParameters.Create;
     595    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     596
     597    assertFalse('testParseCmdLine_Language_WithFile', tmpCmdLineParameters.getShowUsageFlag);
     598    assertFalse('testParseCmdLine_Language_WithFile', tmpCmdLineParameters.getSearchFlag);
     599    assertFalse('testParseCmdLine_Language_WithFile', tmpCmdLineParameters.getGlobalSearchFlag);
     600    assertEqualsString('testParseCmdLine_Language_WithFile', 'DE', tmpCmdLineParameters.getLanguage);
     601    assertFalse('testParseCmdLine_Language_WithFile', tmpCmdLineParameters.getHelpManagerFlag);
     602    assertEqualsInt('testParseCmdLine_Language_WithFile', 0, tmpCmdLineParameters.getHelpManagerWindow);
     603    assertEqualsInt('testParseCmdLine_Language_WithFile', 0, tmpCmdLineParameters.getOwnerWindow);
     604    assertEqualsString('testParseCmdLine_Language_WithFile', '', tmpCmdLineParameters.getWindowTitle);
     605    assertEqualsString('testParseCmdLine_Language_WithFile', 'filE', tmpCmdLineParameters.getFileNames);
     606    assertEqualsString('testParseCmdLine_Language_WithFile', '', tmpCmdLineParameters.getSearchText);
     607  END;
     608
     609
     610  PROCEDURE testParseCmdLine_Language_between;
     611  VAR
     612    tmpCmdLineString : String;
     613    tmpCmdLineParameters : TCmdLineParameters;
     614  BEGIN
     615    tmpCmdLineString := '-s-lang:DE-h filE';
     616    tmpCmdLineParameters := TCmdLineParameters.Create;
     617    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     618
     619    assertTrue('testParseCmdLine_Language_between', tmpCmdLineParameters.getShowUsageFlag);
     620    assertTrue('testParseCmdLine_Language_between', tmpCmdLineParameters.getSearchFlag);
     621    assertFalse('testParseCmdLine_Language_between', tmpCmdLineParameters.getGlobalSearchFlag);
     622    assertEqualsString('testParseCmdLine_Language_between', 'DE', tmpCmdLineParameters.getLanguage);
     623    assertFalse('testParseCmdLine_Language_between', tmpCmdLineParameters.getHelpManagerFlag);
     624    assertEqualsInt('testParseCmdLine_Language_between', 0, tmpCmdLineParameters.getHelpManagerWindow);
     625    assertEqualsInt('testParseCmdLine_Language_between', 0, tmpCmdLineParameters.getOwnerWindow);
     626    assertEqualsString('testParseCmdLine_Language_between', '', tmpCmdLineParameters.getWindowTitle);
     627    assertEqualsString('testParseCmdLine_Language_between', 'filE', tmpCmdLineParameters.getFileNames);
     628    assertEqualsString('testParseCmdLine_Language_between', '', tmpCmdLineParameters.getSearchText);
     629  END;
     630
     631
     632  PROCEDURE testParseCmdLine_Language_between_withSpace;
     633  VAR
     634    tmpCmdLineString : String;
     635    tmpCmdLineParameters : TCmdLineParameters;
     636  BEGIN
     637    tmpCmdLineString := '-s-lang:DE-h filE';
     638    tmpCmdLineParameters := TCmdLineParameters.Create;
     639    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     640
     641    assertTrue('testParseCmdLine_Language_between_withSpace', tmpCmdLineParameters.getShowUsageFlag);
     642    assertTrue('testParseCmdLine_Language_between_withSpace', tmpCmdLineParameters.getSearchFlag);
     643    assertFalse('testParseCmdLine_Language_between_withSpace', tmpCmdLineParameters.getGlobalSearchFlag);
     644    assertEqualsString('testParseCmdLine_Language_between_withSpace', 'DE', tmpCmdLineParameters.getLanguage);
     645    assertFalse('testParseCmdLine_Language_between_withSpace', tmpCmdLineParameters.getHelpManagerFlag);
     646    assertEqualsInt('testParseCmdLine_Language_between_withSpace', 0, tmpCmdLineParameters.getHelpManagerWindow);
     647    assertEqualsInt('testParseCmdLine_Language_between_withSpace', 0, tmpCmdLineParameters.getOwnerWindow);
     648    assertEqualsString('testParseCmdLine_Language_between_withSpace', '', tmpCmdLineParameters.getWindowTitle);
     649    assertEqualsString('testParseCmdLine_Language_between_withSpace', 'filE', tmpCmdLineParameters.getFileNames);
     650    assertEqualsString('testParseCmdLine_Language_between_withSpace', '', tmpCmdLineParameters.getSearchText);
    759651  END;
    760652
     
    762654  PROCEDURE testParseCmdLine_HelpManagerNumber;
    763655  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);
     656    tmpCmdLineString : String;
     657    tmpCmdLineParameters : TCmdLineParameters;
     658  BEGIN
     659    tmpCmdLineString := '-Hm:123';
     660    tmpCmdLineParameters := TCmdLineParameters.Create;
     661    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
    771662
    772663    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);
     664    assertFalse('testParseCmdLine_HelpManagerNumber', tmpCmdLineParameters.getSearchFlag);
     665    assertFalse('testParseCmdLine_HelpManagerNumber', tmpCmdLineParameters.getGlobalSearchFlag);
    777666    assertEqualsString('testParseCmdLine_HelpManagerNumber', '', tmpCmdLineParameters.getLanguage);
    778667    assertTrue('testParseCmdLine_HelpManagerNumber', tmpCmdLineParameters.getHelpManagerFlag);
     
    780669    assertEqualsInt('testParseCmdLine_HelpManagerNumber', 0, tmpCmdLineParameters.getOwnerWindow);
    781670    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);
     671    assertEqualsString('testParseCmdLine_HelpManagerNumber', '', tmpCmdLineParameters.getFileNames);
     672    assertEqualsString('testParseCmdLine_HelpManagerNumber', '', tmpCmdLineParameters.getSearchText);
     673  END;
     674
     675
     676  PROCEDURE testParseCmdLine_HelpManagerNumber_WithoutColon;
     677  VAR
     678    tmpCmdLineString : String;
     679    tmpCmdLineParameters : TCmdLineParameters;
     680  BEGIN
     681    tmpCmdLineString := '-Hm123';
     682    tmpCmdLineParameters := TCmdLineParameters.Create;
     683    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     684
     685    assertFalse('testParseCmdLine_HelpManagerNumber_WithoutColon', tmpCmdLineParameters.getShowUsageFlag);
     686    assertFalse('testParseCmdLine_HelpManagerNumber_WithoutColon', tmpCmdLineParameters.getSearchFlag);
     687    assertFalse('testParseCmdLine_HelpManagerNumber_WithoutColon', tmpCmdLineParameters.getGlobalSearchFlag);
     688    assertEqualsString('testParseCmdLine_HelpManagerNumber_WithoutColon', '', tmpCmdLineParameters.getLanguage);
     689    assertTrue('testParseCmdLine_HelpManagerNumber_WithoutColon', tmpCmdLineParameters.getHelpManagerFlag);
     690    assertEqualsInt('testParseCmdLine_HelpManagerNumber_WithoutColon', 123, tmpCmdLineParameters.getHelpManagerWindow);
     691    assertEqualsInt('testParseCmdLine_HelpManagerNumber_WithoutColon', 0, tmpCmdLineParameters.getOwnerWindow);
     692    assertEqualsString('testParseCmdLine_HelpManagerNumber_WithoutColon', '', tmpCmdLineParameters.getWindowTitle);
     693    assertEqualsString('testParseCmdLine_HelpManagerNumber_WithoutColon', '', tmpCmdLineParameters.getFileNames);
     694    assertEqualsString('testParseCmdLine_HelpManagerNumber_WithoutColon', '', tmpCmdLineParameters.getSearchText);
     695  END;
     696
     697
     698  PROCEDURE testParseCmdLine_HelpManagerNumber_Invalid;
     699  VAR
     700    tmpCmdLineString : String;
     701    tmpCmdLineParameters : TCmdLineParameters;
     702  BEGIN
     703    tmpCmdLineString := '-Hm:12u3';
     704    tmpCmdLineParameters := TCmdLineParameters.Create;
     705    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     706
     707    assertTrue('testParseCmdLine_HelpManagerNumber', tmpCmdLineParameters.getShowUsageFlag);
     708    assertFalse('testParseCmdLine_HelpManagerNumber', tmpCmdLineParameters.getSearchFlag);
     709    assertFalse('testParseCmdLine_HelpManagerNumber', tmpCmdLineParameters.getGlobalSearchFlag);
     710    assertEqualsString('testParseCmdLine_HelpManagerNumber', '', tmpCmdLineParameters.getLanguage);
     711    assertFalse('testParseCmdLine_HelpManagerNumber', tmpCmdLineParameters.getHelpManagerFlag);
     712    assertEqualsInt('testParseCmdLine_HelpManagerNumber', 0, tmpCmdLineParameters.getHelpManagerWindow);
     713    assertEqualsInt('testParseCmdLine_HelpManagerNumber', 0, tmpCmdLineParameters.getOwnerWindow);
     714    assertEqualsString('testParseCmdLine_HelpManagerNumber', '', tmpCmdLineParameters.getWindowTitle);
     715    assertEqualsString('testParseCmdLine_HelpManagerNumber', '', tmpCmdLineParameters.getFileNames);
     716    assertEqualsString('testParseCmdLine_HelpManagerNumber', '', tmpCmdLineParameters.getSearchText);
     717  END;
     718
     719
     720  PROCEDURE testParseCmdLine_HelpManagerNumber_between;
     721  VAR
     722    tmpCmdLineString : String;
     723    tmpCmdLineParameters : TCmdLineParameters;
     724  BEGIN
     725    tmpCmdLineString := '-s-Hm:12-h';
     726    tmpCmdLineParameters := TCmdLineParameters.Create;
     727    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     728
     729    assertTrue('testParseCmdLine_HelpManagerNumber_between', tmpCmdLineParameters.getShowUsageFlag);
     730    assertTrue('testParseCmdLine_HelpManagerNumber_between', tmpCmdLineParameters.getSearchFlag);
     731    assertFalse('testParseCmdLine_HelpManagerNumber_between', tmpCmdLineParameters.getGlobalSearchFlag);
     732    assertEqualsString('testParseCmdLine_HelpManagerNumber_between', '', tmpCmdLineParameters.getLanguage);
     733    assertTrue('testParseCmdLine_HelpManagerNumber_between', tmpCmdLineParameters.getHelpManagerFlag);
     734    assertEqualsInt('testParseCmdLine_HelpManagerNumber_between', 12, tmpCmdLineParameters.getHelpManagerWindow);
     735    assertEqualsInt('testParseCmdLine_HelpManagerNumber_between', 0, tmpCmdLineParameters.getOwnerWindow);
     736    assertEqualsString('testParseCmdLine_HelpManagerNumber_between', '', tmpCmdLineParameters.getWindowTitle);
     737    assertEqualsString('testParseCmdLine_HelpManagerNumber_between', '', tmpCmdLineParameters.getFileNames);
     738    assertEqualsString('testParseCmdLine_HelpManagerNumber_between', '', tmpCmdLineParameters.getSearchText);
     739  END;
     740
     741
     742  PROCEDURE testParseCmdLine_HelpManagerNumber_between_withSpace;
     743  VAR
     744    tmpCmdLineString : String;
     745    tmpCmdLineParameters : TCmdLineParameters;
     746  BEGIN
     747    tmpCmdLineString := '-s -Hm:12 -h';
     748    tmpCmdLineParameters := TCmdLineParameters.Create;
     749    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     750
     751    assertTrue('testParseCmdLine_HelpManagerNumber_between_withSpace', tmpCmdLineParameters.getShowUsageFlag);
     752    assertTrue('testParseCmdLine_HelpManagerNumber_between_withSpace', tmpCmdLineParameters.getSearchFlag);
     753    assertFalse('testParseCmdLine_HelpManagerNumber_between_withSpace', tmpCmdLineParameters.getGlobalSearchFlag);
     754    assertEqualsString('testParseCmdLine_HelpManagerNumber_between_withSpace', '', tmpCmdLineParameters.getLanguage);
     755    assertTrue('testParseCmdLine_HelpManagerNumber_between_withSpace', tmpCmdLineParameters.getHelpManagerFlag);
     756    assertEqualsInt('testParseCmdLine_HelpManagerNumber_between_withSpace', 12, tmpCmdLineParameters.getHelpManagerWindow);
     757    assertEqualsInt('testParseCmdLine_HelpManagerNumber_between_withSpace', 0, tmpCmdLineParameters.getOwnerWindow);
     758    assertEqualsString('testParseCmdLine_HelpManagerNumber_between_withSpace', '', tmpCmdLineParameters.getWindowTitle);
     759    assertEqualsString('testParseCmdLine_HelpManagerNumber_between_withSpace', '', tmpCmdLineParameters.getFileNames);
     760    assertEqualsString('testParseCmdLine_HelpManagerNumber_between_withSpace', '', tmpCmdLineParameters.getSearchText);
    805761  END;
    806762
     
    808764  PROCEDURE testParseCmdLine_OwnerNumber;
    809765  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);
     766    tmpCmdLineString : String;
     767    tmpCmdLineParameters : TCmdLineParameters;
     768  BEGIN
     769    tmpCmdLineString := '-owNer:1234';
     770    tmpCmdLineParameters := TCmdLineParameters.Create;
     771    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
    817772
    818773    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);
     774    assertFalse('testParseCmdLine_OwnerNumber', tmpCmdLineParameters.getSearchFlag);
     775    assertFalse('testParseCmdLine_OwnerNumber', tmpCmdLineParameters.getGlobalSearchFlag);
    823776    assertEqualsString('testParseCmdLine_OwnerNumber', '', tmpCmdLineParameters.getLanguage);
    824777    assertFalse('testParseCmdLine_OwnerNumber', tmpCmdLineParameters.getHelpManagerFlag);
    825778    assertEqualsInt('testParseCmdLine_OwnerNumber', 0, tmpCmdLineParameters.getHelpManagerWindow);
    826     assertEqualsInt('testParseCmdLine_OwnerNumber', 123, tmpCmdLineParameters.getOwnerWindow);
     779    assertEqualsInt('testParseCmdLine_OwnerNumber', 1234, tmpCmdLineParameters.getOwnerWindow);
    827780    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);
     781    assertEqualsString('testParseCmdLine_OwnerNumber', '', tmpCmdLineParameters.getFileNames);
     782    assertEqualsString('testParseCmdLine_OwnerNumber', '', tmpCmdLineParameters.getSearchText);
     783  END;
     784
     785
     786  PROCEDURE testParseCmdLine_OwnerNumber_WithoutColon;
     787  VAR
     788    tmpCmdLineString : String;
     789    tmpCmdLineParameters : TCmdLineParameters;
     790  BEGIN
     791    tmpCmdLineString := '-OWNER134';
     792    tmpCmdLineParameters := TCmdLineParameters.Create;
     793    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     794
     795    assertFalse('testParseCmdLine_OwnerNumber_WithoutColon', tmpCmdLineParameters.getShowUsageFlag);
     796    assertFalse('testParseCmdLine_OwnerNumber_WithoutColon', tmpCmdLineParameters.getSearchFlag);
     797    assertFalse('testParseCmdLine_OwnerNumber_WithoutColon', tmpCmdLineParameters.getGlobalSearchFlag);
     798    assertEqualsString('testParseCmdLine_OwnerNumber_WithoutColon', '', tmpCmdLineParameters.getLanguage);
     799    assertFalse('testParseCmdLine_OwnerNumber_WithoutColon', tmpCmdLineParameters.getHelpManagerFlag);
     800    assertEqualsInt('testParseCmdLine_OwnerNumber_WithoutColon', 0, tmpCmdLineParameters.getHelpManagerWindow);
     801    assertEqualsInt('testParseCmdLine_OwnerNumber_WithoutColon', 134, tmpCmdLineParameters.getOwnerWindow);
     802    assertEqualsString('testParseCmdLine_OwnerNumber_WithoutColon', '', tmpCmdLineParameters.getWindowTitle);
     803    assertEqualsString('testParseCmdLine_OwnerNumber', '', tmpCmdLineParameters.getFileNames);
     804    assertEqualsString('testParseCmdLine_OwnerNumber_WithoutColon', '', tmpCmdLineParameters.getSearchText);
     805  END;
     806
     807
     808  PROCEDURE testParseCmdLine_OwnerNumber_Invalid;
     809  VAR
     810    tmpCmdLineString : String;
     811    tmpCmdLineParameters : TCmdLineParameters;
     812  BEGIN
     813    tmpCmdLineString := '-owner:12x34';
     814    tmpCmdLineParameters := TCmdLineParameters.Create;
     815    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     816
     817    assertTrue('testParseCmdLine_OwnerNumber_Invalid', tmpCmdLineParameters.getShowUsageFlag);
     818    assertFalse('testParseCmdLine_OwnerNumber_Invalid', tmpCmdLineParameters.getSearchFlag);
     819    assertFalse('testParseCmdLine_OwnerNumber_Invalid', tmpCmdLineParameters.getGlobalSearchFlag);
     820    assertEqualsString('testParseCmdLine_OwnerNumber_Invalid', '', tmpCmdLineParameters.getLanguage);
     821    assertFalse('testParseCmdLine_OwnerNumber_Invalid', tmpCmdLineParameters.getHelpManagerFlag);
     822    assertEqualsInt('testParseCmdLine_OwnerNumber_Invalid', 0, tmpCmdLineParameters.getHelpManagerWindow);
     823    assertEqualsInt('testParseCmdLine_OwnerNumber_Invalid', 0, tmpCmdLineParameters.getOwnerWindow);
     824    assertEqualsString('testParseCmdLine_OwnerNumber_Invalid', '', tmpCmdLineParameters.getWindowTitle);
     825    assertEqualsString('testParseCmdLine_OwnerNumber_Invalid', '', tmpCmdLineParameters.getFileNames);
     826    assertEqualsString('testParseCmdLine_OwnerNumber_Invalid', '', tmpCmdLineParameters.getSearchText);
     827  END;
     828
     829
     830  PROCEDURE testParseCmdLine_OwnerNumber_between;
     831  VAR
     832    tmpCmdLineString : String;
     833    tmpCmdLineParameters : TCmdLineParameters;
     834  BEGIN
     835    tmpCmdLineString := '-g-owner:14-s';
     836    tmpCmdLineParameters := TCmdLineParameters.Create;
     837    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     838
     839    assertFalse('testParseCmdLine_OwnerNumber_between', tmpCmdLineParameters.getShowUsageFlag);
     840    assertTrue('testParseCmdLine_OwnerNumber_between', tmpCmdLineParameters.getSearchFlag);
     841    assertTrue('testParseCmdLine_OwnerNumber_between', tmpCmdLineParameters.getGlobalSearchFlag);
     842    assertEqualsString('testParseCmdLine_OwnerNumber_between', '', tmpCmdLineParameters.getLanguage);
     843    assertFalse('testParseCmdLine_OwnerNumber_between', tmpCmdLineParameters.getHelpManagerFlag);
     844    assertEqualsInt('testParseCmdLine_OwnerNumber_between', 0, tmpCmdLineParameters.getHelpManagerWindow);
     845    assertEqualsInt('testParseCmdLine_OwnerNumber_between', 14, tmpCmdLineParameters.getOwnerWindow);
     846    assertEqualsString('testParseCmdLine_OwnerNumber_between', '', tmpCmdLineParameters.getWindowTitle);
     847    assertEqualsString('testParseCmdLine_OwnerNumber_between', '', tmpCmdLineParameters.getFileNames);
     848    assertEqualsString('testParseCmdLine_OwnerNumber_between', '', tmpCmdLineParameters.getSearchText);
     849  END;
     850
     851
     852  PROCEDURE testParseCmdLine_OwnerNumber_between_withSpace;
     853  VAR
     854    tmpCmdLineString : String;
     855    tmpCmdLineParameters : TCmdLineParameters;
     856  BEGIN
     857    tmpCmdLineString := '-g -owner:14 -s';
     858    tmpCmdLineParameters := TCmdLineParameters.Create;
     859    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     860
     861    assertFalse('testParseCmdLine_OwnerNumber_between_withSpace', tmpCmdLineParameters.getShowUsageFlag);
     862    assertTrue('testParseCmdLine_OwnerNumber_between_withSpace', tmpCmdLineParameters.getSearchFlag);
     863    assertTrue('testParseCmdLine_OwnerNumber_between_withSpace', tmpCmdLineParameters.getGlobalSearchFlag);
     864    assertEqualsString('testParseCmdLine_OwnerNumber_between_withSpace', '', tmpCmdLineParameters.getLanguage);
     865    assertFalse('testParseCmdLine_OwnerNumber_between_withSpace', tmpCmdLineParameters.getHelpManagerFlag);
     866    assertEqualsInt('testParseCmdLine_OwnerNumber_between_withSpace', 0, tmpCmdLineParameters.getHelpManagerWindow);
     867    assertEqualsInt('testParseCmdLine_OwnerNumber_between_withSpace', 14, tmpCmdLineParameters.getOwnerWindow);
     868    assertEqualsString('testParseCmdLine_OwnerNumber_between_withSpace', '', tmpCmdLineParameters.getWindowTitle);
     869    assertEqualsString('testParseCmdLine_OwnerNumber_between_withSpace', '', tmpCmdLineParameters.getFileNames);
     870    assertEqualsString('testParseCmdLine_OwnerNumber_between_withSpace', '', tmpCmdLineParameters.getSearchText);
    851871  END;
    852872
     
    854874  PROCEDURE testParseCmdLine_Title;
    855875  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);
     876    tmpCmdLineString : String;
     877    tmpCmdLineParameters : TCmdLineParameters;
     878  BEGIN
     879    tmpCmdLineString := '-Title:Test';
     880    tmpCmdLineParameters := TCmdLineParameters.Create;
     881    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
    863882
    864883    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);
     884    assertFalse('testParseCmdLine_Title', tmpCmdLineParameters.getSearchFlag);
     885    assertFalse('testParseCmdLine_Title', tmpCmdLineParameters.getGlobalSearchFlag);
    869886    assertEqualsString('testParseCmdLine_Title', '', tmpCmdLineParameters.getLanguage);
    870887    assertFalse('testParseCmdLine_Title', tmpCmdLineParameters.getHelpManagerFlag);
    871888    assertEqualsInt('testParseCmdLine_Title', 0, tmpCmdLineParameters.getHelpManagerWindow);
    872889    assertEqualsInt('testParseCmdLine_Title', 0, tmpCmdLineParameters.getOwnerWindow);
    873     assertEqualsString('testParseCmdLine_Title', 'testTitle', tmpCmdLineParameters.getWindowTitle);
     890    assertEqualsString('testParseCmdLine_Title', 'Test', tmpCmdLineParameters.getWindowTitle);
     891    assertEqualsString('testParseCmdLine_Title', '', tmpCmdLineParameters.getFileNames);
     892    assertEqualsString('testParseCmdLine_Title', '', tmpCmdLineParameters.getSearchText);
     893  END;
     894
     895
     896  PROCEDURE testParseCmdLine_Title_WithoutColon;
     897  VAR
     898    tmpCmdLineString : String;
     899    tmpCmdLineParameters : TCmdLineParameters;
     900  BEGIN
     901    tmpCmdLineString := '-titletitlE';
     902    tmpCmdLineParameters := TCmdLineParameters.Create;
     903    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     904
     905    assertFalse('testParseCmdLine_Title_WithoutColon', tmpCmdLineParameters.getShowUsageFlag);
     906    assertFalse('testParseCmdLine_Title_WithoutColon', tmpCmdLineParameters.getSearchFlag);
     907    assertFalse('testParseCmdLine_Title_WithoutColon', tmpCmdLineParameters.getGlobalSearchFlag);
     908    assertEqualsString('testParseCmdLine_Title_WithoutColon', '', tmpCmdLineParameters.getLanguage);
     909    assertFalse('testParseCmdLine_Title_WithoutColon', tmpCmdLineParameters.getHelpManagerFlag);
     910    assertEqualsInt('testParseCmdLine_Title_WithoutColon', 0, tmpCmdLineParameters.getHelpManagerWindow);
     911    assertEqualsInt('testParseCmdLine_Title_WithoutColon', 0, tmpCmdLineParameters.getOwnerWindow);
     912    assertEqualsString('testParseCmdLine_Title_WithoutColon', 'titlE', tmpCmdLineParameters.getWindowTitle);
     913    assertEqualsString('testParseCmdLine_Title_WithoutColon', '', tmpCmdLineParameters.getFileNames);
     914    assertEqualsString('testParseCmdLine_Title_WithoutColon', '', tmpCmdLineParameters.getSearchText);
     915  END;
     916
     917
     918  PROCEDURE testParseCmdLine_Title_Empty;
     919  VAR
     920    tmpCmdLineString : String;
     921    tmpCmdLineParameters : TCmdLineParameters;
     922  BEGIN
     923    tmpCmdLineString := '-TITLE:';
     924    tmpCmdLineParameters := TCmdLineParameters.Create;
     925    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     926
     927    assertFalse('testParseCmdLine_Title_Empty', tmpCmdLineParameters.getShowUsageFlag);
     928    assertFalse('testParseCmdLine_Title_Empty', tmpCmdLineParameters.getSearchFlag);
     929    assertFalse('testParseCmdLine_Title_Empty', tmpCmdLineParameters.getGlobalSearchFlag);
     930    assertEqualsString('testParseCmdLine_Title_Empty', '', tmpCmdLineParameters.getLanguage);
     931    assertFalse('testParseCmdLine_Title_Empty', tmpCmdLineParameters.getHelpManagerFlag);
     932    assertEqualsInt('testParseCmdLine_Title_Empty', 0, tmpCmdLineParameters.getHelpManagerWindow);
     933    assertEqualsInt('testParseCmdLine_Title_Empty', 0, tmpCmdLineParameters.getOwnerWindow);
     934    assertEqualsString('testParseCmdLine_Title_Empty', '', tmpCmdLineParameters.getWindowTitle);
     935    assertEqualsString('testParseCmdLine_Title_Empty', '', tmpCmdLineParameters.getFileNames);
     936    assertEqualsString('testParseCmdLine_Title_Empty', '', tmpCmdLineParameters.getSearchText);
     937  END;
     938
     939
     940  PROCEDURE testParseCmdLine_Title_between;
     941  VAR
     942    tmpCmdLineString : String;
     943    tmpCmdLineParameters : TCmdLineParameters;
     944  BEGIN
     945    tmpCmdLineString := '-h-TITLE:tItlE-s';
     946    tmpCmdLineParameters := TCmdLineParameters.Create;
     947    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     948
     949    assertTrue('testParseCmdLine_Title_between', tmpCmdLineParameters.getShowUsageFlag);
     950    assertTrue('testParseCmdLine_Title_between', tmpCmdLineParameters.getSearchFlag);
     951    assertFalse('testParseCmdLine_Title_between', tmpCmdLineParameters.getGlobalSearchFlag);
     952    assertEqualsString('testParseCmdLine_Title_between', '', tmpCmdLineParameters.getLanguage);
     953    assertFalse('testParseCmdLine_Title_between', tmpCmdLineParameters.getHelpManagerFlag);
     954    assertEqualsInt('testParseCmdLine_Title_between', 0, tmpCmdLineParameters.getHelpManagerWindow);
     955    assertEqualsInt('testParseCmdLine_Title_between', 0, tmpCmdLineParameters.getOwnerWindow);
     956    assertEqualsString('testParseCmdLine_Title_between', 'tItlE', tmpCmdLineParameters.getWindowTitle);
     957    assertEqualsString('testParseCmdLine_Title_between', '', tmpCmdLineParameters.getFileNames);
     958    assertEqualsString('testParseCmdLine_Title_between', '', tmpCmdLineParameters.getSearchText);
     959  END;
     960
     961
     962  PROCEDURE testParseCmdLine_Title_between_withSpace;
     963  VAR
     964    tmpCmdLineString : String;
     965    tmpCmdLineParameters : TCmdLineParameters;
     966  BEGIN
     967    tmpCmdLineString := '-h-TITLE:tItlE-s';
     968    tmpCmdLineParameters := TCmdLineParameters.Create;
     969    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     970
     971    assertTrue('testParseCmdLine_Title_between_withSpace', tmpCmdLineParameters.getShowUsageFlag);
     972    assertTrue('testParseCmdLine_Title_between_withSpace', tmpCmdLineParameters.getSearchFlag);
     973    assertFalse('testParseCmdLine_Title_between_withSpace', tmpCmdLineParameters.getGlobalSearchFlag);
     974    assertEqualsString('testParseCmdLine_Title_between_withSpace', '', tmpCmdLineParameters.getLanguage);
     975    assertFalse('testParseCmdLine_Title_between_withSpace', tmpCmdLineParameters.getHelpManagerFlag);
     976    assertEqualsInt('testParseCmdLine_Title_between_withSpace', 0, tmpCmdLineParameters.getHelpManagerWindow);
     977    assertEqualsInt('testParseCmdLine_Title_between_withSpace', 0, tmpCmdLineParameters.getOwnerWindow);
     978    assertEqualsString('testParseCmdLine_Title_between_withSpace', 'tItlE', tmpCmdLineParameters.getWindowTitle);
     979    assertEqualsString('testParseCmdLine_Title_between_withSpace', '', tmpCmdLineParameters.getFileNames);
     980    assertEqualsString('testParseCmdLine_Title_between_withSpace', '', tmpCmdLineParameters.getSearchText);
    874981  END;
    875982
     
    879986  PROCEDURE testParseCmdLine_WindowPos;
    880987  VAR
    881     tmpParams : TStringList;
     988    tmpCmdLineString : String;
    882989    tmpCmdLineParameters : TCmdLineParameters;
    883990    tmpWindowPosition : TWindowPosition;
    884991  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);
     992    tmpCmdLineString := '-pos:20,40,60,80';
     993    tmpCmdLineParameters := TCmdLineParameters.Create;
     994    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     995
     996    assertFalse('testParseCmdLine_WindowPos', tmpCmdLineParameters.getShowUsageFlag);
     997    assertFalse('testParseCmdLine_WindowPos', tmpCmdLineParameters.getSearchFlag);
     998    assertFalse('testParseCmdLine_WindowPos', tmpCmdLineParameters.getGlobalSearchFlag);
     999    assertEqualsString('testParseCmdLine_WindowPos', '', tmpCmdLineParameters.getLanguage);
     1000    assertFalse('testParseCmdLine_WindowPos', tmpCmdLineParameters.getHelpManagerFlag);
     1001    assertEqualsInt('testParseCmdLine_WindowPos', 0, tmpCmdLineParameters.getHelpManagerWindow);
     1002    assertEqualsInt('testParseCmdLine_WindowPos', 0, tmpCmdLineParameters.getOwnerWindow);
     1003    assertEqualsString('testParseCmdLine_WindowPos', '', tmpCmdLineParameters.getWindowTitle);
     1004    assertEqualsString('testParseCmdLine_WindowPos', '', tmpCmdLineParameters.getFileNames);
     1005    assertEqualsString('testParseCmdLine_WindowPos', '', tmpCmdLineParameters.getSearchText);
     1006
     1007    assertTrue('testParseCmdLine_WindowPos', tmpCmdLineParameters.getWindowPositionFlag);
    8911008    tmpWindowPosition := tmpCmdLineParameters.getWindowPosition;
    8921009    assertEqualsInt('testParseCmdLine_WindowPos', 20, tmpWindowPosition.left);
     
    8971014
    8981015
     1016
    8991017  PROCEDURE testParseCmdLine_WindowPosPercentage;
    9001018  VAR
    901     tmpParams : TStringList;
     1019    tmpCmdLineString : String;
    9021020    tmpCmdLineParameters : TCmdLineParameters;
    9031021    tmpWindowPosition : TWindowPosition;
    9041022  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);
     1023    tmpCmdLineString := '-pos:100p,100p,50p,50p';
     1024    tmpCmdLineParameters := TCmdLineParameters.Create;
     1025    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     1026
     1027    assertFalse('testParseCmdLine_WindowPosPercentage', tmpCmdLineParameters.getShowUsageFlag);
     1028    assertFalse('testParseCmdLine_WindowPosPercentage', tmpCmdLineParameters.getSearchFlag);
     1029    assertFalse('testParseCmdLine_WindowPosPercentage', tmpCmdLineParameters.getGlobalSearchFlag);
     1030    assertEqualsString('testParseCmdLine_WindowPos', '', tmpCmdLineParameters.getLanguage);
     1031    assertFalse('testParseCmdLine_WindowPosPercentage', tmpCmdLineParameters.getHelpManagerFlag);
     1032    assertEqualsInt('testParseCmdLine_WindowPosPercentage', 0, tmpCmdLineParameters.getHelpManagerWindow);
     1033    assertEqualsInt('testParseCmdLine_WindowPosPercentage', 0, tmpCmdLineParameters.getOwnerWindow);
     1034    assertEqualsString('testParseCmdLine_WindowPosPercentage', '', tmpCmdLineParameters.getWindowTitle);
     1035    assertEqualsString('testParseCmdLine_WindowPosPercentage', '', tmpCmdLineParameters.getFileNames);
     1036    assertEqualsString('testParseCmdLine_WindowPosPercentage', '', tmpCmdLineParameters.getSearchText);
     1037
     1038    assertTrue('testParseCmdLine_WindowPosPercentage', tmpCmdLineParameters.getWindowPositionFlag);
    9111039    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);
     1040    assertEqualsInt('testParseCmdLine_WindowPosPercentage', 1280, tmpWindowPosition.left);
     1041    assertEqualsInt('testParseCmdLine_WindowPosPercentage', 1024, tmpWindowPosition.bottom);
     1042    assertEqualsInt('testParseCmdLine_WindowPosPercentage', 640, tmpWindowPosition.width);
     1043    assertEqualsInt('testParseCmdLine_WindowPosPercentage', 512, tmpWindowPosition.height);
    9161044  END;
    9171045
     
    9191047  PROCEDURE testParseCmdLine_Topic;
    9201048  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);
     1049    tmpCmdLineString : String;
     1050    tmpCmdLineParameters : TCmdLineParameters;
     1051  BEGIN
     1052    tmpCmdLineString := 'file topi1 topi2';
     1053    tmpCmdLineParameters := TCmdLineParameters.Create;
     1054    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     1055
     1056    assertFalse('testParseCmdLine_Topic->ShowUsageFlag', tmpCmdLineParameters.getShowUsageFlag);
     1057    assertFalse('testParseCmdLine_Topic->SearchFlag', tmpCmdLineParameters.getSearchFlag);
     1058    assertFalse('testParseCmdLine_Topic->GlobalSearchFlag', tmpCmdLineParameters.getGlobalSearchFlag);
     1059    assertEqualsString('testParseCmdLine_Topic', '', tmpCmdLineParameters.getLanguage);
     1060    assertFalse('testParseCmdLine_Topic', tmpCmdLineParameters.getHelpManagerFlag);
     1061    assertEqualsInt('testParseCmdLine_Topic', 0, tmpCmdLineParameters.getHelpManagerWindow);
     1062    assertEqualsInt('testParseCmdLine_Topic', 0, tmpCmdLineParameters.getOwnerWindow);
     1063    assertEqualsString('testParseCmdLine_Topic', '', tmpCmdLineParameters.getWindowTitle);
     1064    assertEqualsString('testParseCmdLine_Topic', 'file', tmpCmdLineParameters.getFileNames);
     1065    assertEqualsString('testParseCmdLine_Topic', 'topi1 topi2', tmpCmdLineParameters.getSearchText);
     1066  END;
     1067
     1068
     1069  PROCEDURE testParseCmdLine_file;
     1070  VAR
     1071    tmpCmdLineString : String;
     1072    tmpCmdLineParameters : TCmdLineParameters;
     1073  BEGIN
     1074    tmpCmdLineString := 'file';
     1075    tmpCmdLineParameters := TCmdLineParameters.Create;
     1076    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     1077
     1078    assertFalse('testParseCmdLine_file->ShowUsageFlag', tmpCmdLineParameters.getShowUsageFlag);
     1079    assertFalse('testParseCmdLine_file->SearchFlag', tmpCmdLineParameters.getSearchFlag);
     1080    assertFalse('testParseCmdLine_file->GlobalSearchFlag', tmpCmdLineParameters.getGlobalSearchFlag);
     1081    assertEqualsString('testParseCmdLine_file', '', tmpCmdLineParameters.getLanguage);
     1082    assertFalse('testParseCmdLine_file', tmpCmdLineParameters.getHelpManagerFlag);
     1083    assertEqualsInt('testParseCmdLine_file', 0, tmpCmdLineParameters.getHelpManagerWindow);
     1084    assertEqualsInt('testParseCmdLine_file', 0, tmpCmdLineParameters.getOwnerWindow);
     1085    assertEqualsString('testParseCmdLine_file', '', tmpCmdLineParameters.getWindowTitle);
     1086    assertEqualsString('testParseCmdLine_file', 'file', tmpCmdLineParameters.getFileNames);
     1087    assertEqualsString('testParseCmdLine_file', '', tmpCmdLineParameters.getSearchText);
     1088  END;
     1089
     1090
     1091  PROCEDURE testParseCmdLine_fileLeadingBlanks;
     1092  VAR
     1093    tmpCmdLineString : String;
     1094    tmpCmdLineParameters : TCmdLineParameters;
     1095  BEGIN
     1096    tmpCmdLineString := '  file';
     1097    tmpCmdLineParameters := TCmdLineParameters.Create;
     1098    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     1099
     1100    assertFalse('testParseCmdLine_fileLeadingBlanks->ShowUsageFlag', tmpCmdLineParameters.getShowUsageFlag);
     1101    assertFalse('testParseCmdLine_fileLeadingBlanks->SearchFlag', tmpCmdLineParameters.getSearchFlag);
     1102    assertFalse('testParseCmdLine_fileLeadingBlanks->GlobalSearchFlag', tmpCmdLineParameters.getGlobalSearchFlag);
     1103    assertEqualsString('testParseCmdLine_fileLeadingBlanks', '', tmpCmdLineParameters.getLanguage);
     1104    assertFalse('testParseCmdLine_fileLeadingBlanks', tmpCmdLineParameters.getHelpManagerFlag);
     1105    assertEqualsInt('testParseCmdLine_fileLeadingBlanks', 0, tmpCmdLineParameters.getHelpManagerWindow);
     1106    assertEqualsInt('testParseCmdLine_fileLeadingBlanks', 0, tmpCmdLineParameters.getOwnerWindow);
     1107    assertEqualsString('testParseCmdLine_fileLeadingBlanks', '', tmpCmdLineParameters.getWindowTitle);
     1108    assertEqualsString('testParseCmdLine_fileLeadingBlanks', 'file', tmpCmdLineParameters.getFileNames);
     1109    assertEqualsString('testParseCmdLine_fileLeadingBlanks', '', tmpCmdLineParameters.getSearchText);
     1110  END;
     1111
     1112
     1113  PROCEDURE testParseCmdLine_fileTrailingBlanks;
     1114  VAR
     1115    tmpCmdLineString : String;
     1116    tmpCmdLineParameters : TCmdLineParameters;
     1117  BEGIN
     1118    tmpCmdLineString := 'file  ';
     1119    tmpCmdLineParameters := TCmdLineParameters.Create;
     1120    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     1121
     1122    assertFalse('testParseCmdLine_fileTrailingBlanks->ShowUsageFlag', tmpCmdLineParameters.getShowUsageFlag);
     1123    assertFalse('testParseCmdLine_fileTrailingBlanks->SearchFlag', tmpCmdLineParameters.getSearchFlag);
     1124    assertFalse('testParseCmdLine_fileTrailingBlanks->GlobalSearchFlag', tmpCmdLineParameters.getGlobalSearchFlag);
     1125    assertEqualsString('testParseCmdLine_fileTrailingBlanks', '', tmpCmdLineParameters.getLanguage);
     1126    assertFalse('testParseCmdLine_fileTrailingBlanks', tmpCmdLineParameters.getHelpManagerFlag);
     1127    assertEqualsInt('testParseCmdLine_fileTrailingBlanks', 0, tmpCmdLineParameters.getHelpManagerWindow);
     1128    assertEqualsInt('testParseCmdLine_fileTrailingBlanks', 0, tmpCmdLineParameters.getOwnerWindow);
     1129    assertEqualsString('testParseCmdLine_fileTrailingBlanks', '', tmpCmdLineParameters.getWindowTitle);
     1130    assertEqualsString('testParseCmdLine_fileTrailingBlanks', 'file', tmpCmdLineParameters.getFileNames);
     1131    assertEqualsString('testParseCmdLine_fileTrailingBlanks', '', tmpCmdLineParameters.getSearchText);
     1132  END;
     1133
     1134
     1135  PROCEDURE testParseCmdLine_fileQuoted;
     1136  VAR
     1137    tmpCmdLineString : String;
     1138    tmpCmdLineParameters : TCmdLineParameters;
     1139  BEGIN
     1140    tmpCmdLineString := '"fi -h le"';
     1141    tmpCmdLineParameters := TCmdLineParameters.Create;
     1142    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     1143
     1144    assertFalse('testParseCmdLine_fileQuoted->ShowUsageFlag', tmpCmdLineParameters.getShowUsageFlag);
     1145    assertFalse('testParseCmdLine_fileQuoted->SearchFlag', tmpCmdLineParameters.getSearchFlag);
     1146    assertFalse('testParseCmdLine_fileQuoted->GlobalSearchFlag', tmpCmdLineParameters.getGlobalSearchFlag);
     1147    assertEqualsString('testParseCmdLine_fileQuoted', '', tmpCmdLineParameters.getLanguage);
     1148    assertFalse('testParseCmdLine_fileQuoted', tmpCmdLineParameters.getHelpManagerFlag);
     1149    assertEqualsInt('testParseCmdLine_fileQuoted', 0, tmpCmdLineParameters.getHelpManagerWindow);
     1150    assertEqualsInt('testParseCmdLine_fileQuoted', 0, tmpCmdLineParameters.getOwnerWindow);
     1151    assertEqualsString('testParseCmdLine_fileQuoted', '', tmpCmdLineParameters.getWindowTitle);
     1152    assertEqualsString('testParseCmdLine_fileQuoted', 'fi -h le', tmpCmdLineParameters.getFileNames);
     1153    assertEqualsString('testParseCmdLine_fileQuoted', '', tmpCmdLineParameters.getSearchText);
     1154  END;
     1155
     1156
     1157  PROCEDURE testParseCmdLine_fileQuotedMissingClosedQuote;
     1158  VAR
     1159    tmpCmdLineString : String;
     1160    tmpCmdLineParameters : TCmdLineParameters;
     1161  BEGIN
     1162    tmpCmdLineString := '"fi -h le';
     1163    tmpCmdLineParameters := TCmdLineParameters.Create;
     1164    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     1165
     1166    assertFalse('testParseCmdLine_fileQuotedMissingClosedQuote->ShowUsageFlag', tmpCmdLineParameters.getShowUsageFlag);
     1167    assertFalse('testParseCmdLine_fileQuotedMissingClosedQuote->SearchFlag', tmpCmdLineParameters.getSearchFlag);
     1168    assertFalse('testParseCmdLine_fileQuotedMissingClosedQuote->GlobalSearchFlag', tmpCmdLineParameters.getGlobalSearchFlag);
     1169    assertEqualsString('testParseCmdLine_fileQuotedMissingClosedQuote', '', tmpCmdLineParameters.getLanguage);
     1170    assertFalse('testParseCmdLine_fileQuotedMissingClosedQuote', tmpCmdLineParameters.getHelpManagerFlag);
     1171    assertEqualsInt('testParseCmdLine_fileQuotedMissingClosedQuote', 0, tmpCmdLineParameters.getHelpManagerWindow);
     1172    assertEqualsInt('testParseCmdLine_fileQuotedMissingClosedQuote', 0, tmpCmdLineParameters.getOwnerWindow);
     1173    assertEqualsString('testParseCmdLine_fileQuotedMissingClosedQuote', '', tmpCmdLineParameters.getWindowTitle);
     1174    assertEqualsString('testParseCmdLine_fileQuotedMissingClosedQuote', 'fi -h le', tmpCmdLineParameters.getFileNames);
     1175    assertEqualsString('testParseCmdLine_fileQuotedMissingClosedQuote', '', tmpCmdLineParameters.getSearchText);
     1176  END;
     1177
     1178
     1179  PROCEDURE testParseCmdLine_fileQuotedAndText;
     1180  VAR
     1181    tmpCmdLineString : String;
     1182    tmpCmdLineParameters : TCmdLineParameters;
     1183  BEGIN
     1184    tmpCmdLineString := '"fi -h le" serachText';
     1185    tmpCmdLineParameters := TCmdLineParameters.Create;
     1186    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     1187
     1188    assertFalse('testParseCmdLine_fileQuotedAndText->ShowUsageFlag', tmpCmdLineParameters.getShowUsageFlag);
     1189    assertFalse('testParseCmdLine_fileQuotedAndText->SearchFlag', tmpCmdLineParameters.getSearchFlag);
     1190    assertFalse('testParseCmdLine_fileQuotedAndText->GlobalSearchFlag', tmpCmdLineParameters.getGlobalSearchFlag);
     1191    assertEqualsString('testParseCmdLine_fileQuotedAndText', '', tmpCmdLineParameters.getLanguage);
     1192    assertFalse('testParseCmdLine_fileQuotedAndText', tmpCmdLineParameters.getHelpManagerFlag);
     1193    assertEqualsInt('testParseCmdLine_fileQuotedAndText', 0, tmpCmdLineParameters.getHelpManagerWindow);
     1194    assertEqualsInt('testParseCmdLine_fileQuotedAndText', 0, tmpCmdLineParameters.getOwnerWindow);
     1195    assertEqualsString('testParseCmdLine_fileQuotedAndText', '', tmpCmdLineParameters.getWindowTitle);
     1196    assertEqualsString('testParseCmdLine_fileQuotedAndText', 'fi -h le', tmpCmdLineParameters.getFileNames);
     1197    assertEqualsString('testParseCmdLine_fileQuotedAndText', 'serachText', tmpCmdLineParameters.getSearchText);
     1198  END;
     1199
     1200
     1201  PROCEDURE testParseCmdLine_fileQuotedAndTextManyBlanks;
     1202  VAR
     1203    tmpCmdLineString : String;
     1204    tmpCmdLineParameters : TCmdLineParameters;
     1205  BEGIN
     1206    tmpCmdLineString := '"fi -h le"    serachText    ';
     1207    tmpCmdLineParameters := TCmdLineParameters.Create;
     1208    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     1209
     1210    assertFalse('testParseCmdLine_fileQuotedAndTextManyBlanks->ShowUsageFlag', tmpCmdLineParameters.getShowUsageFlag);
     1211    assertFalse('testParseCmdLine_fileQuotedAndTextManyBlanks->SearchFlag', tmpCmdLineParameters.getSearchFlag);
     1212    assertFalse('testParseCmdLine_fileQuotedAndTextManyBlanks->GlobalSearchFlag', tmpCmdLineParameters.getGlobalSearchFlag);
     1213    assertEqualsString('testParseCmdLine_fileQuotedAndTextManyBlanks', '', tmpCmdLineParameters.getLanguage);
     1214    assertFalse('testParseCmdLine_fileQuotedAndTextManyBlanks', tmpCmdLineParameters.getHelpManagerFlag);
     1215    assertEqualsInt('testParseCmdLine_fileQuotedAndTextManyBlanks', 0, tmpCmdLineParameters.getHelpManagerWindow);
     1216    assertEqualsInt('testParseCmdLine_fileQuotedAndTextManyBlanks', 0, tmpCmdLineParameters.getOwnerWindow);
     1217    assertEqualsString('testParseCmdLine_fileQuotedAndTextManyBlanks', '', tmpCmdLineParameters.getWindowTitle);
     1218    assertEqualsString('testParseCmdLine_fileQuotedAndTextManyBlanks', 'fi -h le', tmpCmdLineParameters.getFileNames);
     1219    assertEqualsString('testParseCmdLine_fileQuotedAndTextManyBlanks', 'serachText', tmpCmdLineParameters.getSearchText);
     1220  END;
     1221
     1222
     1223  PROCEDURE testParseCmdLine_fileQuotedInside;
     1224  VAR
     1225    tmpCmdLineString : String;
     1226    tmpCmdLineParameters : TCmdLineParameters;
     1227  BEGIN
     1228    tmpCmdLineString := 'test"fi -h le"tes serachText';
     1229    tmpCmdLineParameters := TCmdLineParameters.Create;
     1230    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     1231
     1232    assertFalse('testParseCmdLine_fileQuotedInside->ShowUsageFlag', tmpCmdLineParameters.getShowUsageFlag);
     1233    assertFalse('testParseCmdLine_fileQuotedInside->SearchFlag', tmpCmdLineParameters.getSearchFlag);
     1234    assertFalse('testParseCmdLine_fileQuotedInside->GlobalSearchFlag', tmpCmdLineParameters.getGlobalSearchFlag);
     1235    assertEqualsString('testParseCmdLine_fileQuotedInside', '', tmpCmdLineParameters.getLanguage);
     1236    assertFalse('testParseCmdLine_fileQuotedInside', tmpCmdLineParameters.getHelpManagerFlag);
     1237    assertEqualsInt('testParseCmdLine_fileQuotedInside', 0, tmpCmdLineParameters.getHelpManagerWindow);
     1238    assertEqualsInt('testParseCmdLine_fileQuotedInside', 0, tmpCmdLineParameters.getOwnerWindow);
     1239    assertEqualsString('testParseCmdLine_fileQuotedInside', '', tmpCmdLineParameters.getWindowTitle);
     1240    assertEqualsString('testParseCmdLine_fileQuotedInside', 'testfi -h letes', tmpCmdLineParameters.getFileNames);
     1241    assertEqualsString('testParseCmdLine_fileQuotedInside', 'serachText', tmpCmdLineParameters.getSearchText);
     1242  END;
     1243
     1244
     1245  PROCEDURE testParseCmdLine_SwitchAndFileQuoted;
     1246  VAR
     1247    tmpCmdLineString : String;
     1248    tmpCmdLineParameters : TCmdLineParameters;
     1249  BEGIN
     1250    tmpCmdLineString := '-s "fi -h le" serachText';
     1251    tmpCmdLineParameters := TCmdLineParameters.Create;
     1252    tmpCmdLineParameters.parseCmdLine(tmpCmdLineString);
     1253
     1254    assertFalse('testParseCmdLine_SwitchAndFileQuoted->ShowUsageFlag', tmpCmdLineParameters.getShowUsageFlag);
     1255    assertTrue('testParseCmdLine_SwitchAndFileQuoted->SearchFlag', tmpCmdLineParameters.getSearchFlag);
     1256    assertFalse('testParseCmdLine_SwitchAndFileQuoted->GlobalSearchFlag', tmpCmdLineParameters.getGlobalSearchFlag);
     1257    assertEqualsString('testParseCmdLine_SwitchAndFileQuoted', '', tmpCmdLineParameters.getLanguage);
     1258    assertFalse('testParseCmdLine_SwitchAndFileQuoted', tmpCmdLineParameters.getHelpManagerFlag);
     1259    assertEqualsInt('testParseCmdLine_SwitchAndFileQuoted', 0, tmpCmdLineParameters.getHelpManagerWindow);
     1260    assertEqualsInt('testParseCmdLine_SwitchAndFileQuoted', 0, tmpCmdLineParameters.getOwnerWindow);
     1261    assertEqualsString('testParseCmdLine_SwitchAndFileQuoted', '', tmpCmdLineParameters.getWindowTitle);
     1262    assertEqualsString('testParseCmdLine_SwitchAndFileQuoted', 'fi -h le', tmpCmdLineParameters.getFileNames);
     1263    assertEqualsString('testParseCmdLine_SwitchAndFileQuoted', 'serachText', tmpCmdLineParameters.getSearchText);
    9331264  END;
    9341265
     
    9371268  BEGIN
    9381269    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);
    9591270
    9601271    result.add(@testParseCmdLine_Empty);
     
    9651276    result.add(@testParseCmdLine_lowerHelp);
    9661277    result.add(@testParseCmdLine_upperHELP);
     1278    result.add(@testParseCmdLine_upperHE);
     1279    result.add(@testParseCmdLine_h_between);
     1280    result.add(@testParseCmdLine_h_between_withSpace);
    9671281
    9681282    result.add(@testParseCmdLine_lowerS);
    9691283    result.add(@testParseCmdLine_upperS);
     1284    result.add(@testParseCmdLine_upperS_withBlank);
    9701285    result.add(@testParseCmdLine_emptyS);
    971     result.add(@testParseCmdLine_emptyColonS);
    972     result.add(@testParseCmdLine_emptyColonS);
    973     result.add(@testParseCmdLine_withoutColonS);
    974     result.add(@testParseCmdLine_doubleColonS);
     1286
     1287    result.add(@testParseCmdLine_s_between);
     1288    result.add(@testParseCmdLine_s_between_withSpace);
     1289    result.add(@testParseCmdLine_help_and_s);
     1290    result.add(@testParseCmdLine_s_and_help);
     1291    result.add(@testParseCmdLine_help_and_s_without_blank);
    9751292
    9761293    result.add(@testParseCmdLine_lowerG);
    9771294    result.add(@testParseCmdLine_upperG);
    9781295    result.add(@testParseCmdLine_emptyG);
    979     result.add(@testParseCmdLine_emptyColonG);
    980     result.add(@testParseCmdLine_emptyColonG);
    981     result.add(@testParseCmdLine_withoutColonG);
    982     result.add(@testParseCmdLine_doubleColonG);
     1296    result.add(@testParseCmdLine_g_between);
     1297    result.add(@testParseCmdLine_g_between_withSpace);
    9831298
    9841299    result.add(@testParseCmdLine_Language);
     1300
     1301    result.add(@testParseCmdLine_Language_Empty);
     1302    result.add(@testParseCmdLine_Language_Empty_WithColon);
     1303    result.add(@testParseCmdLine_Language_WithFile);
     1304    result.add(@testParseCmdLine_Language_between);
     1305    result.add(@testParseCmdLine_Language_between_withSpace);
     1306
    9851307    result.add(@testParseCmdLine_HelpManagerNumber);
    986     result.add(@testParseCmdLine_HelpManagerText);
     1308    result.add(@testParseCmdLine_HelpManagerNumber_WithoutColon);
     1309    result.add(@testParseCmdLine_HelpManagerNumber_Invalid);
     1310    result.add(@testParseCmdLine_HelpManagerNumber_between);
     1311    result.add(@testParseCmdLine_HelpManagerNumber_between_withSpace);
     1312
    9871313    result.add(@testParseCmdLine_OwnerNumber);
    988     result.add(@testParseCmdLine_OwnerTest);
     1314    result.add(@testParseCmdLine_OwnerNumber_WithoutColon);
     1315    result.add(@testParseCmdLine_OwnerNumber_Invalid);
     1316    result.add(@testParseCmdLine_OwnerNumber_between);
     1317    result.add(@testParseCmdLine_OwnerNumber_between_withSpace);
     1318
     1319
    9891320    result.add(@testParseCmdLine_Title);
     1321    result.add(@testParseCmdLine_Title_WithoutColon);
     1322    result.add(@testParseCmdLine_Title_Empty);
     1323    result.add(@testParseCmdLine_Title_between);
     1324    result.add(@testParseCmdLine_Title_between_withSpace);
     1325
    9901326    result.add(@testParseCmdLine_WindowPos);
    9911327    result.add(@testParseCmdLine_WindowPosPercentage);
     1328
    9921329    result.add(@testParseCmdLine_Topic);
     1330
     1331    result.add(@testParseCmdLine_file);
     1332    result.add(@testParseCmdLine_fileLeadingBlanks);
     1333    result.add(@testParseCmdLine_fileTrailingBlanks);
     1334    result.add(@testParseCmdLine_fileQuoted);
     1335    result.add(@testParseCmdLine_fileQuotedMissingClosedQuote);
     1336    result.add(@testParseCmdLine_fileQuotedAndText);
     1337    result.add(@testParseCmdLine_fileQuotedAndTextManyBlanks);
     1338    result.add(@testParseCmdLine_fileQuotedInside);
     1339    result.add(@testParseCmdLine_SwitchAndFileQuoted);
    9931340  END;
    9941341
Note: See TracChangeset for help on using the changeset viewer.