;+ ; Report a test suite has begun. ; ; @param testsuite {in}{required}{type=string} name of test suite ; @keyword ntestcases {in}{required}{type=integer} number of test suites/cases ; contained by the test suite ; @keyword ntests {in}{required}{type=integer} number of tests contained in the ; hierarchy below this test suite ; @keyword level {in}{required}{type=level} level of test suite ;- pro mgtestrunner::reportTestSuiteStart, testsuite, $ ntestcases=ntestcases, $ ntests=ntests, $ level=level compile_opt strictarr end ;+ ; Report the results of a test suite. ; ; @keyword npass {in}{required}{type=integer} number of passing tests contained ; in the hierarchy below the test suite ; @keyword nfail {in}{required}{type=integer} number of failing tests contained ; in the hierarchy below the test suite ; @keyword level {in}{required}{type=integer} level of test suite ;- pro mgtestrunner::reportTestSuiteResult, npass=npass, nfail=nfail, level=level compile_opt strictarr end ;+ ; Report a test case has begun. ; ; @param testcase {in}{required}{type=string} name of test case ; @keyword ntests {in}{required}{type=integer} number of tests contained in this ; test case ; @keyword level {in}{required}{type=level} level of test case ;- pro mgtestrunner::reportTestCaseStart, testcase, ntests=ntests, level=level compile_opt strictarr end ;+ ; Report the results of a test case. ; ; @keyword npass {in}{required}{type=integer} number of passing tests ; @keyword nfail {in}{required}{type=integer} number of failing tests ; @keyword level {in}{required}{type=integer} level of test case ;- pro mgtestrunner::reportTestCaseResult, npass=npass, nfail=nfail, level=level compile_opt strictarr end ;+ ; Report the start of single test. ; ; @param testname {in}{required}{type=string} name of test ; @keyword level {in}{required}{type=integer} level of test case ;- pro mgtestrunner::reportTestStart, testname, level=level compile_opt strictarr end ;+ ; Report the result of a single test. ; ; @param msg {in}{required}{type=string} message to display when test fails ; @keyword passed {in}{required}{type=boolean} whether the test passed ;- pro mgtestrunner::reportTestResult, msg, passed=passed compile_opt strictarr end ;+ ; Free resources. ;- pro mgtestrunner::cleanup compile_opt strictarr end ;+ ; Initialize the test runner. ; ; @returns 1 for success, 0 for failure ;- function mgtestrunner::init compile_opt strictarr return, 1B end ;+ ; Define member variables. ; ; @file_comments Results for tests, test cases, and test suites are reported to ; the test runner. Each subclass of MGtestRunner displays them in ; some way MGtestRunner itself is abstract and shouldn't be ; instantiated. ; ; @field dummy needed because IDL requires at least one field ;- pro mgtestrunner__define compile_opt strictarr define = { MGtestRunner, dummy : 0L } end