mirror of https://github.com/procxx/kepka.git
				
				
				
			
		
			
				
	
	
		
			62 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			C++
		
	
	
	
			
		
		
	
	
			62 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			C++
		
	
	
	
| /*
 | |
|  *  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;
 | |
|     }
 | |
| 
 | |
| }
 |