#ATestContainer C 'This abstract class identifies TestContainer classes. TestContainers are a 'classes that hold different test case methods. Name r s CaseNames p String[] Result p TestResult 'The current test case R p TestResult 'The current test case Debug p b _new m [(ShowDebug)b] RunCase m (oCase)_ITestCase;(oTestResult)TestResult; SetupEach m TearDownEach m SetupContainer m TearDownContainer m #Runner C Suite p TestSuite _new m ShowTestForm m 'Show the Test Runner Form Test m [(ContainerName)s(CaseName)s(ShowDebug)b] _RunTests m (Result)TestResult;[(ContainerName)s(CaseName)s(ShowDebug)b] 'Run all tests, optional limited by Container or TestCaseName. TestResult contains . _PrintResult m (Res)TestResult; GetAllTestContainerNames M String[] #TestCase _ITestCase C 'The TestCase class is responsible for executing a specific test case. 'The test case to be executed is specified through the Name and TestContainer 'properties in the class. The Run method will call the appropriate Setup 'and TearDown methods for the test case as well as executing the test case 'method itself. Name r s 'Name of the test case Container r ATestContainer 'Reference to the test container containing the test method to be executed. _new m (sName)s(oTestContainer)ATestContainer; 'Initializes the TestCase. Used in lieu of a constructor. Run m (oTestResult)TestResult;[(ShowDebug)b] CountTestCases m i #TestSuite _ITest C 'The TestSuite class represents a suite of different tests to be run. The TestSuite contains 'a part-whole hierarchy of objects that implement the ITest interface -- 'including TestCase objects and other TestSuite objects. Executing the Run method for the 'TestSuite will execute all test cases that it contains. The TestSuite class also provides 'methods for add all test cases contained in a test container object into the suite. _new m Run m (oTestResult)TestResult;[(ShowDebug)b] 'Runs all tests contained within the collection and collects the result in the TestResult parameter. CountTestCases m i 'Number of test cases contained in the suite AddTest m (oTest)_ITest; 'Add a object implementing ITest (either a TestCase or TestSuite) to the suite. AddTestCase m (oTestCase)_ITestCase; 'Add a TestCase to the suite. AddNewTestCase m (sName)s(oTestContainer)ATestContainer; 'Create a new test case and add it to the suite. AddAllTestCases m (oTestContainer)ATestContainer; 'Create all test cases that are contained in the specified TestContainer and add them to the suite. #_GuTestErrorsAndFailures ATestContainer C TestStringFailure m TestLongFailure m TestAddError m TestAddTrace m #_GuTestExample1 ATestContainer C SetupEach m TeardownEach m TestStringNull m TestStringOk m #_GuTestExample2 ATestContainer C SetupContainer m TeardownContainer m SetupEach m TeardownEach m TestFirstTest m TestThirdTest m TestSecondTest m #_GuTestIntentionalError ATestContainer C TestError m #_ITest C Run m (Result)TestResult;[(ShowDebug)b] CountTestCases m i #_ITestCase _ITest C Name r s Container r ATestContainer