27  TEST_COMPARE(te->getName(), ==, 
"TimeEventListIndex");
 
   29  TEST_COMPARE(te->getIndexList().size(), ==, 0);
 
   31  TEST_COMPARE(te->isIndex(-1), ==, 
false);
 
   32  TEST_COMPARE(te->isIndex(0), ==, 
false);
 
   33  TEST_COMPARE(te->isIndex(1), ==, 
false);
 
   35  TEST_COMPARE(te->indexToNextEvent(0), ==, te->getDefaultIndex());
 
   36  TEST_COMPARE(te->indexOfNextEvent(0), ==, te->getDefaultIndex());
 
   37  TEST_COMPARE(te->eventInRangeIndex(2, -1), ==, 
false);
 
   41  TEST_COMPARE(te->isTime(1.0), ==, 
false);
 
   42  TEST_COMPARE(te->timeToNextEvent(1.0), ==, te->getDefaultTime());
 
   43  TEST_COMPARE(te->timeOfNextEvent(1.0), ==, te->getDefaultTime());
 
   44  TEST_COMPARE(te->eventInRange(1.0, 4.0), ==, 
false);
 
 
   51  std::vector<int> testVector;
 
   52  testVector.push_back(-2);
 
   53  testVector.push_back(0);
 
   54  testVector.push_back(7);
 
   55  testVector.push_back(3);
 
   56  testVector.push_back(-5);
 
   60  TEST_COMPARE(te->getName(), ==, 
"TestName");
 
   62  auto testList = te->getIndexList();
 
   63  TEST_COMPARE(testList.size(), ==, 5);
 
   64  TEST_COMPARE(testList[0], ==, -5);
 
   65  TEST_COMPARE(testList[1], ==, -2);
 
   66  TEST_COMPARE(testList[2], ==, 0);
 
   67  TEST_COMPARE(testList[3], ==, 3);
 
   68  TEST_COMPARE(testList[4], ==, 7);
 
   72  TEST_COMPARE(te->getIndexList().size(), ==, 5);
 
   74  TEST_COMPARE(te->getIndexList().size(), ==, 6);
 
 
   83  te->setName(
"TestName");
 
   84  TEST_COMPARE(te->getName(), ==, 
"TestName");
 
   88  TEST_COMPARE(te->isIndex(-6), ==, 
false);
 
   89  TEST_COMPARE(te->isIndex(-5), ==, 
true);
 
   90  TEST_COMPARE(te->isIndex(-4), ==, 
false);
 
   94  TEST_COMPARE(te->isIndex(0), ==, 
false);
 
   95  TEST_COMPARE(te->isIndex(1), ==, 
true);
 
   96  TEST_COMPARE(te->isIndex(2), ==, 
false);
 
  102  auto testList = te->getIndexList();
 
  103  TEST_COMPARE(testList.size(), ==, 5);
 
  104  TEST_COMPARE(testList[0], ==, -9);
 
  105  TEST_COMPARE(testList[1], ==, -5);
 
  106  TEST_COMPARE(testList[2], ==, -2);
 
  107  TEST_COMPARE(testList[3], ==, 1);
 
  108  TEST_COMPARE(testList[4], ==, 4);
 
 
  115  std::vector<int> testListIndex;
 
  116  testListIndex.push_back(-5);
 
  117  testListIndex.push_back(1);
 
  118  testListIndex.push_back(-2);
 
  119  testListIndex.push_back(4);
 
  120  testListIndex.push_back(-9);
 
  127  TEST_COMPARE(te->indexToNextEvent(-12), ==, 3);
 
  128  TEST_COMPARE(te->indexToNextEvent(-9), ==, 4);
 
  129  TEST_COMPARE(te->indexToNextEvent(-8), ==, 3);
 
  132  TEST_COMPARE(te->indexToNextEvent(-4), ==, 2);
 
  133  TEST_COMPARE(te->indexToNextEvent(-2), ==, 3);
 
  134  TEST_COMPARE(te->indexToNextEvent(0), ==, 1);
 
  137  TEST_COMPARE(te->indexToNextEvent(2), ==, 2);
 
  138  TEST_COMPARE(te->indexToNextEvent(4), ==, te->getDefaultIndex() - 4);
 
  139  TEST_COMPARE(te->indexToNextEvent(9), ==, te->getDefaultIndex() - 9);
 
 
  146  std::vector<int> testListIndex;
 
  147  testListIndex.push_back(-5);
 
  148  testListIndex.push_back(1);
 
  149  testListIndex.push_back(-2);
 
  150  testListIndex.push_back(4);
 
  151  testListIndex.push_back(-9);
 
  158  TEST_COMPARE(te->indexOfNextEvent(-12), ==, -9);
 
  159  TEST_COMPARE(te->indexOfNextEvent(-9), ==, -5);
 
  160  TEST_COMPARE(te->indexOfNextEvent(-8), ==, -5);
 
  163  TEST_COMPARE(te->indexOfNextEvent(-4), ==, -2);
 
  164  TEST_COMPARE(te->indexOfNextEvent(-2), ==, 1);
 
  165  TEST_COMPARE(te->indexOfNextEvent(0), ==, 1);
 
  168  TEST_COMPARE(te->indexOfNextEvent(2), ==, 4);
 
  169  TEST_COMPARE(te->indexOfNextEvent(4), ==, te->getDefaultIndex());
 
  170  TEST_COMPARE(te->indexOfNextEvent(9), ==, te->getDefaultIndex());
 
 
  177  std::vector<int> testListIndex;
 
  178  testListIndex.push_back(-5);
 
  179  testListIndex.push_back(1);
 
  180  testListIndex.push_back(-2);
 
  181  testListIndex.push_back(4);
 
  182  testListIndex.push_back(-9);
 
  189  TEST_COMPARE(te->eventInRangeIndex(-12.0, -10), ==,
 
  191  TEST_COMPARE(te->eventInRangeIndex(-12.0, -9), ==, 
true);
 
  192  TEST_COMPARE(te->eventInRangeIndex(-12.0, -8), ==, 
true);
 
  194  TEST_COMPARE(te->eventInRangeIndex(-4, -3), ==, 
false);  
 
  195  TEST_COMPARE(te->eventInRangeIndex(-4, -2), ==, 
true);
 
  196  TEST_COMPARE(te->eventInRangeIndex(-4, -1), ==, 
true);
 
  198  TEST_COMPARE(te->eventInRangeIndex(3, 3), ==, 
false);  
 
  199  TEST_COMPARE(te->eventInRangeIndex(3, 4), ==, 
true);
 
  200  TEST_COMPARE(te->eventInRangeIndex(3, 6), ==, 
true);
 
  203  TEST_COMPARE(te->eventInRangeIndex(-12, -7), ==,
 
  205  TEST_COMPARE(te->eventInRangeIndex(-9, -7), ==, 
false);
 
  206  TEST_COMPARE(te->eventInRangeIndex(-8, -7), ==, 
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 = teli->getValidParameters();
 
  225  TEST_COMPARE(pl->get<std::string>(
"Type"), ==, 
"List Index");
 
  226  TEST_COMPARE(pl->get<std::string>(
"Name"), ==, 
"TimeEventListIndex");
 
  227  TEST_COMPARE(pl->get<std::string>(
"Index List"), ==, 
"");
 
  230    std::ostringstream unusedParameters;
 
  231    pl->unused(unusedParameters);
 
  232    TEST_COMPARE(unusedParameters.str(), ==, 
"");
 
 
  241  Teuchos::RCP<Teuchos::ParameterList> pl =
 
  242      Teuchos::parameterList(
"Time Event List Index");
 
  244  pl->set(
"Name", 
"Unit Test Time Event List Index");
 
  245  pl->set(
"Type", 
"List Index");
 
  247  std::vector<int> indices;
 
  248  indices.push_back(-99);
 
  249  indices.push_back(13);
 
  250  indices.push_back(97);
 
  251  indices.push_back(101);
 
  252  std::ostringstream list;
 
  253  for (std::size_t i = 0; i < indices.size() - 1; ++i)
 
  254    list << indices[i] << 
", ";
 
  255  list << indices[indices.size() - 1];
 
  256  pl->set<std::string>(
"Index List", list.str());
 
  259  auto teli = Tempus::createTimeEventListIndex<double>(pl);
 
  261  teli->describe(out, Teuchos::VERB_EXTREME);
 
  263  TEST_COMPARE(teli->getName(), ==, 
"Unit Test Time Event List Index");
 
  264  TEST_COMPARE(teli->getType(), ==, 
"List Index");
 
  265  auto teList = teli->getIndexList();
 
  266  TEST_COMPARE(teList[0], ==, -99);
 
  267  TEST_COMPARE(teList[1], ==, 13);
 
  268  TEST_COMPARE(teList[2], ==, 97);
 
  269  TEST_COMPARE(teList[3], ==, 101);