package jhydra.core.testcase.result; import jhydra.core.properties.INameValue; import jhydra.core.testcase.ITestDataAnalyzer; import org.joda.time.DateTime; import java.util.ArrayList; import java.util.List; /** * Author: jantic * Date: 3/3/13 */ public class NormalTestCaseResult implements ITestCaseResult { private final List<TestValueResult> testValueResults; private final TestResultCategory testResultCategory; private final DateTime runStartTime; private final DateTime runCompletedTime; public NormalTestCaseResult(ITestDataAnalyzer testDataAnalyzer, List<INameValue> actualValues, DateTime runStartTime, DateTime runCompletedTime){ this.testValueResults = testDataAnalyzer.getValueResults(actualValues); this.testResultCategory = determineTestResultCategory(); this.runStartTime = runStartTime; this.runCompletedTime = runCompletedTime; } @Override public List<TestValueResult> getAllTestValueResults() { return this.testValueResults; } @Override public TestResultCategory getResultCategory() { return this.testResultCategory; } @Override public DateTime getRunStartTime() { return this.runStartTime; } @Override public DateTime getRunCompletedTime() { return this.runCompletedTime; } @Override public List<String> getErrorMessages(){ return new ArrayList<>(); } private TestResultCategory determineTestResultCategory(){ for(TestValueResult testValueResult : testValueResults){ if(testValueResult.getTestValueResultType() == TestValueResultType.FAIL){ return TestResultCategory.VALUE_FAILURE; } } return TestResultCategory.PASS; } }