package org.argeo.slc.core.test; import java.util.UUID; import org.argeo.slc.core.deploy.DeployedSystem; import org.argeo.slc.core.process.SlcExecution; import org.argeo.slc.core.process.SlcExecutionStep; /** * A basic bean implementation of a WritableTestRun, holding * references to the various parts of a test run. */ public class SimpleTestRun implements WritableTestRun, ExecutableTestRun { private String uuid; private String slcExecutionUuid; private String slcExecutionStepUuid; private DeployedSystem deployedSystem; private TestData testData; private TestDefinition testDefinition; private TestResult testResult; /** Executes the underlying test definition. */ public void execute() { uuid = UUID.randomUUID().toString(); if (testResult != null) testResult.notifyTestRun(this); testDefinition.execute(this); } public T getDeployedSystem() { return (T) deployedSystem; } public void setDeployedSystem(DeployedSystem deployedSystem) { this.deployedSystem = deployedSystem; } public T getTestData() { return (T) testData; } public void setTestData(TestData testData) { this.testData = testData; } public T getTestDefinition() { return (T) testDefinition; } public void setTestDefinition(TestDefinition testDefinition) { this.testDefinition = testDefinition; } public T getTestResult() { return (T) testResult; } public void setTestResult(TestResult testResult) { this.testResult = testResult; } public String getUuid() { return uuid; } public void setUuid(String uuid) { this.uuid = uuid; } public String getSlcExecutionUuid() { return slcExecutionUuid; } public void setSlcExecutionUuid(String slcExecutionUuid) { this.slcExecutionUuid = slcExecutionUuid; } public String getSlcExecutionStepUuid() { return slcExecutionStepUuid; } public void setSlcExecutionStepUuid(String slcExecutionStepUuid) { this.slcExecutionStepUuid = slcExecutionStepUuid; } public void notifySlcExecution(SlcExecution slcExecution) { slcExecutionUuid = slcExecution.getUuid(); SlcExecutionStep step = slcExecution.currentStep(); if (step != null) { slcExecutionStepUuid = step.getUuid(); } } }