#include <CheckerForMultipleSequences.h>
Classes | |
struct | EventEntry |
struct | SearchInfo |
struct | SequenceEntry |
Public Member Functions | |
CheckerForMultipleSequences (TestEvents &in_rTestEvents) | |
void | DefineSequence (std::string const &in_nameSequence) |
Define and select a sequence for which expected events may follow in the expected order. | |
void | StoreExpectedEventWithinSelectedSequence (std::string const &in_expectedEvent, const char *in_fileName, const long in_lineNum) |
Define the next expected event for the currently selected sequence. | |
void | CheckDefinedSequences (const char *in_fileName=0, const long in_lineNum=0) |
Check if the event sequences defined by DefineSequence() and subsequent calls to TTB_EXP()/StoreExpectedEventWithinSelectedSequence() match with the sequence of recorded events. | |
void | ResetAll () |
Clear all stored sequences. | |
void | SetDetailedLog (bool in_detailedLog) |
Log results of checking multiple sequences even when check was successful. | |
Private Types | |
typedef std::vector< EventEntry > | EventEntries |
typedef std::vector < SequenceEntry > | SequenceEntries |
Private Member Functions | |
void | CheckNextMatch (SearchInfo &io_searchInfo) |
void | UndoLastMatch (SearchInfo &io_searchInfo) |
void | MarkRecordedEventsAsChecked (void) |
int | FindNextUncheckedPos (int in_startPos) |
bool | FindFirstUnmatchedEvent (std::string &out_eventText, std::string &out_fileName, long &out_lineNum) |
void | LogCheckResult (std::string const &in_headLine) |
Private Attributes | |
TestEvents & | m_rTestEvents |
Access to controlling instance of TestEvents. | |
SequenceEntries | m_sequences |
Defined sequences of events to be checked for sequential order. | |
std::set< int > | m_attachedIndices |
Indices of recorded events which have already been reserved for possible matches to defined sequence events. | |
std::vector< EventEntry * > | m_recEv2SeqEv |
Correlation from recorded events to possible match within sequence events. | |
SequenceEntries | m_sequencesBestMatch |
std::vector< EventEntry * > | m_recEv2SeqEvBestMatch |
int | m_numBestMatches |
bool | m_detailedLog |
Class which checks if the set of recorded events matches with the expectations concerning several sequences of events which may interfere one another