| 4 |
|
|
| 5 |
|
// Registers the fixture into the 'registry' |
| 6 |
|
CPPUNIT_TEST_SUITE_REGISTRATION( NextCombinationTestCase); |
| 7 |
+ |
|
| 8 |
+ |
|
| 9 |
|
void NextCombinationTestCase::testNextCombination() { |
| 10 |
|
std::vector<int> iv; |
| 11 |
|
std::vector<std::vector<int>::iterator> ic; |
| 32 |
|
CPPUNIT_ASSERT(results[4][0] == 0 && results[4][1] == 4 && results[4].size() == 2); |
| 33 |
|
CPPUNIT_ASSERT(results[5][0] == 1 && results[5][1] == 4 && results[5].size() == 2); |
| 34 |
|
CPPUNIT_ASSERT(results[6][0] == 0 && results[6][1] == 1 && results[6][2] == 4 && results[6].size() == 3); |
| 35 |
+ |
|
| 36 |
+ |
std::vector<std::string> sv; |
| 37 |
+ |
std::vector<std::vector<std::string>::iterator> sic; |
| 38 |
+ |
std::vector<std::vector<std::string>::iterator>::iterator j; |
| 39 |
+ |
std::vector<std::vector<std::string> > resultStrings; |
| 40 |
+ |
std::vector<std::string> resultString; |
| 41 |
+ |
sv.push_back("H"); |
| 42 |
+ |
sv.push_back("C"); |
| 43 |
+ |
sv.push_back("N"); |
| 44 |
+ |
|
| 45 |
+ |
while (replaceWildCard(sic, sv, resultString)) { |
| 46 |
+ |
resultStrings.push_back(resultString); |
| 47 |
+ |
} |
| 48 |
+ |
|
| 49 |
+ |
CPPUNIT_ASSERT(resultStrings.size() == 7); |
| 50 |
+ |
CPPUNIT_ASSERT(resultStrings[0][0] == "H" && resultStrings[0][1] == "X" && resultStrings[0][2] == "X" && resultStrings[0].size() == 3); |
| 51 |
+ |
CPPUNIT_ASSERT(resultStrings[1][0] == "X" && resultStrings[1][1] == "C" && resultStrings[1][2] == "X" && resultStrings[1].size() == 3); |
| 52 |
+ |
CPPUNIT_ASSERT(resultStrings[2][0] == "X" && resultStrings[2][1] == "X" && resultStrings[2][2] == "N" && resultStrings[2].size() == 3); |
| 53 |
+ |
CPPUNIT_ASSERT(resultStrings[3][0] == "H" && resultStrings[3][1] == "C" && resultStrings[3][2] == "X" && resultStrings[3].size() == 3); |
| 54 |
+ |
CPPUNIT_ASSERT(resultStrings[4][0] == "H" && resultStrings[4][1] == "X" && resultStrings[4][2] == "N" && resultStrings[4].size() == 3); |
| 55 |
+ |
CPPUNIT_ASSERT(resultStrings[5][0] == "X" && resultStrings[5][1] == "C" && resultStrings[5][2] == "N" && resultStrings[5].size() == 3); |
| 56 |
+ |
CPPUNIT_ASSERT(resultStrings[6][0] == "H" && resultStrings[6][1] == "C" && resultStrings[6][2] == "N" && resultStrings[6].size() == 3); |
| 57 |
|
|
| 58 |
|
} |
| 59 |
+ |
|