package rtt.ui.content.logging; import rtt.core.archive.logging.Comment; import rtt.core.archive.logging.Failure; import rtt.core.archive.logging.Result; import rtt.core.archive.logging.Testrun; import rtt.ui.content.main.ContentIcon; public class TestResultContent extends AbstractLogContent { private Testrun testrun; private Result result; private String suiteName; private String caseName; public TestResultContent(TestrunContent parent, Result result) { super(parent); this.testrun = parent.getTestrun(); this.result = result; this.suiteName = result.getTestsuite(); this.caseName = result.getTestcase(); for (Failure failure : result.getFailure()) { childs.add(new FailureContent(this, failure)); } for (Comment comment : result.getComment()) { childs.add(new CommentContent(this, comment)); } } @Override public String getText() { return "[" + suiteName + "/" + caseName + "]"; } @Override public String getToolTip() { return "Data used for testing: \n" + "- Reference Data: Version " + result.getRefVersion() + "\n" + "- Test Data: Version "+ result.getTestVersion(); } @Override public ContentIcon getIcon() { return getContentIcon(result); } private ContentIcon getContentIcon(Result result) { switch (result.getType()) { case FAILED: return ContentIcon.FAILED; case PASSED: return ContentIcon.PASSED; case SKIPPED: return ContentIcon.SKIPPED; default: return ContentIcon.PLACEHOLDER; } } public Result getTestresult() { return result; } public Testrun getTestrun() { return testrun; } @Override public int compareTo(AbstractLogContent o) { if (o instanceof TestResultContent) { TestResultContent result = (TestResultContent) o; return caseName.compareToIgnoreCase(result.caseName); } return 0; } @Override public String getMessage() { return "Testcase: " + caseName + ", Testsuite: " + suiteName; } @Override public String getTitle() { return result.getType().toString(); } }