package com.processpuzzle.persistence.typemapping.domain; import com.processpuzzle.application.configuration.domain.MeasurementContext; import com.processpuzzle.fundamental_types.possiblevalue.domain.PossibleValueDefinition; import com.processpuzzle.fundamental_types.possiblevalue.domain.QuantityRange; import com.processpuzzle.fundamental_types.quantity.domain.Quantity; import com.processpuzzle.fundamental_types.quantity.domain.Units; import com.processpuzzle.litest.template.RepositoryTestEnvironment; import com.processpuzzle.litest.template.RepositoryTestFixture; import com.processpuzzle.persistence.domain.TestEntity; import com.processpuzzle.persistence.domain.TestEntityRepository; public class PossibleValueDefinitionTypeMappingTestFixture extends RepositoryTestFixture<TestEntityRepository, TestEntity> { private TestEntity testEntity; private Quantity minValue; private Quantity maxValue; private MeasurementContext measurementContext = null; protected PossibleValueDefinitionTypeMappingTestFixture( RepositoryTestEnvironment<TestEntityRepository, RepositoryTestFixture<TestEntityRepository, TestEntity>> testEnvironment ) { super( testEnvironment ); } public MeasurementContext getMeasurementContext() { return measurementContext; } public Quantity getMinValue() { return minValue; } public Quantity getMaxValue() { return maxValue; } public TestEntity getTestEntity() { return testEntity; } @Override protected void configureBeforeSutInstantiation() { measurementContext = applicationContext.getMeasurementContext(); minValue = new Quantity (new Double(20), measurementContext.findUnitBySymbol(Units.CENTIMETRE)); // 20 cm maxValue = new Quantity (new Double(40), measurementContext.findUnitBySymbol(Units.CENTIMETRE)); // 40 cm } @Override protected TestEntity createNewAggregate() throws Exception { testEntity = new TestEntity("Test Entity with range possible value definition"); PossibleValueDefinition valueRange = new QuantityRange(minValue, maxValue); testEntity.setPossibleValues(valueRange); return testEntity; } @Override protected void afterAggregateCreation() { } @Override protected void afterAggregateDeletion() { } @Override protected void beforeAggregateCreation() { } }