a_clock = NULL;
//a_testPool.clear();
//a_statSummary.clear();
+
+ a_autoResetHard = false;
+
a_currentTestIt = a_testPool.end();
}
}
}
- // Soft reset to initialize already finished (in previous cycle) test cases:
- a_currentTestIt->second->reset(false);
+ // Hard reset or soft reset to initialize already finished (in previous cycle) test cases:
+ a_currentTestIt->second->reset(a_autoResetHard);
// Process test case:
LOGDEBUG(anna::Logger::debug(anna::functions::asString("Processing test case id = %llu, currently '%s' state", a_currentTestIt->first, TestCase::asText(a_currentTestIt->second->getState())), ANNA_FILE_LOCATION));
// Work with Test case:
TestStepWait *tsw = tc->searchNextWaitConditionFulfilled(message, true /* comes from entity */);
if (!tsw) { // store as 'uncovered'
- std::string hint = "Uncovered condition for received message from entity over Session-Id '"; hint += sessionId; hint += "':";
+ std::string hint = "Uncovered condition for received message from entity over Session-Id '"; hint += sessionId; hint += "'; ";
try {
static anna::diameter::codec::Message codecMsg;
codecMsg.decode(message);
- hint += "\n"; hint += codecMsg.asXMLString();
+ hint += "HEX Message: '"; hint += anna::functions::asHexString(message);
+ hint += "'; XML Message:\n"; hint += codecMsg.asXMLString();
}
catch (anna::RuntimeException &ex) {
ex.trace();
- hint += "\n"; hint += ex.asString();
+ hint += ex.asString();
}
- hint += "\n"; hint += clientSession->asString();
+ hint += "\nClient Session: "; hint += clientSession->asString();
tc->addDebugSummaryHint(hint);
}
// Work with Test case:
TestStepWait *tsw = tc->searchNextWaitConditionFulfilled(message, false /* comes from client */);
if (!tsw) { // store as 'uncovered'
- std::string hint = "Uncovered condition for received message from client over Session-Id '"; hint += sessionId; hint += "':";
+ std::string hint = "Uncovered condition for received message from client over Session-Id '"; hint += sessionId; hint += "'; ";
try {
static anna::diameter::codec::Message codecMsg;
codecMsg.decode(message);
- hint += "\n"; hint += codecMsg.asXMLString();
+ hint += "HEX Message: '"; hint += anna::functions::asHexString(message);
+ hint += "'; XML Message:\n"; hint += codecMsg.asXMLString();
}
catch (anna::RuntimeException &ex) {
ex.trace();
- hint += "\n"; hint += ex.asString();
+ hint += ex.asString();
}
- hint += "\n"; hint += serverSession->asString();
+ hint += "\nServer Session: "; hint += serverSession->asString();
tc->addDebugSummaryHint(hint);
}
result->createAttribute("DumpFailedReports", (a_dumpFailedReports ? "yes":"no"));
result->createAttribute("DumpSuccessReports", (a_dumpSuccessReports ? "yes":"no"));
result->createAttribute("DumpHexMessages", (a_dumpHexMessages ? "yes":"no"));
+ result->createAttribute("AutoResetHard", (a_autoResetHard ? "yes":"no"));
result->createAttribute("ReportsDirectory", a_reportsDirectory);
if (a_clock) {
result->createAttribute("AsynchronousSendings", a_synchronousAmount);