source: branches/2.20_branch/unittests/TestAssert.pas@ 471

Last change on this file since 471 was 347, checked in by RBRi, 16 years ago

copyright change

File size: 4.0 KB
Line 
1Unit TestAssert;
2
3// NewView - a new OS/2 Help Viewer
4// Copyright 2006-2009 Ronald Brill (rbri at rbri dot de)
5// This software is released under the GNU Public License - see readme.txt
6
7// Assert implementation for UnitTests
8
9Interface
10
11uses
12 SysUtils;
13
14 TYPE EAssertFailed=CLASS(Exception);
15
16 PROCEDURE assertEqualsString(aTestDescription : String; anExpectedValue : String; aRealValue : String);
17 PROCEDURE assertEqualsAnsiString(aTestDescription : String; anExpectedValue : AnsiString; aRealValue : AnsiString);
18 PROCEDURE assertEqualsInt(aTestDescription : String; anExpectedValue : INTEGER; aRealValue : INTEGER);
19 PROCEDURE assertEqualsLongWord(aTestDescription : String; anExpectedValue : LongWord; aRealValue : LongWord);
20 PROCEDURE assertTrue(aTestDescription : String; aRealValue : Boolean);
21 PROCEDURE assertFalse(aTestDescription : String; aRealValue : Boolean);
22
23
24Implementation
25
26 PROCEDURE assertEqualsString(aTestDescription : String; anExpectedValue : String; aRealValue : String);
27 VAR
28 tmpMessage : AnsiString;
29 tmpLineBreak : String;
30 BEGIN
31 if (aRealValue <> anExpectedValue) then
32 begin
33 tmpLineBreak := '';
34 if Length(anExpectedValue) > 13 then tmpLineBreak := chr(13) + chr(10) + ' ';
35
36 tmpMessage := 'Failed: ' + aTestDescription + ' Expected: ''' + tmpLineBreak;
37 tmpMessage := tmpMessage + anExpectedValue;
38 tmpMessage := tmpMessage + ''' but it was: ''' + tmpLineBreak;
39 tmpMessage := tmpMessage + aRealValue;
40 tmpMessage := tmpMessage + '''';
41 raise EAssertFailed.Create(tmpMessage);
42 end;
43 END;
44
45
46 PROCEDURE assertEqualsAnsiString(aTestDescription : String; anExpectedValue : AnsiString; aRealValue : AnsiString);
47 VAR
48 tmpMessage : AnsiString;
49 BEGIN
50 if (aRealValue <> anExpectedValue) then
51 begin
52 tmpMessage := 'Failed: ' + aTestDescription + ' Expected: ''';
53 tmpMessage := tmpMessage + anExpectedValue;
54 tmpMessage := tmpMessage + ''' but it was: ''';
55 tmpMessage := tmpMessage + aRealValue;
56 tmpMessage := tmpMessage + '''';
57 raise EAssertFailed.Create(tmpMessage);
58 end;
59 END;
60
61
62 PROCEDURE assertEqualsInt(aTestDescription : String; anExpectedValue : INTEGER; aRealValue : INTEGER);
63 VAR
64 tmpMessage : String;
65 tmpIntString : String;
66 BEGIN
67 if (aRealValue <> anExpectedValue) then
68 begin
69 tmpMessage := 'Failed: ' + aTestDescription + ' Expected: ''';
70 Str(anExpectedValue, tmpIntString);
71 tmpMessage := tmpMessage + tmpIntString;
72 tmpMessage := tmpMessage + ''' but it was: ''';
73 Str(aRealValue, tmpIntString);
74 tmpMessage := tmpMessage + tmpIntString;
75 tmpMessage := tmpMessage + '''';
76 raise EAssertFailed.Create(tmpMessage);
77 end;
78 END;
79
80
81 PROCEDURE assertEqualsLongWord(aTestDescription : String; anExpectedValue : LongWord; aRealValue : LongWord);
82 VAR
83 tmpMessage : String;
84 tmpIntString : String;
85 BEGIN
86 if (aRealValue <> anExpectedValue) then
87 begin
88 tmpMessage := 'Failed: ' + aTestDescription + ' Expected: ''';
89 Str(anExpectedValue, tmpIntString);
90 tmpMessage := tmpMessage + tmpIntString;
91 tmpMessage := tmpMessage + ''' but it was: ''';
92 Str(aRealValue, tmpIntString);
93 tmpMessage := tmpMessage + tmpIntString;
94 tmpMessage := tmpMessage + '''';
95 raise EAssertFailed.Create(tmpMessage);
96 end;
97 END;
98
99
100 PROCEDURE assertTrue(aTestDescription : String; aRealValue : Boolean);
101 VAR
102 tmpMessage : String;
103 BEGIN
104 if (not aRealValue) then
105 begin
106 tmpMessage := 'Failed: ' + aTestDescription + ' Expected: ''True';
107 tmpMessage := tmpMessage + ''' but it was: ''False''';
108 raise EAssertFailed.Create(tmpMessage);
109 end;
110 END;
111
112
113 PROCEDURE assertFalse(aTestDescription : String; aRealValue : Boolean);
114 VAR
115 tmpMessage : String;
116 BEGIN
117 if (aRealValue) then
118 begin
119 tmpMessage := 'Failed: ' + aTestDescription + ' Expected: ''False';
120 tmpMessage := tmpMessage + ''' but it was: ''True''';
121 raise EAssertFailed.Create(tmpMessage);
122 end;
123 END;
124
125end.
Note: See TracBrowser for help on using the repository browser.