void UpdaterTest::testVersionStringParsing() { const int NUM_VERSIONS_STRING = 6; string versionStrings[NUM_VERSIONS_STRING] = { "1", "abc", "-2", "234sc", "2", "" }; int versions[NUM_VERSIONS_STRING] = { 1, -1, -2, 234, 2, -1 }; for (int i = 0; i < NUM_VERSIONS_STRING; i++) { string versionString = versionStrings[i]; int version = versions[i]; vector<string> versionStrings; versionStrings.push_back(versionString); UpdateServer *us = (UpdateServer*) new MockUpdateServer(versionStrings); CPPUNIT_ASSERT_EQUAL(versionString, us->getVersionString()); Updater *u = new Updater(us, 0, ".", 0, 0, 0); if (version == -1) CPPUNIT_ASSERT_THROW(u->getNewestVersionNumber(), UpdateCheckFailedException); else CPPUNIT_ASSERT_EQUAL(version, u->getNewestVersionNumber()); delete us; delete u; } }