Qore QUnit Module Reference 0.4.3
Loading...
Searching...
No Matches
QUnit.qm.dox.h
1// -*- mode: c++; indent-tabs-mode: nil -*-
3
4/* QUnit.qm Copyright (C) 2013 - 2023 Qore Technologies, s.r.o.
5
6 Permission is hereby granted, free of charge, to any person obtaining a
7 copy of this software and associated documentation files (the "Software"),
8 to deal in the Software without restriction, including without limitation
9 the rights to use, copy, modify, merge, publish, distribute, sublicense,
10 and/or sell copies of the Software, and to permit persons to whom the
11 Software is furnished to do so, subject to the following conditions:
12
13 The above copyright notice and this permission notice shall be included in
14 all copies or substantial portions of the Software.
15
16 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19 AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20 LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
21 FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
22 DEALINGS IN THE SOFTWARE.
23*/
24
25
26
27
28
29
30
205namespace QUnit {}
206
209
210public:
211 string m_type;
212 *string m_subType;
213 auto m_value;
214 constructor(string type);
215
216 constructor(string type, string subType);
217
218 // test
219 abstract bool equals(AbstractTestResult r); abstract string toString();};
220
223
224public:
225 constructor() ;
226
227
230
231 string toString();
232};
233
236
237public:
238protected:
239 *string m_detail;
240
241public:
242
245
246
248 constructor(string s) ;
249
250
253
254 string toString();
255};
256
259
260public:
261 constructor(auto value) ;
262
263
266
267 string toString();
268};
269
272
273public:
274 constructor(hash<auto> value) ;
275
276
277 bool equals(QUnit::AbstractTestResult r);
278
279 string toString();
280};
281
284
285public:
288
290
293 constructor(string exceptionType) ;
294
295
297protected:
298 constructor(string exceptionType, string subType) ;
299public:
300
301
304
306 string toString();
307};
308
311
312public:
313protected:
314 string m_exceptionDetail;
315
316public:
317
319
322 constructor(string exceptionType, string exceptionDetail) ;
323
324
327
328 string toString();
329
330 string getDetail();
331
332};
333
336
337public:
338protected:
339 string m_exceptionRegexp;
340
341public:
342
343 constructor(string exceptionType, string exceptionRegexp) ;
344
345
348
349 string toString();
350};
351
354
355public:
356 constructor(string exceptionType, string exceptionSubstring) ;
357
358
359 string toString();
360};
361
364
365public:
366protected:
368 string m_name;
369
371 code m_code;
372
374 *list<auto> m_args;
375
377 int num_asserts = 0;
378
381
384
387
388public:
389
391 constructor(string name, code code, *softlist<auto> args);
392
393
396
397
398 static list<auto> getStackList(list stack, bool ok = False);
399
400 static string getPos(hash<auto> ex);
401
403 checkException(QUnit::Test test, hash<auto> e);
404
405
407 string getName();
408
409
410 incAssertions();
411
412
413 incAssertionsOk();
414
415
416 incAssertionsSkip();
417
418
419 int getAssertionCount();
420
421
422 int getAssertionOkCount();
423
424
425 int getAssertionSkipCount();
426
427
428 setupThread();
429
430
431 restoreThread();
432
433
435 rename(string n_name);
436
437};
438
441
442public:
443protected:
444 const PLAINQUIET = 0;
445 const PLAIN = 1;
446 const JUNIT = 2;
447
448 const OUT_TYPES = ...;
449
450
451 const RESULT_TYPE_DESCRIPTION = ...;
452
453
455 const OffsetColumn = 20;
456
458 hash<string, hash<string, code>> m_printMethods;
459
460 list<hash<auto>> m_results = ();
461 int m_output;
462 *string m_comment;
463
465
469 hash<auto> m_options;
470
472 string m_name;
474 string m_version;
475
477 int num_asserts = 0;
478
481
484
486 *list<auto> new_argv;
487
488public:
489
491 const Opts = {
492 "help" : "h,help",
493 "verbose" : "v,verbose:i+",
494 "quiet" : "q,quiet",
495 "format" : "format=s",
496 };
497
498 const TEST_SUCCESS = 0;
499 const TEST_FAILURE = 1;
500 const TEST_ERROR = 2;
501 const TEST_SKIPPED = 3;
502
503protected:
504 printOption(string left, string right, int offset = OffsetColumn);
505public:
506
507
508protected:
509 usageIntern(int offset = OffsetColumn);
510public:
511
512
513protected:
514 usage();
515public:
516
517
518protected:
519 processOptions(reference<list<string>> p_argv);
520public:
521
522
524
529 constructor(string name, string version, reference<list<string>> p_argv, hash<auto> opts = Opts);
530
531
533
538 constructor(string name, string version, *list<auto> p_argv, hash<auto> opts = Opts);
539
540
542protected:
543 init(string name, string version, reference<list<string>> p_argv, hash<auto> opts = Opts);
544public:
545
546
547protected:
548 callPrinterFunction(string type, *softlist<auto> args);
549public:
550
551
552protected:
553 printHeader() { callPrinterFunction("header"); } printSummary() { callPrinterFunction("summary"); } printTestReport(hash testcase) { callPrinterFunction("testreport", testcase); }
554 printPlaintextHeader();
555
556 printPlaintextSummary();
557
558 printPlaintextOneTest(hash testcase);
559
560 printJunitSummary();
561
563 int errors();
564
565
567 int skipped();
568
569
572
573
575 addTestResult(TestCase tc, int success, *string error, *string pos, *string detail);
576
577};
578
581
582public:
583protected:
585 list<TestCase> testCases();
586
587 static QUnit::TestResultSuccess RESULT_SUCCESS = new QUnit::TestResultSuccess();
588 static QUnit::TestResultFailure RESULT_FAILURE = new QUnit::TestResultFailure();
589
590public:
591
592private:
594 const QUC_EQ = "eq";
596 const QUC_NEQ = "neq";
598 const QUC_GT = "gt";
600 const QUC_GE = "ge";
602 const QUC_LT = "lt";
604 const QUC_LE = "le";
606 const QUC_RE = "re";
608 const QUC_NRE = "nre";
609
611 const QUC_Map = ...;
612
613
615 const DEFAULT_EPSILON = 0.0000000001;
616
617public:
618
620 constructor(string name, string version, reference<list<string>> p_argv, *hash<auto> opts) ;
621
622
624 constructor(string name, string version, *list<auto> p_argv, *hash<auto> opts) ;
625
626
629
632
634 setUp() {}
635
638
640 *string getEnv(string key, *string def);
641
642
644
653 addTestCase(string name, code call, *softlist<auto> args);
654
655
657
665
666
667 string escapeSpecialChars(string str);
668
669 string escapeSpecialChars2(string str);
670
671 bool diffInSpecialCharsOnly(string a, string b);
672
674 string printUnexpectedData(auto exp, auto act, *bool neg, *bool soft_comparisons, *string comparitor);
675
676 string shorten(auto value);
677
678 compare(auto v1, auto v2, reference<list<string>> out, string path, *bool soft_comparisons);
679
680 compareHashes(hash h1, hash h2, reference<list<string>> out, string path = '', *bool soft_comparisons);
681
682 compareLists(list<auto> l1, list<auto> l2, reference<list<string>> out, string path = '', *bool soft_comparisons);
683
684//######## Assertions & test control functions
685
687
700 auto testAssertionValue(*string name, auto actual, auto expected);
701
703
714 auto testAssertionValue(*string name, number actual, number expected, number epsilon = DEFAULT_EPSILON);
715
717
728 auto testAssertionValue(*string name, float actual, float expected, float epsilon = DEFAULT_EPSILON);
730
739 assertRegex(string regex_pattern, string actual, *string name);
740
742
751 assertNRegex(string regex_pattern, string actual, *string name);
752
754
762 assertNothing(auto actual, *string name);
763
765
774 assertEqSoft(auto expected, auto actual, *string name);
775
777
786 assertNeqSoft(auto expected, auto actual, *string name);
787
789
798 assertEq(auto expected, auto actual, *string name);
799
801
810 assertNeq(auto expected, auto actual, *string name);
811
813
823 assertFloatEq(float expected, float actual, float epsilon = DEFAULT_EPSILON, *string name);
824
826
836 assertNumberEq(number expected, number actual, number epsilon = DEFAULT_EPSILON, *string name);
837
839
848 assertGtSoft(auto expected, auto actual, *string name);
849
851
860 assertGt(auto expected, auto actual, *string name);
861
863
872 assertGeSoft(auto expected, auto actual, *string name);
873
875
884 assertGe(auto expected, auto actual, *string name);
885
887
896 assertLtSoft(auto expected, auto actual, *string name);
897
899
908 assertLt(auto expected, auto actual, *string name);
909
911
920 assertLeSoft(auto expected, auto actual, *string name);
921
923
932 assertLe(auto expected, auto actual, *string name);
933
935 assertionOk(*string name);
936
938
946 assertTrue(auto actual, *string name);
947
949
957 assertFalse(auto actual, *string name);
958
960
972 assertThrows(string expectedErr, *string expectedDesc, *hash<auto> arg, code theCode, *softlist<auto> args, *string name);
973
975
986 assertThrows(string expectedErr, *string expectedDesc, code theCode, *softlist<auto> args, *string name);
987
989
999 assertThrows(string expectedErr, code theCode, *softlist<auto> args, *string name);
1000
1002
1010 assertSkip (*string name);
1011
1013 TestCase getTestCase(string meth);
1014
1015
1017
1024 fail(*string msg);
1025
1027
1034 testNullAssertion(string name, code condition, *softlist<auto> args);
1035
1037
1045 auto testAssertion(string name, code condition, *softlist<auto> args, int expectedResultValue);
1046
1048
1056 auto testAssertion(string name, code condition, *softlist<auto> args, float expectedResultValue);
1057
1059
1067 auto testAssertion(string name, code condition, *softlist<auto> args, number expectedResultValue);
1068
1070
1078 auto testAssertion(string name, code condition, *softlist<auto> args, bool expectedResultValue);
1079
1081
1089 auto testAssertion(string name, code condition, *softlist<auto> args, string expectedResultValue);
1090
1092
1100 auto testAssertion(string name, code condition, *softlist<auto> args, date expectedResultValue);
1101
1103
1111 auto testAssertion(string name, code condition, *softlist<auto> args, binary expectedResultValue);
1112
1114
1122 auto testAssertion(string name, code condition, *softlist<auto> args, hash<auto> expectedResultValue);
1123
1125
1133 auto testAssertion(string name, code condition, *softlist<auto> args, list<auto> expectedResultValue);
1134
1136
1144 auto testAssertion(string name, code condition, *softlist<auto> args, QUnit::AbstractTestResult expectedResult = new QUnit::TestResultSuccess());
1145
1146 auto testAssertionIntern(TestCase tc, string name, QUnit::AbstractTestResult actualResult, QUnit::AbstractTestResult expectedResult, auto ret, *string pos);
1147
1149
1153 testSkip(string reason);
1154
1155//######## Test conditions passable to test assertions
1156
1158
1164 bool equals(auto a, auto b);
1165
1166
1168
1174 bool notEquals(auto a, auto b);
1175
1176
1178
1184 bool regexpMatches(string s, string regexp);
1185
1186
1188
1194 bool equalsIterated(AbstractIterator a, AbstractIterator b);
1195
1196
1197//######## Main function and test running helpers
1198
1200 int main();
1201
1202
1204 static string getAssertionName(*string name);
1205
1207 static bool comparePartialHash(hash<auto> expects, auto value);
1208};
1209
1212
1213public:
1214protected:
1217
1219 Program child;
1220
1222 hash<string, Program> modules;
1223
1225 static bool instantiated = False;
1226
1227public:
1228
1230 constructor(string name, string version, reference<list<string>> p_argv, *hash<auto> opts) ;
1231
1232
1234 constructor(string name, string version, *list<auto> p_argv, *hash<auto> opts) ;
1235
1236
1237 init();
1238
1241
1244
1247
1250
1252 Program createInjectedProgram(string path);
1253
1256
1258 injectClass(string class_name, *string new_name);
1259
1261 injectFunction(string func_name, *string new_name);
1262
1264
1266 injectUserModule(string module, *code custom_setup, *code custom_parsing);
1267
1269 int main();
1270
1271
1274
1276 setReloadedParseOptions(Program p, string file_data);
1277
1280
1284 abstract string getScriptPathImpl();};
1285
1286class QUnit::DependencyInjectedTestRunner : public QUnit::Test {
1287
1288public:
1289protected:
1290 // necessary to allow the original class to run with the injected runtime class
1291 Program child;
1292
1293public:
1294
1295 // dummethods never executed in the runtime class
1296 injectClass(string name, *string new_name) {} injectFunction(string name, *string new_name) {} injectUserModule(string module, *code custom_setup, *code custom_parsing) {}
1297 constructor(string name, string version, reference<list<string>> p_argv, *hash<auto> opts) ;
1298
1299
1300 constructor(string name, string version, *list<auto> p_argv, *hash<auto> opts) ;
1301
1302};
An abstract class representing test result interface.
Definition: QUnit.qm.dox.h:208
A class representing a test with injected dependencies.
Definition: QUnit.qm.dox.h:1211
hash< string, Program > modules
a hash of user modules subject to injections
Definition: QUnit.qm.dox.h:1222
abstract performInjectionsImpl()
implement this in subclasses to perform all injections
abstract string getScriptPathImpl()
implement this in subclasses to perform all injections
reloadSelf()
override to supply the source to the current test in case it's not available on the filesystem
static bool instantiated
a flag to ensure that injections are not performed recursively
Definition: QUnit.qm.dox.h:1225
Program createInjectedProgram(string path)
creates the Program object subject to injection
performCommonInjections(Program p)
override this method to perform injections common to the primary child logic container and all user m...
performInjections()
performs injections
createProgram()
creates the main child Program object subject to injection
int main()
creates the injected program, reloads the source into it, and executes the test
setReloadedParseOptions(Program p, string file_data)
override to optionally set parse options on the reloaded source
injectFunction(string func_name, *string new_name)
injects a function
int getParseOptions()
override this method to affect the parse options that Program objects subject to injection will get
injectClass(string class_name, *string new_name)
injects a class
injectUserModule(string module, *code custom_setup, *code custom_parsing)
performs all injections into the given user module
string getScriptPath()
Returns the path to the script to be tested.
string testedFile
the name of the script to run with injections
Definition: QUnit.qm.dox.h:1216
Program child
the child Program object subject to injections
Definition: QUnit.qm.dox.h:1219
constructor(string name, string version, *list< auto > p_argv, *hash< auto > opts)
creates the injected test object
constructor(string name, string version, reference< list< string > > p_argv, *hash< auto > opts)
creates the injected test object
reloadAndCommitProgram()
reloads the test source and finalizes and commits the injected child Program object
Class containing the configuration for a test case.
Definition: QUnit.qm.dox.h:363
checkException(QUnit::Test test, hash< auto > e)
handles exceptions raised while running the TestCase
auto saved_tc
any saved test case
Definition: QUnit.qm.dox.h:386
*list< auto > m_args
arguments to the above callable object
Definition: QUnit.qm.dox.h:374
code m_code
the body of the test case
Definition: QUnit.qm.dox.h:371
string m_name
the name of the test case
Definition: QUnit.qm.dox.h:368
string getName()
returns the test case name
int num_asserts_ok
number of successful assertions in current test case
Definition: QUnit.qm.dox.h:380
int num_asserts
number of assertions in current test case
Definition: QUnit.qm.dox.h:377
rename(string n_name)
renames the test case
constructor(string name, code code, *softlist< auto > args)
creates the TestCase object from the given arguments
run(QUnit::Test test)
runs the TestCase
int num_asserts_skip
number of skipped assertions in current test case
Definition: QUnit.qm.dox.h:383
Base class representing a simple test, implements an implicit main() function and all utility functio...
Definition: QUnit.qm.dox.h:580
const QUC_NRE
negative regex comparitor
Definition: QUnit.qm.dox.h:608
assertLe(auto expected, auto actual, *string name)
Tests that a value is less than or equal to an expected value with hard comparisons (types may not di...
int main()
Run the whole suite, report results.
const QUC_LE
greater than or equals comparitor
Definition: QUnit.qm.dox.h:604
fail(*string msg)
Fails the test unconditionally.
assertGt(auto expected, auto actual, *string name)
Tests that a value is greater than an expected value with hard comparisons (types may not differ)
bool regexpMatches(string s, string regexp)
Compare a string for match against a regexp.
assertNumberEq(number expected, number actual, number epsilon=DEFAULT_EPSILON, *string name)
Tests a number value for equality to an expected value with an allowed error.
auto testAssertion(string name, code condition, *softlist< auto > args, float expectedResultValue)
Tests for a single assertion for a call returning a floating-point value and returns the value genera...
tearDown()
Prototype function for cleaning up test environemnt. It will be called after each test has executed.
Definition: QUnit.qm.dox.h:637
assertionOk(*string name)
process an ok assertion
auto testAssertionValue(*string name, number actual, number expected, number epsilon=DEFAULT_EPSILON)
Tests a value for equality to an expected value of number type.
static bool comparePartialHash(hash< auto > expects, auto value)
Returns True if the keys given in the first hash match those in the second hash.
const QUC_NEQ
inequality comparitor
Definition: QUnit.qm.dox.h:596
auto testAssertion(string name, code condition, *softlist< auto > args, number expectedResultValue)
Tests for a single assertion for a call returning an arbitrary-precision numeric value and returns th...
globalSetUp()
global setup; will be called once before tests are run
Definition: QUnit.qm.dox.h:628
auto testAssertion(string name, code condition, *softlist< auto > args, binary expectedResultValue)
Tests for a single assertion for a call returning a binary value and returns the value generated.
auto testAssertion(string name, code condition, *softlist< auto > args, list< auto > expectedResultValue)
Tests for a single assertion for a call returning a list value and returns the value generated.
const DEFAULT_EPSILON
default epsilon for number/float comparison
Definition: QUnit.qm.dox.h:615
setUp()
Prototype function for setting up test environment. It will be called for each test individually.
Definition: QUnit.qm.dox.h:634
constructor(string name, string version, reference< list< string > > p_argv, *hash< auto > opts)
creates the object and sets the name of the test
auto testAssertion(string name, code condition, *softlist< auto > args, int expectedResultValue)
Tests for a single assertion for a call returning an integer value and returns the value generated.
auto testAssertion(string name, code condition, *softlist< auto > args, bool expectedResultValue)
Tests for a single assertion for a call returning a boolean value and returns the value generated.
testSkip(string reason)
Skips a given test, eg. because it may be missing some dependencies.
assertThrows(string expectedErr, *string expectedDesc, code theCode, *softlist< auto > args, *string name)
Tests that a piece of code throws an exception with given description.
assertSkip(*string name)
Skips assertion on purpose.
constructor(string name, string version, *list< auto > p_argv, *hash< auto > opts)
creates the object and sets the name of the test
globalTearDown()
global tear down; will be called once after all tests are run
Definition: QUnit.qm.dox.h:631
assertNRegex(string regex_pattern, string actual, *string name)
Tests that a test value does not pass a regular expression match.
TestCase getTestCase(string meth)
returns the current test case
bool equals(auto a, auto b)
Compare two values for equality.
auto testAssertion(string name, code condition, *softlist< auto > args, string expectedResultValue)
Tests for a single assertion for a call returning a string value and returns the value generated.
const QUC_LT
greater than comparitor
Definition: QUnit.qm.dox.h:602
bool notEquals(auto a, auto b)
Compare two values for inequality.
const QUC_GT
greater than comparitor
Definition: QUnit.qm.dox.h:598
auto testAssertionValue(*string name, float actual, float expected, float epsilon=DEFAULT_EPSILON)
Tests a value for equality to an expected value of float type.
auto testAssertion(string name, code condition, *softlist< auto > args, QUnit::AbstractTestResult expectedResult=new QUnit::TestResultSuccess())
Tests for a single assertion and returns the value generated.
bool equalsIterated(AbstractIterator a, AbstractIterator b)
Compare two iterables, item by item, for equality of each index.
assertFloatEq(float expected, float actual, float epsilon=DEFAULT_EPSILON, *string name)
Tests a float value for equality to an expected value with an allowed error.
assertGtSoft(auto expected, auto actual, *string name)
Tests that a value is greater than an expected value with soft comparisons (types may differ)
assertLt(auto expected, auto actual, *string name)
Tests that a value is less than an expected value with hard comparisons (types may not differ)
assertEq(auto expected, auto actual, *string name)
Tests a value for equality to an expected value with hard comparisons (types and values must be ident...
assertGe(auto expected, auto actual, *string name)
Tests that a value is greater than or equal to an expected value with hard comparisons (types may not...
assertThrows(string expectedErr, code theCode, *softlist< auto > args, *string name)
Tests that a piece of code throws an exception.
auto testAssertion(string name, code condition, *softlist< auto > args, hash< auto > expectedResultValue)
Tests for a single assertion for a call returning a hash value and returns the value generated.
assertGeSoft(auto expected, auto actual, *string name)
Tests that a value is greater than or equal to than an expected value with soft comparisons (types ma...
*string getEnv(string key, *string def)
facade for the system environment variables
assertThrows(string expectedErr, *string expectedDesc, *hash< auto > arg, code theCode, *softlist< auto > args, *string name)
Tests that a piece of code throws an exception with given description and exception arg keys.
assertNothing(auto actual, *string name)
Tests for no value.
assertTrue(auto actual, *string name)
Tests a boolean value.
const QUC_GE
greater than or equals comparitor
Definition: QUnit.qm.dox.h:600
const QUC_Map
comparitor info
Definition: QUnit.qm.dox.h:611
addTestCase(QUnit::TestCase tc)
adds a test case to run
list< TestCase > testCases()
list of test cases
assertEqSoft(auto expected, auto actual, *string name)
Tests a value for equality to an expected value with soft comparisons (types may differ)
assertNeq(auto expected, auto actual, *string name)
Tests a value for inequality to an expected value with hard comparisons (types and values must be ide...
auto testAssertion(string name, code condition, *softlist< auto > args, date expectedResultValue)
Tests for a single assertion for a call returning a date value and returns the value generated.
assertLeSoft(auto expected, auto actual, *string name)
Tests that a value is less than or equal to than an expected value with soft comparisons (types may d...
assertNeqSoft(auto expected, auto actual, *string name)
Tests a value for inequality to an expected value with soft comparisons (types may differ)
string printUnexpectedData(auto exp, auto act, *bool neg, *bool soft_comparisons, *string comparitor)
Helper function for printing out human-readable comparison of two values.
static string getAssertionName(*string name)
returns the assertion name for display purposes
const QUC_EQ
equality comparitor
Definition: QUnit.qm.dox.h:594
assertLtSoft(auto expected, auto actual, *string name)
Tests that a value is less than an expected value with soft comparisons (types may differ)
testNullAssertion(string name, code condition, *softlist< auto > args)
Tests for a single assertion for a call returning no value (for example, to ensure that the call does...
const QUC_RE
regex comparitor
Definition: QUnit.qm.dox.h:606
auto testAssertionValue(*string name, auto actual, auto expected)
Tests a value for equality to an expected value.
assertFalse(auto actual, *string name)
Tests a boolean value.
addTestCase(string name, code call, *softlist< auto > args)
adds a test case to run
assertRegex(string regex_pattern, string actual, *string name)
Tests that a test value passes a regular expression match.
Base class for collecting test results and reporting.
Definition: QUnit.qm.dox.h:440
int num_asserts_skip
total number of skipped assertions in script
Definition: QUnit.qm.dox.h:483
const OffsetColumn
the default column offset for printing options used in printOption() and usageIntern()
Definition: QUnit.qm.dox.h:455
int errors()
returns the number of errors encountered during test execution
int num_asserts
total number of assertions in script
Definition: QUnit.qm.dox.h:477
hash< string, hash< string, code > > m_printMethods
A map of print methods, categorised into three types: header, summary, testreport.
Definition: QUnit.qm.dox.h:458
constructor(string name, string version, reference< list< string > > p_argv, hash< auto > opts=Opts)
creates the object from the arguments
const Opts
default options for Qore::GetOpt::constructor()
Definition: QUnit.qm.dox.h:491
string m_name
test case name
Definition: QUnit.qm.dox.h:472
constructor(string name, string version, *list< auto > p_argv, hash< auto > opts=Opts)
creates the object from the arguments
int testCount()
returns the total number of test results
string m_version
test case version
Definition: QUnit.qm.dox.h:474
*list< auto > new_argv
new ARGV for languages that don't support lvalue references
Definition: QUnit.qm.dox.h:486
addTestResult(TestCase tc, int success, *string error, *string pos, *string detail)
adds a test result
hash< auto > m_options
the result of parsing command-line options with Qore::GetOpt::parse2()
Definition: QUnit.qm.dox.h:469
int skipped()
returns the number of tests skipped
int num_asserts_ok
total number of successful assertions in script
Definition: QUnit.qm.dox.h:480
init(string name, string version, reference< list< string > > p_argv, hash< auto > opts=Opts)
common constructor code
Class representing Exception of a particular type with a particular detail message.
Definition: QUnit.qm.dox.h:310
constructor(string exceptionType, string exceptionDetail)
creates the object from the exception arguments
bool equals(QUnit::AbstractTestResult r)
Equality operator.
string toString()
returns a string describing the exception type
Class representing Exception of a particular type and matching regexp for detail.
Definition: QUnit.qm.dox.h:335
string toString()
returns a string describing the exception type
bool equals(QUnit::AbstractTestResult r)
Equality operator.
Class representing Exception of a particular type and substring for detail.
Definition: QUnit.qm.dox.h:353
string toString()
returns a string describing the exception type
Class representing Exception of a particular type.
Definition: QUnit.qm.dox.h:283
constructor(string exceptionType)
creates the object from the exception arguments
string m_exceptionType
corresponds to the "err" key of ExceptionInfo (the first value of a throw statement)
Definition: QUnit.qm.dox.h:287
bool equals(QUnit::AbstractTestResult r)
Equality operator.
string toString()
returns a string describing the exception type
constructor(string exceptionType, string subType)
private constructor for subclasses
Class representing test function failure, both unspecific and with detail.
Definition: QUnit.qm.dox.h:235
constructor()
Instantiate an unspecific failure, no detail.
constructor(string s)
Instantiate an annotated failure, string detail.
bool equals(QUnit::AbstractTestResult r)
Equality operator.
Class representing a partial match of a hash value. Common keys have to be identical.
Definition: QUnit.qm.dox.h:271
Class representing boolean True.
Definition: QUnit.qm.dox.h:222
bool equals(QUnit::AbstractTestResult r)
Equality operator.
Class representing any non-boolean value.
Definition: QUnit.qm.dox.h:258
bool equals(QUnit::AbstractTestResult r)
Equality operator.
the main namespace for all public definitions in the QUnit module
Definition: QUnit.qm.dox.h:205