fUnit 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/INSTALL +19 -0
- data/LICENSE +262 -0
- data/README +3 -0
- data/bin/funit +8 -0
- data/docs/HISTORY +20 -0
- data/docs/spiel/slides.tex +153 -0
- data/docs/why/F90testRun +43 -0
- data/docs/why/F90testRun.ps +548 -0
- data/docs/why/FluxFunctions.f90 +36 -0
- data/docs/why/FluxFunctions.f90.ps +526 -0
- data/docs/why/FluxFunctionsTS.f90 +324 -0
- data/docs/why/FluxFunctionsTS.f90.ps +1048 -0
- data/docs/why/FluxFunctionsTS.ftk +49 -0
- data/docs/why/FluxFunctionsTS.ftk.ps +554 -0
- data/docs/why/GasModel.f90 +19 -0
- data/docs/why/GasModel.f90.ps +496 -0
- data/docs/why/GasModelTS+SRC +44 -0
- data/docs/why/GasModelTS+SRC.ps +532 -0
- data/docs/why/GasModelTS.f90 +168 -0
- data/docs/why/GasModelTS.f90.ps +760 -0
- data/docs/why/GasModelTS.ftk +22 -0
- data/docs/why/GasModelTS.ftk.ps +507 -0
- data/docs/why/TestRunner.f90 +28 -0
- data/docs/why/TestRunner.f90.ps +511 -0
- data/docs/why/land2 +2 -0
- data/docs/why/landscape +2 -0
- data/docs/why/portrait +2 -0
- data/lib/clean +1 -0
- data/lib/fortran_deps.rb +109 -0
- data/lib/funit/assertions.rb +72 -0
- data/lib/funit/functions.rb +124 -0
- data/lib/funit/test_suite.rb +180 -0
- data/lib/funit.rb +25 -0
- data/lib/mklinks +5 -0
- data/tests/tc_compile.rb +30 -0
- data/tests/tc_fortran_deps.rb +167 -0
- data/tests/tc_funit.rb +104 -0
- data/tests/tc_test_suite.rb +82 -0
- data/tests/ts_funit.rb +6 -0
- metadata +85 -0
@@ -0,0 +1,22 @@
|
|
1
|
+
! $Id: GasModelTS.ftk 112 2006-04-05 11:23:45Z kleb $
|
2
|
+
|
3
|
+
real :: Pressure, Density, Energy
|
4
|
+
|
5
|
+
beginTest PerfectPZeroed
|
6
|
+
real, parameter :: zero = 0
|
7
|
+
call PerfectP( zero, zero, Pressure)
|
8
|
+
IsRealEqual( Pressure, 0 )
|
9
|
+
IsEqualWithin( Pressure, 0, 0.0000000001 )
|
10
|
+
endTest
|
11
|
+
|
12
|
+
beginTest Warbler
|
13
|
+
endTest
|
14
|
+
|
15
|
+
beginTest PerfectPKnown
|
16
|
+
real :: Density = 1
|
17
|
+
Energy = 1
|
18
|
+
call PerfectP( Density, Energy, Pressure )
|
19
|
+
IsRealEqual( Pressure, 0.4 )
|
20
|
+
IsTrue( Pressure .gt. 0 )
|
21
|
+
IsFalse( Pressure .lt. 0 )
|
22
|
+
endTest
|
@@ -0,0 +1,507 @@
|
|
1
|
+
%!PS-Adobe-3.0
|
2
|
+
%%BoundingBox: 24 24 588 768
|
3
|
+
%%Title: Enscript Output
|
4
|
+
%%For: Bil Kleb
|
5
|
+
%%Creator: GNU enscript 1.6.1
|
6
|
+
%%CreationDate: Wed Nov 7 08:22:28 2001
|
7
|
+
%%Orientation: Landscape
|
8
|
+
%%Pages: (atend)
|
9
|
+
%%DocumentMedia: Letter 612 792 0 () ()
|
10
|
+
%%DocumentNeededResources: (atend)
|
11
|
+
%%EndComments
|
12
|
+
%%BeginProlog
|
13
|
+
%%BeginResource: procset Enscript-Prolog 1.6 1
|
14
|
+
%
|
15
|
+
% Procedures.
|
16
|
+
%
|
17
|
+
|
18
|
+
/_S { % save current state
|
19
|
+
/_s save def
|
20
|
+
} def
|
21
|
+
/_R { % restore from saved state
|
22
|
+
_s restore
|
23
|
+
} def
|
24
|
+
|
25
|
+
/S { % showpage protecting gstate
|
26
|
+
gsave
|
27
|
+
showpage
|
28
|
+
grestore
|
29
|
+
} bind def
|
30
|
+
|
31
|
+
/MF { % fontname newfontname -> - make a new encoded font
|
32
|
+
/newfontname exch def
|
33
|
+
/fontname exch def
|
34
|
+
|
35
|
+
/fontdict fontname findfont def
|
36
|
+
/newfont fontdict maxlength dict def
|
37
|
+
|
38
|
+
fontdict {
|
39
|
+
exch
|
40
|
+
dup /FID eq {
|
41
|
+
% skip FID pair
|
42
|
+
pop pop
|
43
|
+
} {
|
44
|
+
% copy to the new font dictionary
|
45
|
+
exch newfont 3 1 roll put
|
46
|
+
} ifelse
|
47
|
+
} forall
|
48
|
+
|
49
|
+
newfont /FontName newfontname put
|
50
|
+
|
51
|
+
% insert only valid encoding vectors
|
52
|
+
encoding_vector length 256 eq {
|
53
|
+
newfont /Encoding encoding_vector put
|
54
|
+
} if
|
55
|
+
|
56
|
+
newfontname newfont definefont pop
|
57
|
+
} def
|
58
|
+
|
59
|
+
/SF { % fontname width height -> - set a new font
|
60
|
+
/height exch def
|
61
|
+
/width exch def
|
62
|
+
|
63
|
+
findfont
|
64
|
+
[width 0 0 height 0 0] makefont setfont
|
65
|
+
} def
|
66
|
+
|
67
|
+
/SUF { % fontname width height -> - set a new user font
|
68
|
+
/height exch def
|
69
|
+
/width exch def
|
70
|
+
|
71
|
+
/F-gs-user-font MF
|
72
|
+
/F-gs-user-font width height SF
|
73
|
+
} def
|
74
|
+
|
75
|
+
/M {moveto} bind def
|
76
|
+
/s {show} bind def
|
77
|
+
|
78
|
+
/Box { % x y w h -> - define box path
|
79
|
+
/d_h exch def /d_w exch def /d_y exch def /d_x exch def
|
80
|
+
d_x d_y moveto
|
81
|
+
d_w 0 rlineto
|
82
|
+
0 d_h rlineto
|
83
|
+
d_w neg 0 rlineto
|
84
|
+
closepath
|
85
|
+
} def
|
86
|
+
|
87
|
+
/bgs { % x y height blskip gray str -> - show string with bg color
|
88
|
+
/str exch def
|
89
|
+
/gray exch def
|
90
|
+
/blskip exch def
|
91
|
+
/height exch def
|
92
|
+
/y exch def
|
93
|
+
/x exch def
|
94
|
+
|
95
|
+
gsave
|
96
|
+
x y blskip sub str stringwidth pop height Box
|
97
|
+
gray setgray
|
98
|
+
fill
|
99
|
+
grestore
|
100
|
+
x y M str s
|
101
|
+
} def
|
102
|
+
|
103
|
+
% Highlight bars.
|
104
|
+
/highlight_bars { % nlines lineheight output_y_margin gray -> -
|
105
|
+
gsave
|
106
|
+
setgray
|
107
|
+
/ymarg exch def
|
108
|
+
/lineheight exch def
|
109
|
+
/nlines exch def
|
110
|
+
|
111
|
+
% This 2 is just a magic number to sync highlight lines to text.
|
112
|
+
0 d_header_y ymarg sub 2 sub translate
|
113
|
+
|
114
|
+
/cw d_output_w cols div def
|
115
|
+
/nrows d_output_h ymarg 2 mul sub lineheight div cvi def
|
116
|
+
|
117
|
+
% for each column
|
118
|
+
0 1 cols 1 sub {
|
119
|
+
cw mul /xp exch def
|
120
|
+
|
121
|
+
% for each rows
|
122
|
+
0 1 nrows 1 sub {
|
123
|
+
/rn exch def
|
124
|
+
rn lineheight mul neg /yp exch def
|
125
|
+
rn nlines idiv 2 mod 0 eq {
|
126
|
+
% Draw highlight bar. 4 is just a magic indentation.
|
127
|
+
xp 4 add yp cw 8 sub lineheight neg Box fill
|
128
|
+
} if
|
129
|
+
} for
|
130
|
+
} for
|
131
|
+
|
132
|
+
grestore
|
133
|
+
} def
|
134
|
+
|
135
|
+
% Line highlight bar.
|
136
|
+
/line_highlight { % x y width height gray -> -
|
137
|
+
gsave
|
138
|
+
/gray exch def
|
139
|
+
Box gray setgray fill
|
140
|
+
grestore
|
141
|
+
} def
|
142
|
+
|
143
|
+
% Column separator lines.
|
144
|
+
/column_lines {
|
145
|
+
gsave
|
146
|
+
.1 setlinewidth
|
147
|
+
0 d_footer_h translate
|
148
|
+
/cw d_output_w cols div def
|
149
|
+
1 1 cols 1 sub {
|
150
|
+
cw mul 0 moveto
|
151
|
+
0 d_output_h rlineto stroke
|
152
|
+
} for
|
153
|
+
grestore
|
154
|
+
} def
|
155
|
+
|
156
|
+
% Column borders.
|
157
|
+
/column_borders {
|
158
|
+
gsave
|
159
|
+
.1 setlinewidth
|
160
|
+
0 d_footer_h moveto
|
161
|
+
0 d_output_h rlineto
|
162
|
+
d_output_w 0 rlineto
|
163
|
+
0 d_output_h neg rlineto
|
164
|
+
closepath stroke
|
165
|
+
grestore
|
166
|
+
} def
|
167
|
+
|
168
|
+
% Do the actual underlay drawing
|
169
|
+
/draw_underlay {
|
170
|
+
ul_style 0 eq {
|
171
|
+
ul_str true charpath stroke
|
172
|
+
} {
|
173
|
+
ul_str show
|
174
|
+
} ifelse
|
175
|
+
} def
|
176
|
+
|
177
|
+
% Underlay
|
178
|
+
/underlay { % - -> -
|
179
|
+
gsave
|
180
|
+
0 d_page_h translate
|
181
|
+
d_page_h neg d_page_w atan rotate
|
182
|
+
|
183
|
+
ul_gray setgray
|
184
|
+
ul_font setfont
|
185
|
+
/dw d_page_h dup mul d_page_w dup mul add sqrt def
|
186
|
+
ul_str stringwidth pop dw exch sub 2 div ul_h_ptsize -2 div moveto
|
187
|
+
draw_underlay
|
188
|
+
grestore
|
189
|
+
} def
|
190
|
+
|
191
|
+
/user_underlay { % - -> -
|
192
|
+
gsave
|
193
|
+
ul_x ul_y translate
|
194
|
+
ul_angle rotate
|
195
|
+
ul_gray setgray
|
196
|
+
ul_font setfont
|
197
|
+
0 0 ul_h_ptsize 2 div sub moveto
|
198
|
+
draw_underlay
|
199
|
+
grestore
|
200
|
+
} def
|
201
|
+
|
202
|
+
% Page prefeed
|
203
|
+
/page_prefeed { % bool -> -
|
204
|
+
statusdict /prefeed known {
|
205
|
+
statusdict exch /prefeed exch put
|
206
|
+
} {
|
207
|
+
pop
|
208
|
+
} ifelse
|
209
|
+
} def
|
210
|
+
|
211
|
+
% Wrapped line markers
|
212
|
+
/wrapped_line_mark { % x y charwith charheight type -> -
|
213
|
+
/type exch def
|
214
|
+
/h exch def
|
215
|
+
/w exch def
|
216
|
+
/y exch def
|
217
|
+
/x exch def
|
218
|
+
|
219
|
+
type 2 eq {
|
220
|
+
% Black boxes (like TeX does)
|
221
|
+
gsave
|
222
|
+
0 setlinewidth
|
223
|
+
x w 4 div add y M
|
224
|
+
0 h rlineto w 2 div 0 rlineto 0 h neg rlineto
|
225
|
+
closepath fill
|
226
|
+
grestore
|
227
|
+
} {
|
228
|
+
type 3 eq {
|
229
|
+
% Small arrows
|
230
|
+
gsave
|
231
|
+
.2 setlinewidth
|
232
|
+
x w 2 div add y h 2 div add M
|
233
|
+
w 4 div 0 rlineto
|
234
|
+
x w 4 div add y lineto stroke
|
235
|
+
|
236
|
+
x w 4 div add w 8 div add y h 4 div add M
|
237
|
+
x w 4 div add y lineto
|
238
|
+
w 4 div h 8 div rlineto stroke
|
239
|
+
grestore
|
240
|
+
} {
|
241
|
+
% do nothing
|
242
|
+
} ifelse
|
243
|
+
} ifelse
|
244
|
+
} def
|
245
|
+
|
246
|
+
% EPSF import.
|
247
|
+
|
248
|
+
/BeginEPSF {
|
249
|
+
/b4_Inc_state save def % Save state for cleanup
|
250
|
+
/dict_count countdictstack def % Count objects on dict stack
|
251
|
+
/op_count count 1 sub def % Count objects on operand stack
|
252
|
+
userdict begin
|
253
|
+
/showpage { } def
|
254
|
+
0 setgray 0 setlinecap
|
255
|
+
1 setlinewidth 0 setlinejoin
|
256
|
+
10 setmiterlimit [ ] 0 setdash newpath
|
257
|
+
/languagelevel where {
|
258
|
+
pop languagelevel
|
259
|
+
1 ne {
|
260
|
+
false setstrokeadjust false setoverprint
|
261
|
+
} if
|
262
|
+
} if
|
263
|
+
} bind def
|
264
|
+
|
265
|
+
/EndEPSF {
|
266
|
+
count op_count sub { pos } repeat % Clean up stacks
|
267
|
+
countdictstack dict_count sub { end } repeat
|
268
|
+
b4_Inc_state restore
|
269
|
+
} bind def
|
270
|
+
|
271
|
+
% Check PostScript language level.
|
272
|
+
/languagelevel where {
|
273
|
+
pop /gs_languagelevel languagelevel def
|
274
|
+
} {
|
275
|
+
/gs_languagelevel 1 def
|
276
|
+
} ifelse
|
277
|
+
%%EndResource
|
278
|
+
%%BeginResource: procset Enscript-Encoding-88591 1.6 1
|
279
|
+
/encoding_vector [
|
280
|
+
/.notdef /.notdef /.notdef /.notdef
|
281
|
+
/.notdef /.notdef /.notdef /.notdef
|
282
|
+
/.notdef /.notdef /.notdef /.notdef
|
283
|
+
/.notdef /.notdef /.notdef /.notdef
|
284
|
+
/.notdef /.notdef /.notdef /.notdef
|
285
|
+
/.notdef /.notdef /.notdef /.notdef
|
286
|
+
/.notdef /.notdef /.notdef /.notdef
|
287
|
+
/.notdef /.notdef /.notdef /.notdef
|
288
|
+
/space /exclam /quotedbl /numbersign
|
289
|
+
/dollar /percent /ampersand /quoteright
|
290
|
+
/parenleft /parenright /asterisk /plus
|
291
|
+
/comma /hyphen /period /slash
|
292
|
+
/zero /one /two /three
|
293
|
+
/four /five /six /seven
|
294
|
+
/eight /nine /colon /semicolon
|
295
|
+
/less /equal /greater /question
|
296
|
+
/at /A /B /C
|
297
|
+
/D /E /F /G
|
298
|
+
/H /I /J /K
|
299
|
+
/L /M /N /O
|
300
|
+
/P /Q /R /S
|
301
|
+
/T /U /V /W
|
302
|
+
/X /Y /Z /bracketleft
|
303
|
+
/backslash /bracketright /asciicircum /underscore
|
304
|
+
/quoteleft /a /b /c
|
305
|
+
/d /e /f /g
|
306
|
+
/h /i /j /k
|
307
|
+
/l /m /n /o
|
308
|
+
/p /q /r /s
|
309
|
+
/t /u /v /w
|
310
|
+
/x /y /z /braceleft
|
311
|
+
/bar /braceright /tilde /.notdef
|
312
|
+
/.notdef /.notdef /.notdef /.notdef
|
313
|
+
/.notdef /.notdef /.notdef /.notdef
|
314
|
+
/.notdef /.notdef /.notdef /.notdef
|
315
|
+
/.notdef /.notdef /.notdef /.notdef
|
316
|
+
/.notdef /.notdef /.notdef /.notdef
|
317
|
+
/.notdef /.notdef /.notdef /.notdef
|
318
|
+
/.notdef /.notdef /.notdef /.notdef
|
319
|
+
/.notdef /.notdef /.notdef /.notdef
|
320
|
+
/space /exclamdown /cent /sterling
|
321
|
+
/currency /yen /brokenbar /section
|
322
|
+
/dieresis /copyright /ordfeminine /guillemotleft
|
323
|
+
/logicalnot /hyphen /registered /macron
|
324
|
+
/degree /plusminus /twosuperior /threesuperior
|
325
|
+
/acute /mu /paragraph /bullet
|
326
|
+
/cedilla /onesuperior /ordmasculine /guillemotright
|
327
|
+
/onequarter /onehalf /threequarters /questiondown
|
328
|
+
/Agrave /Aacute /Acircumflex /Atilde
|
329
|
+
/Adieresis /Aring /AE /Ccedilla
|
330
|
+
/Egrave /Eacute /Ecircumflex /Edieresis
|
331
|
+
/Igrave /Iacute /Icircumflex /Idieresis
|
332
|
+
/Eth /Ntilde /Ograve /Oacute
|
333
|
+
/Ocircumflex /Otilde /Odieresis /multiply
|
334
|
+
/Oslash /Ugrave /Uacute /Ucircumflex
|
335
|
+
/Udieresis /Yacute /Thorn /germandbls
|
336
|
+
/agrave /aacute /acircumflex /atilde
|
337
|
+
/adieresis /aring /ae /ccedilla
|
338
|
+
/egrave /eacute /ecircumflex /edieresis
|
339
|
+
/igrave /iacute /icircumflex /idieresis
|
340
|
+
/eth /ntilde /ograve /oacute
|
341
|
+
/ocircumflex /otilde /odieresis /divide
|
342
|
+
/oslash /ugrave /uacute /ucircumflex
|
343
|
+
/udieresis /yacute /thorn /ydieresis
|
344
|
+
] def
|
345
|
+
%%EndResource
|
346
|
+
%%EndProlog
|
347
|
+
%%BeginSetup
|
348
|
+
%%IncludeResource: font Times-Roman
|
349
|
+
%%IncludeResource: font Courier-Bold
|
350
|
+
/HFpt_w 10 def
|
351
|
+
/HFpt_h 10 def
|
352
|
+
/Courier-Bold /HF-gs-font MF
|
353
|
+
/HF /HF-gs-font findfont [HFpt_w 0 0 HFpt_h 0 0] makefont def
|
354
|
+
/Times-Roman /F-gs-font MF
|
355
|
+
/F-gs-font 14 14 SF
|
356
|
+
/#copies 1 def
|
357
|
+
% Pagedevice definitions:
|
358
|
+
gs_languagelevel 1 gt {
|
359
|
+
<<
|
360
|
+
/PageSize [612 792]
|
361
|
+
>> setpagedevice
|
362
|
+
} if
|
363
|
+
%%BeginResource: procset Enscript-Header-enscript 1.6 1
|
364
|
+
%%IncludeResource: font Times-Bold
|
365
|
+
|
366
|
+
% Fonts.
|
367
|
+
/Times-Bold /HeaderFont-Bold MF
|
368
|
+
/HeaderDateF /HeaderFont-Bold findfont 12 scalefont def
|
369
|
+
|
370
|
+
/Times-Roman /HeaderFont-Times MF
|
371
|
+
/HeaderHDRF /HeaderFont-Times findfont 14 scalefont def
|
372
|
+
|
373
|
+
/HeaderPageNumF /Helvetica-Bold findfont 28.8 scalefont def
|
374
|
+
|
375
|
+
/do_header { % print enscript header
|
376
|
+
gsave
|
377
|
+
d_header_x d_header_y translate
|
378
|
+
|
379
|
+
% light bar
|
380
|
+
0 0 d_header_w d_header_h 2 div Box
|
381
|
+
.95 setgray fill
|
382
|
+
|
383
|
+
% dark gray boxes
|
384
|
+
/dbw d_header_h 2 mul def % dark box width
|
385
|
+
/dbc .7 def % dark box color
|
386
|
+
|
387
|
+
% left dark box.
|
388
|
+
0 0 dbw d_header_h Box
|
389
|
+
dbc setgray fill
|
390
|
+
|
391
|
+
0 setgray
|
392
|
+
HeaderDateF setfont
|
393
|
+
moddatestr dup stringwidth pop dbw exch sub 2 div
|
394
|
+
d_header_h 2 div 2 add moveto show
|
395
|
+
modtimestr dup stringwidth pop dbw exch sub 2 div
|
396
|
+
d_header_h 5 div moveto show
|
397
|
+
|
398
|
+
% right dark box
|
399
|
+
d_header_w dbw sub 0 dbw d_header_h Box
|
400
|
+
dbc setgray fill
|
401
|
+
|
402
|
+
HeaderPageNumF setfont
|
403
|
+
1 setgray
|
404
|
+
pagenumstr dup
|
405
|
+
stringwidth pop dbw exch sub 2 div d_header_w dbw sub add
|
406
|
+
d_header_h .2 mul moveto show
|
407
|
+
|
408
|
+
% filename
|
409
|
+
0 setgray
|
410
|
+
HeaderHDRF setfont
|
411
|
+
d_header_w fname stringwidth pop sub 2 div d_header_h 8 div moveto
|
412
|
+
fname show
|
413
|
+
|
414
|
+
% user supplied header string.
|
415
|
+
user_header_p {
|
416
|
+
/h d_header_h 8 div 5 mul def
|
417
|
+
|
418
|
+
% Implement strict enscript compatibility.
|
419
|
+
user_header_center_str () eq user_header_right_str () eq and {
|
420
|
+
d_header_w user_header_left_str stringwidth pop sub 2 div
|
421
|
+
h moveto user_header_left_str show
|
422
|
+
} {
|
423
|
+
dbw 5 add h moveto user_header_left_str show
|
424
|
+
|
425
|
+
d_header_w user_header_center_str stringwidth pop sub 2 div
|
426
|
+
h moveto user_header_center_str show
|
427
|
+
|
428
|
+
d_header_w dbw sub 5 sub user_header_right_str stringwidth pop
|
429
|
+
sub h moveto user_header_right_str show
|
430
|
+
} ifelse
|
431
|
+
} if
|
432
|
+
|
433
|
+
grestore
|
434
|
+
} def
|
435
|
+
%%EndResource
|
436
|
+
/d_page_w 744 def
|
437
|
+
/d_page_h 564 def
|
438
|
+
/d_header_x 0 def
|
439
|
+
/d_header_y 528 def
|
440
|
+
/d_header_w 744 def
|
441
|
+
/d_header_h 36 def
|
442
|
+
/d_footer_x 0 def
|
443
|
+
/d_footer_y 0 def
|
444
|
+
/d_footer_w 744 def
|
445
|
+
/d_footer_h 0 def
|
446
|
+
/d_output_w 744 def
|
447
|
+
/d_output_h 528 def
|
448
|
+
/cols 1 def
|
449
|
+
%%EndSetup
|
450
|
+
%%Page: (1) 1
|
451
|
+
%%BeginPageSetup
|
452
|
+
_S
|
453
|
+
90 rotate
|
454
|
+
24 -588 translate
|
455
|
+
/pagenum 1 def
|
456
|
+
/fname (GasModelTS.ftk) def
|
457
|
+
/fdir () def
|
458
|
+
/ftail (GasModelTS.ftk) def
|
459
|
+
% User defined strings:
|
460
|
+
/pagenumstr (1) def
|
461
|
+
/moddatestr (11/07/01) def
|
462
|
+
/modtimestr (08:09:11) def
|
463
|
+
/user_header_p false def
|
464
|
+
%%EndPageSetup
|
465
|
+
do_header
|
466
|
+
5 511 M
|
467
|
+
(! $Id: GasModelTS.ftk.ps 112 2006-04-05 11:23:45Z kleb $) s
|
468
|
+
5 481 M
|
469
|
+
( real :: Pressure, Density, Energy) s
|
470
|
+
5 451 M
|
471
|
+
(beginTest PerfectPZeroed) s
|
472
|
+
5 436 M
|
473
|
+
( real, parameter :: zero = 0) s
|
474
|
+
5 421 M
|
475
|
+
( call PerfectP\( zero, zero, Pressure\)) s
|
476
|
+
5 406 M
|
477
|
+
( IsRealEqual\( Pressure, 0 \)) s
|
478
|
+
5 391 M
|
479
|
+
( IsEqualWithin\( Pressure, 0, 0.0000000001 \)) s
|
480
|
+
5 376 M
|
481
|
+
(endTest) s
|
482
|
+
5 346 M
|
483
|
+
(beginTest Warbler) s
|
484
|
+
5 331 M
|
485
|
+
(endTest) s
|
486
|
+
5 301 M
|
487
|
+
(beginTest PerfectPKnown) s
|
488
|
+
5 286 M
|
489
|
+
( real :: Density = 1) s
|
490
|
+
5 271 M
|
491
|
+
( Energy = 1) s
|
492
|
+
5 256 M
|
493
|
+
( call PerfectP\( Density, Energy, Pressure \)) s
|
494
|
+
5 241 M
|
495
|
+
( IsRealEqual\( Pressure, 0.4 \)) s
|
496
|
+
5 226 M
|
497
|
+
( IsTrue\( Pressure .gt. 0 \)) s
|
498
|
+
5 211 M
|
499
|
+
( IsFalse\( Pressure .lt. 0 \)) s
|
500
|
+
5 196 M
|
501
|
+
(endTest) s
|
502
|
+
_R
|
503
|
+
S
|
504
|
+
%%Trailer
|
505
|
+
%%Pages: 1
|
506
|
+
%%DocumentNeededResources: font Times-Roman Courier-Bold Times-Bold
|
507
|
+
%%EOF
|
@@ -0,0 +1,28 @@
|
|
1
|
+
! TestRunner.f90 - runs Fortran mobility test suites
|
2
|
+
!
|
3
|
+
! [Dynamically generated by FTKtest Ruby script Wed Nov 07 07:53:00 EST 2001.]
|
4
|
+
|
5
|
+
program TestRunner
|
6
|
+
|
7
|
+
use GasModelTS
|
8
|
+
use FluxFunctionsTS
|
9
|
+
|
10
|
+
implicit none
|
11
|
+
|
12
|
+
integer :: numTests, numAsserts, numAssertsTested, numFailures
|
13
|
+
|
14
|
+
print *, ""
|
15
|
+
print *, "GasModel test suite:"
|
16
|
+
call TSGasModel( numTests, numAsserts, numAssertsTested, numFailures )
|
17
|
+
print *, "Completed", numTests-numFailures, "of", numTests, &
|
18
|
+
"tests comprising", numAssertsTested, "of", numAsserts, "possible asserts."
|
19
|
+
|
20
|
+
print *, ""
|
21
|
+
print *, "FluxFunctions test suite:"
|
22
|
+
call TSFluxFunctions( numTests, numAsserts, numAssertsTested, numFailures )
|
23
|
+
print *, "Completed", numTests-numFailures, "of", numTests, &
|
24
|
+
"tests comprising", numAssertsTested, "of", numAsserts, "possible asserts."
|
25
|
+
|
26
|
+
print *, ""
|
27
|
+
|
28
|
+
end program TestRunner
|