source: trunk/unittests/TestAssert.pas@ 224

Last change on this file since 224 was 224, checked in by RBRi, 18 years ago

% refactoring

File size: 3.8 KB
Line 
1Unit TestAssert;
2
3// NewView - a new OS/2 Help Viewer
4// Copyright 2006-2007 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 BEGIN
30 if (aRealValue <> anExpectedValue) then
31 begin
32 tmpMessage := 'Failed: ' + aTestDescription + ' Expected: ''';
33 tmpMessage := tmpMessage + anExpectedValue;
34 tmpMessage := tmpMessage + ''' but it was: ''';
35 tmpMessage := tmpMessage + aRealValue;
36 tmpMessage := tmpMessage + '''';
37 raise EAssertFailed.Create(tmpMessage);
38 end;
39 END;
40
41
42 PROCEDURE assertEqualsAnsiString(aTestDescription : String; anExpectedValue : AnsiString; aRealValue : AnsiString);
43 VAR
44 tmpMessage : AnsiString;
45 BEGIN
46 if (aRealValue <> anExpectedValue) then
47 begin
48 tmpMessage := 'Failed: ' + aTestDescription + ' Expected: ''';
49 tmpMessage := tmpMessage + anExpectedValue;
50 tmpMessage := tmpMessage + ''' but it was: ''';
51 tmpMessage := tmpMessage + aRealValue;
52 tmpMessage := tmpMessage + '''';
53 raise EAssertFailed.Create(tmpMessage);
54 end;
55 END;
56
57
58 PROCEDURE assertEqualsInt(aTestDescription : String; anExpectedValue : INTEGER; aRealValue : INTEGER);
59 VAR
60 tmpMessage : String;
61 tmpIntString : String;
62 BEGIN
63 if (aRealValue <> anExpectedValue) then
64 begin
65 tmpMessage := 'Failed: ' + aTestDescription + ' Expected: ''';
66 Str(anExpectedValue, tmpIntString);
67 tmpMessage := tmpMessage + tmpIntString;
68 tmpMessage := tmpMessage + ''' but it was: ''';
69 Str(aRealValue, tmpIntString);
70 tmpMessage := tmpMessage + tmpIntString;
71 tmpMessage := tmpMessage + '''';
72 raise EAssertFailed.Create(tmpMessage);
73 end;
74 END;
75
76
77 PROCEDURE assertEqualsLongWord(aTestDescription : String; anExpectedValue : LongWord; aRealValue : LongWord);
78 VAR
79 tmpMessage : String;
80 tmpIntString : String;
81 BEGIN
82 if (aRealValue <> anExpectedValue) then
83 begin
84 tmpMessage := 'Failed: ' + aTestDescription + ' Expected: ''';
85 Str(anExpectedValue, tmpIntString);
86 tmpMessage := tmpMessage + tmpIntString;
87 tmpMessage := tmpMessage + ''' but it was: ''';
88 Str(aRealValue, tmpIntString);
89 tmpMessage := tmpMessage + tmpIntString;
90 tmpMessage := tmpMessage + '''';
91 raise EAssertFailed.Create(tmpMessage);
92 end;
93 END;
94
95
96 PROCEDURE assertTrue(aTestDescription : String; aRealValue : Boolean);
97 VAR
98 tmpMessage : String;
99 BEGIN
100 if (not aRealValue) then
101 begin
102 tmpMessage := 'Failed: ' + aTestDescription + ' Expected: ''True';
103 tmpMessage := tmpMessage + ''' but it was: ''False''';
104 raise EAssertFailed.Create(tmpMessage);
105 end;
106 END;
107
108
109 PROCEDURE assertFalse(aTestDescription : String; aRealValue : Boolean);
110 VAR
111 tmpMessage : String;
112 BEGIN
113 if (aRealValue) then
114 begin
115 tmpMessage := 'Failed: ' + aTestDescription + ' Expected: ''False';
116 tmpMessage := tmpMessage + ''' but it was: ''True''';
117 raise EAssertFailed.Create(tmpMessage);
118 end;
119 END;
120
121end.
Note: See TracBrowser for help on using the repository browser.