* Test case for undefine and define

git-svn-id: trunk@21931 -
This commit is contained in:
michael 2012-07-17 22:39:22 +00:00
parent 8b8ccb9e05
commit 60022280f0

View File

@ -181,6 +181,7 @@ type
Procedure TestTokenSeriesNoWhiteSpace;
Procedure TestTokenSeriesComments;
Procedure TestTokenSeriesNoComments;
Procedure TestDefine0;
Procedure TestDefine1;
Procedure TestDefine2;
Procedure TestDefine3;
@ -195,6 +196,7 @@ type
Procedure TestDefine12;
Procedure TestInclude;
Procedure TestInclude2;
Procedure TestUnDefine1;
Procedure TestMacro1;
procedure TestMacro2;
procedure TestMacro3;
@ -1202,6 +1204,13 @@ begin
TestTokens([tkin,tkWhitespace,tkOf,tkWhiteSpace,tkWhiteSpace,tkIdentifier],'in of {then} aninteger')
end;
procedure TTestScanner.TestDefine0;
begin
TestTokens([tkComment],'{$DEFINE NEVER}');
If FSCanner.Defines.IndexOf('NEVER')=-1 then
Fail('Define not defined');
end;
procedure TTestScanner.TestDefine1;
begin
TestTokens([tkComment],'{$IFDEF NEVER} of {$ENDIF}');
@ -1297,6 +1306,13 @@ begin
TestTokens([tkIf,tkTrue,tkThen,tkElse],'{$I myinclude.inc} else',True,False);
end;
procedure TTestScanner.TestUnDefine1;
begin
FSCanner.Defines.Add('ALWAYS');
TestTokens([tkComment],'{$UNDEF ALWAYS}');
AssertEquals('No more define',-1,FScanner.Defines.INdexOf('ALWAYS'));
end;
procedure TTestScanner.TestMacro1;
begin
FScanner.SkipWhiteSpace:=True;