| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 | /* *  Created by Martin on 19/07/2017. * *  Distributed under the Boost Software License, Version 1.0. (See accompanying *  file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) */#include "catch_totals.h"namespace Catch {    Counts Counts::operator - ( Counts const& other ) const {        Counts diff;        diff.passed = passed - other.passed;        diff.failed = failed - other.failed;        diff.failedButOk = failedButOk - other.failedButOk;        return diff;    }    Counts& Counts::operator += ( Counts const& other ) {        passed += other.passed;        failed += other.failed;        failedButOk += other.failedButOk;        return *this;    }    std::size_t Counts::total() const {        return passed + failed + failedButOk;    }    bool Counts::allPassed() const {        return failed == 0 && failedButOk == 0;    }    bool Counts::allOk() const {        return failed == 0;    }    Totals Totals::operator - ( Totals const& other ) const {        Totals diff;        diff.assertions = assertions - other.assertions;        diff.testCases = testCases - other.testCases;        return diff;    }    Totals& Totals::operator += ( Totals const& other ) {        assertions += other.assertions;        testCases += other.testCases;        return *this;    }    Totals Totals::delta( Totals const& prevTotals ) const {        Totals diff = *this - prevTotals;        if( diff.assertions.failed > 0 )            ++diff.testCases.failed;        else if( diff.assertions.failedButOk > 0 )            ++diff.testCases.failedButOk;        else            ++diff.testCases.passed;        return diff;    }}
 |