27  TEST_COMPARE(te->getName(), ==, 
"TimeEventRangeIndex (0; 0; 1)");
 
   30  TEST_COMPARE(te->getIndexStart(), ==, 0);
 
   31  TEST_COMPARE(te->getIndexStop(), ==, 0);
 
   32  TEST_COMPARE(te->getIndexStride(), ==, 1);
 
   33  TEST_COMPARE(te->getNumEvents(), ==, 1);
 
   37  TEST_COMPARE(te->isTime(1.0), ==, 
false);
 
   38  TEST_COMPARE(te->timeToNextEvent(1.0), ==, te->getDefaultTime());
 
   39  TEST_COMPARE(te->timeOfNextEvent(1.0), ==, te->getDefaultTime());
 
   40  TEST_COMPARE(te->eventInRange(1.0, 4.0), ==, 
false);
 
 
   49  TEST_COMPARE(te->getName(), ==, 
"TestName");
 
   52  TEST_COMPARE(te->getIndexStart(), ==, -1);
 
   53  TEST_COMPARE(te->getIndexStop(), ==, 10);
 
   54  TEST_COMPARE(te->getIndexStride(), ==, 2);
 
   55  TEST_COMPARE(te->getNumEvents(), ==, 6);
 
 
   64  te->setName(
"TestName");
 
   65  TEST_COMPARE(te->getName(), ==, 
"TestName");
 
   69  TEST_COMPARE(te->getIndexStart(), ==, 1);
 
   70  TEST_COMPARE(te->getIndexStop(), ==, 1);
 
   71  TEST_COMPARE(te->getIndexStride(), ==, 1);
 
   72  TEST_COMPARE(te->getNumEvents(), ==, 1);
 
   76  TEST_COMPARE(te->getIndexStart(), ==, 1);
 
   77  TEST_COMPARE(te->getIndexStop(), ==, 5);
 
   78  TEST_COMPARE(te->getIndexStride(), ==, 1);
 
   79  TEST_COMPARE(te->getNumEvents(), ==, 5);
 
   82  te->setIndexStride(2);
 
   83  TEST_COMPARE(te->getIndexStart(), ==, 1);
 
   84  TEST_COMPARE(te->getIndexStop(), ==, 5);
 
   85  TEST_COMPARE(te->getIndexStride(), ==, 2);
 
   86  TEST_COMPARE(te->getNumEvents(), ==, 3);
 
   89  te->setIndexRange(-5, 5, 3);
 
   90  TEST_COMPARE(te->getIndexStart(), ==, -5);
 
   91  TEST_COMPARE(te->getIndexStop(), ==, 5);
 
   92  TEST_COMPARE(te->getIndexStride(), ==, 3);
 
   93  TEST_COMPARE(te->getNumEvents(), ==, 4);
 
 
  101  te->setIndexStart(1);
 
  103  TEST_COMPARE(te->getIndexStart(), ==, 1);
 
  104  TEST_COMPARE(te->getIndexStop(), ==, 5);
 
  107  te->setIndexStride(-1);
 
  108  TEST_COMPARE(te->getIndexStride(), ==, 1);
 
  109  TEST_COMPARE(te->getNumEvents(), ==, 5);
 
  112  te->setIndexStride(5);
 
  113  TEST_COMPARE(te->getIndexStride(), ==, 4);
 
  114  TEST_COMPARE(te->getNumEvents(), ==, 2);
 
 
  122  te->setIndexRange(-5, 5, 3);
 
  125  TEST_COMPARE(te->isIndex(-6), ==, 
false);  
 
  126  TEST_COMPARE(te->isIndex(-5), ==, 
true);
 
  127  TEST_COMPARE(te->isIndex(-4), ==, 
false);
 
  129  TEST_COMPARE(te->isIndex(0), ==, 
false);  
 
  130  TEST_COMPARE(te->isIndex(1), ==, 
true);
 
  131  TEST_COMPARE(te->isIndex(2), ==, 
false);
 
  133  TEST_COMPARE(te->isIndex(3), ==, 
false);  
 
  134  TEST_COMPARE(te->isIndex(4), ==, 
true);
 
  135  TEST_COMPARE(te->isIndex(5), ==, 
false);
 
 
  143  te->setIndexRange(-5, 5, 3);
 
  146  TEST_COMPARE(te->indexToNextEvent(-9), ==, 4);  
 
  147  TEST_COMPARE(te->indexToNextEvent(-5), ==, 3);
 
  148  TEST_COMPARE(te->indexToNextEvent(-4), ==, 2);
 
  150  TEST_COMPARE(te->indexToNextEvent(-1), ==, 2);  
 
  151  TEST_COMPARE(te->indexToNextEvent(1), ==, 3);
 
  152  TEST_COMPARE(te->indexToNextEvent(3), ==, 1);
 
  154  TEST_COMPARE(te->indexToNextEvent(2), ==, 2);  
 
  155  TEST_COMPARE(te->indexToNextEvent(4), ==, te->getDefaultIndex() - 4);
 
  156  TEST_COMPARE(te->indexToNextEvent(8), ==, te->getDefaultIndex() - 8);
 
 
  164  te->setIndexRange(-5, 5, 3);
 
  167  TEST_COMPARE(te->indexOfNextEvent(-9), ==, -5);  
 
  168  TEST_COMPARE(te->indexOfNextEvent(-5), ==, -2);
 
  169  TEST_COMPARE(te->indexOfNextEvent(-4), ==, -2);
 
  171  TEST_COMPARE(te->indexOfNextEvent(-1), ==, 1);  
 
  172  TEST_COMPARE(te->indexOfNextEvent(1), ==, 4);
 
  173  TEST_COMPARE(te->indexOfNextEvent(3), ==, 4);
 
  175  TEST_COMPARE(te->indexOfNextEvent(2), ==, 4);  
 
  176  TEST_COMPARE(te->indexOfNextEvent(4), ==, te->getDefaultIndex());
 
  177  TEST_COMPARE(te->indexOfNextEvent(8), ==, te->getDefaultIndex());
 
 
  185  te->setIndexRange(-5, 5, 3);
 
  189  TEST_COMPARE(te->eventInRangeIndex(-9, -6), ==,
 
  191  TEST_COMPARE(te->eventInRangeIndex(-9, -5), ==, 
true);
 
  192  TEST_COMPARE(te->eventInRangeIndex(-9, -4), ==, 
true);
 
  194  TEST_COMPARE(te->eventInRangeIndex(-1, 0), ==, 
false);  
 
  195  TEST_COMPARE(te->eventInRangeIndex(-1, 1), ==, 
true);
 
  196  TEST_COMPARE(te->eventInRangeIndex(-1, 2), ==, 
true);
 
  198  TEST_COMPARE(te->eventInRangeIndex(2, 3), ==, 
false);  
 
  199  TEST_COMPARE(te->eventInRangeIndex(2, 4), ==, 
true);
 
  200  TEST_COMPARE(te->eventInRangeIndex(2, 5), ==, 
true);
 
  203  TEST_COMPARE(te->eventInRangeIndex(-6.0, -3), ==,
 
  205  TEST_COMPARE(te->eventInRangeIndex(-5.0, -3), ==, 
false);
 
  206  TEST_COMPARE(te->eventInRangeIndex(-4.0, -3), ==, 
false);
 
  208  TEST_COMPARE(te->eventInRangeIndex(-3, 0), ==, 
true);  
 
  209  TEST_COMPARE(te->eventInRangeIndex(-2, 0), ==, 
false);
 
  210  TEST_COMPARE(te->eventInRangeIndex(-1, 0), ==, 
false);
 
  212  TEST_COMPARE(te->eventInRangeIndex(3, 8), ==, 
true);  
 
  213  TEST_COMPARE(te->eventInRangeIndex(4, 8), ==, 
false);
 
  214  TEST_COMPARE(te->eventInRangeIndex(5, 8), ==, 
false);
 
 
  223  auto pl = teri->getValidParameters();
 
  225  TEST_COMPARE(pl->get<std::string>(
"Type"), ==, 
"Range Index");
 
  226  TEST_COMPARE(pl->get<std::string>(
"Name"), ==,
 
  227               "TimeEventRangeIndex (0; 0; 1)");
 
  228  TEST_COMPARE(pl->get<
int>(
"Start Index"), ==, 0);
 
  229  TEST_COMPARE(pl->get<
int>(
"Stop Index"), ==, 0);
 
  230  TEST_COMPARE(pl->get<
int>(
"Stride Index"), ==, 1);
 
  233    std::ostringstream unusedParameters;
 
  234    pl->unused(unusedParameters);
 
  235    TEST_COMPARE(unusedParameters.str(), ==, 
"");
 
 
  244  Teuchos::RCP<Teuchos::ParameterList> pl =
 
  245      Teuchos::parameterList(
"Time Event Range Index");
 
  247  pl->set(
"Name", 
"Unit Test Time Event Range Index");
 
  248  pl->set(
"Type", 
"Range Index");
 
  249  pl->set(
"Start Index", -1);
 
  250  pl->set(
"Stop Index", 11);
 
  251  pl->set(
"Stride Index", 2);
 
  254  auto teri = Tempus::createTimeEventRangeIndex<double>(pl);
 
  256  teri->describe(out, Teuchos::VERB_EXTREME);
 
  258  TEST_COMPARE(teri->getName(), ==, 
"Unit Test Time Event Range Index");
 
  259  TEST_COMPARE(teri->getType(), ==, 
"Range Index");
 
  260  TEST_COMPARE(teri->getIndexStart(), ==, -1);
 
  261  TEST_COMPARE(teri->getIndexStop(), ==, 11);
 
  262  TEST_COMPARE(teri->getIndexStride(), ==, 2);
 
  263  TEST_COMPARE(teri->getNumEvents(), ==, 7);