Small logic tweaks

This commit is contained in:
Phil Nash 2012-11-29 20:11:46 +00:00
parent 6f2343bf64
commit 3d6be037e9
2 changed files with 10 additions and 15 deletions

View File

@ -55,18 +55,14 @@ namespace Catch {
}
void ranToCompletion() {
if( m_runStatus == RanAtLeastOneSection ||
m_runStatus == EncounteredASection ) {
if( m_runStatus != RanAtLeastOneSection && m_runStatus != EncounteredASection )
m_runStatus = RanToCompletionWithNoSections;
m_runStatus = RanToCompletionWithSections;
if( m_lastSectionToRun ) {
m_lastSectionToRun->ranToCompletion();
m_changed = true;
}
}
else {
m_runStatus = RanToCompletionWithNoSections;
}
}
bool addSection( const std::string& name ) {
if( m_runStatus == NothingRun )

View File

@ -22,7 +22,7 @@ namespace Catch {
virtual const ISectionInfo* getParent() const = 0;
};
class SectionInfo : ISectionInfo {
class SectionInfo : public ISectionInfo {
public:
typedef std::vector<SectionInfo*> SubSections;
@ -98,12 +98,11 @@ namespace Catch {
}
bool ran() {
if( m_state < Branch ) {
if( m_state >= Branch )
return false;
m_state = TestedLeaf;
return true;
}
return false;
}
void ranToCompletion() {
if( m_state == Branch && !hasUntestedSections() )