src/Testing/ModTest.cc
/* These functions facilitate the running a module test. Recall that each 
   module test runs through a series of class tests, ultimately the test 
   returning TRUE/FALSE on completion. However there are several additional 
   facets of module testing.

   1.) Continue Through Failed Tests: If a class test fails should testing
                                      stop or continue into the next class
   3.) Recurse Through Section Tests: If a class test fails should testing
                                      recurse into section tests for that
                                      class, displaying specific failures?
   
      Recursion Levels:   0 = Output Class   Test Pass/Fail Results
                          1 = Output Section Test Pass/Fail Results
                          2 = Output Single  Test Pass/Fail Results
                          3 = Output Single  Test Full Details

   These functions assume you want some output text from running the tests,
   otherwise you would just use the TestLevel function directly, right?      */
These functions facilitate the running a module test. Recall that each
module test runs through a series of class tests, ultimately the test
returning TRUE/FALSE on completion. However there are several additional
facets of module testing.



Recursion Levels:   0 = Output Class   Test Pass/Fail Results
1 = Output Section Test Pass/Fail Results
2 = Output Single  Test Pass/Fail Results
3 = Output Single  Test Full Details


These functions facilitate the running a module test . Recall that each module test runs through a series of class tests ultimately the test returning TRUE / FALSE on completion . However there are several additional facets of module testing . Recursion Levels : 0 = Output Class Test Pass / Fail Results 1 = Output Section Test Pass / Fail Results 2 = Output Single Test Pass / Fail Results 3 = Output Single Test Full Details
int ModTest::AskRun(ostream& ostr)
  {
  int keepon=0;
  string yn;
  cout << "\n\t" << "Proceed Through Failed Tests [y,n]? ";
  cin >> yn;
  if(yn == "y") keepon=1;
  int recurse = 1;
  cout << "\n\t" << "Failed Class Recursion Levels [0,3]? ";
  cin >> recurse;
  TestRunLevel = 0;                             
  TestClasses(ostr, 0, keepon);                 
  Header(ostr);                                 
  Results(ostr, keepon);                        
  if(!TestStatus && recurse>=1)                 
    ResRec(ostr, keepon, recurse--);		
  return TestStatus;
  }
int ModTest :: AskRun ( ostream & ostr ) { int keepon = 0 ; string yn ; cout << " \n \t " << " " ; cin >> yn ; if ( yn == " " ) keepon = 1 ; int recurse = 1 ; cout << " \n \t " << " " ; cin >> recurse ; TestRunLevel = 0 ; TestClasses ( ostr , 0 , keepon ) ; Header ( ostr ) ; Results ( ostr , keepon ) ; if ( ! TestStatus && recurse >= 1 ) ResRec ( ostr , keepon , recurse -- ) ; return TestStatus ; }
These functions facilitate the running a module test.
These functions facilitate the running a module test .
// Set testing silent // Run the class tests // Output module header // Output module results // If any class test failed // examine it in detail