Search in sources :

Example 11 with SystemStructure

use of com.opensimulationplatform.core.model.systemstructure.SystemStructure in project osp-validator by open-simulation-platform.

the class SystemStructureValidatorTest method emptySystemStructure.

@Test
public void emptySystemStructure() {
    SystemStructure systemStructure = new SystemStructure();
    SystemStructureValidator validator = new SystemStructureValidator();
    List<ValidationDiagnostic<Object>> diagnostics = validator.validate(systemStructure);
    assertTrue(diagnostics.isEmpty());
}
Also used : SystemStructure(com.opensimulationplatform.core.model.systemstructure.SystemStructure) ValidationDiagnostic(com.opensimulationplatform.core.validation.ValidationDiagnostic) Test(org.junit.Test)

Example 12 with SystemStructure

use of com.opensimulationplatform.core.model.systemstructure.SystemStructure in project osp-validator by open-simulation-platform.

the class VariableConnectionsValidatorTest method valid.

@Test
public void valid() {
    SystemStructure systemStructure = new SystemStructure();
    VariableConnection variableConnection = new VariableConnection();
    Simulator simulatorA = new Simulator();
    Variable variableA = new Variable();
    Unit unitA = new Unit();
    unitA.setExponent(Unit.Exponent.KILOGRAM, 1);
    variableA.setName("variableA");
    variableA.setUnit(unitA);
    variableA.setType(Variable.Type.REAL);
    variableA.setCausality(Variable.Causality.OUTPUT);
    simulatorA.getModelDescription().getVariables().add(variableA);
    variableConnection.setSimulatorA(simulatorA);
    variableConnection.setVariableA(variableA);
    Simulator simulatorB = new Simulator();
    Variable variableB = new Variable();
    Unit unitB = new Unit();
    unitB.setExponent(Unit.Exponent.KILOGRAM, 1);
    variableB.setName("variableB");
    variableB.setUnit(unitB);
    variableB.setType(Variable.Type.REAL);
    variableB.setCausality(Variable.Causality.INPUT);
    simulatorB.getModelDescription().getVariables().add(variableB);
    variableConnection.setSimulatorB(simulatorB);
    variableConnection.setVariableB(variableB);
    systemStructure.getSimulators().add(simulatorA);
    systemStructure.getSimulators().add(simulatorB);
    systemStructure.getVariableConnections().add(variableConnection);
    VariableConnectionsValidator validator = new VariableConnectionsValidator();
    List<ValidationDiagnostic<VariableConnection>> diagnostics = validator.validate(systemStructure);
    assertEquals(0, diagnostics.size());
}
Also used : Variable(com.opensimulationplatform.core.model.modeldescription.Variable) SystemStructure(com.opensimulationplatform.core.model.systemstructure.SystemStructure) ValidationDiagnostic(com.opensimulationplatform.core.validation.ValidationDiagnostic) VariableConnection(com.opensimulationplatform.core.model.systemstructure.VariableConnection) Unit(com.opensimulationplatform.core.model.modeldescription.Unit) Simulator(com.opensimulationplatform.core.model.systemstructure.Simulator) Test(org.junit.Test)

Example 13 with SystemStructure

use of com.opensimulationplatform.core.model.systemstructure.SystemStructure in project osp-validator by open-simulation-platform.

the class VariableGroupConnectionsValidatorTest method valid.

@Test
public void valid() {
    SystemStructure systemStructure = new SystemStructure();
    VariableGroupConnection variableGroupConnection = new VariableGroupConnection();
    Simulator simulatorA = new Simulator();
    Force forceA = new Force();
    forceA.setName("forceA");
    Variable variableA = new Variable();
    Unit unitA = new Unit();
    unitA.setExponent(Unit.Exponent.KILOGRAM, 1);
    variableA.setName("variableA");
    variableA.setUnit(unitA);
    variableA.setType(Variable.Type.REAL);
    variableA.setCausality(Variable.Causality.OUTPUT);
    forceA.setVariables(Arrays.asList(variableA));
    simulatorA.getModelDescription().getVariables().add(variableA);
    simulatorA.getModelDescription().getForces().add(forceA);
    variableGroupConnection.setSimulatorA(simulatorA);
    variableGroupConnection.setVariableGroupA(forceA);
    Simulator simulatorB = new Simulator();
    Force forceB = new Force();
    forceB.setName("forceB");
    Variable variableB = new Variable();
    Unit unitB = new Unit();
    unitB.setExponent(Unit.Exponent.KILOGRAM, 1);
    variableB.setName("variableB");
    variableB.setUnit(unitB);
    variableB.setType(Variable.Type.REAL);
    variableB.setCausality(Variable.Causality.INPUT);
    forceB.setVariables(Arrays.asList(variableB));
    simulatorB.getModelDescription().getVariables().add(variableB);
    simulatorB.getModelDescription().getForces().add(forceB);
    variableGroupConnection.setSimulatorB(simulatorB);
    variableGroupConnection.setVariableGroupB(forceB);
    systemStructure.getSimulators().add(simulatorA);
    systemStructure.getSimulators().add(simulatorB);
    systemStructure.getVariableGroupConnections().add(variableGroupConnection);
    VariableGroupConnectionsValidator validator = new VariableGroupConnectionsValidator();
    List<ValidationDiagnostic<VariableGroupConnection>> diagnostics = validator.validate(systemStructure);
    assertEquals(0, diagnostics.size());
}
Also used : Variable(com.opensimulationplatform.core.model.modeldescription.Variable) SystemStructure(com.opensimulationplatform.core.model.systemstructure.SystemStructure) VariableGroupConnection(com.opensimulationplatform.core.model.systemstructure.VariableGroupConnection) Force(com.opensimulationplatform.core.model.modeldescription.variablegroup.force.Force) ValidationDiagnostic(com.opensimulationplatform.core.validation.ValidationDiagnostic) Unit(com.opensimulationplatform.core.model.modeldescription.Unit) Simulator(com.opensimulationplatform.core.model.systemstructure.Simulator) Test(org.junit.Test)

Example 14 with SystemStructure

use of com.opensimulationplatform.core.model.systemstructure.SystemStructure in project osp-validator by open-simulation-platform.

the class SystemStructureValidatorTest method valid.

@Test
public void valid() {
    Simulator s1 = new Simulator();
    s1.setName("s1");
    s1.setModelDescription(createValidModelDescription());
    Simulator s2 = new Simulator();
    s2.setName("s2");
    s2.setModelDescription(createValidModelDescription());
    SystemStructure systemStructure = new SystemStructure();
    systemStructure.getSimulators().add(s1);
    systemStructure.getSimulators().add(s2);
    VariableConnection vc1 = new VariableConnection();
    vc1.setSimulatorA(s1);
    vc1.setSimulatorB(s2);
    vc1.setVariableA(ModelDescriptionUtil.getVariableByName(s1.getModelDescription(), "v3"));
    vc1.setVariableB(ModelDescriptionUtil.getVariableByName(s1.getModelDescription(), "v4"));
    VariableConnection vc2 = new VariableConnection();
    vc2.setSimulatorA(s1);
    vc2.setSimulatorB(s2);
    vc2.setVariableA(ModelDescriptionUtil.getVariableByName(s1.getModelDescription(), "v3"));
    vc2.setVariableB(ModelDescriptionUtil.getVariableByName(s1.getModelDescription(), "v5"));
    VariableConnection vc3 = new VariableConnection();
    vc3.setSimulatorA(s1);
    vc3.setSimulatorB(s2);
    vc3.setVariableA(ModelDescriptionUtil.getVariableByName(s1.getModelDescription(), "v3"));
    vc3.setVariableB(ModelDescriptionUtil.getVariableByName(s2.getModelDescription(), "v6"));
    systemStructure.getVariableConnections().add(vc1);
    systemStructure.getVariableConnections().add(vc2);
    systemStructure.getVariableConnections().add(vc3);
    VariableGroupConnection vgc1 = new VariableGroupConnection();
    vgc1.setSimulatorA(s1);
    vgc1.setSimulatorB(s2);
    vgc1.setVariableGroupA(ModelDescriptionUtil.getVariableGroupByName(s1.getModelDescription(), "f3"));
    vgc1.setVariableGroupB(ModelDescriptionUtil.getVariableGroupByName(s2.getModelDescription(), "f4"));
    systemStructure.getVariableGroupConnections().add(vgc1);
    SystemStructureValidator v = new SystemStructureValidator();
    List<ValidationDiagnostic<Object>> diagnostics = v.validate(systemStructure);
    assertEquals(0, diagnostics.size());
}
Also used : SystemStructure(com.opensimulationplatform.core.model.systemstructure.SystemStructure) VariableGroupConnection(com.opensimulationplatform.core.model.systemstructure.VariableGroupConnection) ValidationDiagnostic(com.opensimulationplatform.core.validation.ValidationDiagnostic) VariableConnection(com.opensimulationplatform.core.model.systemstructure.VariableConnection) Simulator(com.opensimulationplatform.core.model.systemstructure.Simulator) Test(org.junit.Test)

Example 15 with SystemStructure

use of com.opensimulationplatform.core.model.systemstructure.SystemStructure in project osp-validator by open-simulation-platform.

the class VariableConnectionsValidatorTest method invalid.

@Test
public void invalid() {
    SystemStructure systemStructure = new SystemStructure();
    VariableConnection variableConnection = new VariableConnection();
    Simulator simulatorA = new Simulator();
    Variable variableA = new Variable();
    Unit unitA = new Unit();
    unitA.setExponent(Unit.Exponent.KILOGRAM, 2);
    variableA.setName("variableA");
    variableA.setUnit(unitA);
    variableA.setType(Variable.Type.INTEGER);
    variableA.setCausality(Variable.Causality.INPUT);
    simulatorA.getModelDescription().getVariables().add(variableA);
    variableConnection.setSimulatorA(simulatorA);
    variableConnection.setVariableA(variableA);
    Simulator simulatorB = new Simulator();
    Variable variableB = new Variable();
    Unit unitB = new Unit();
    unitB.setExponent(Unit.Exponent.KILOGRAM, 1);
    variableB.setName("variableB");
    variableB.setUnit(unitB);
    variableB.setType(Variable.Type.REAL);
    variableB.setCausality(Variable.Causality.INPUT);
    simulatorB.getModelDescription().getVariables().add(variableB);
    variableConnection.setSimulatorB(simulatorB);
    variableConnection.setVariableB(variableB);
    systemStructure.getSimulators().add(simulatorA);
    systemStructure.getSimulators().add(simulatorB);
    systemStructure.getVariableConnections().add(variableConnection);
    VariableConnectionsValidator validator = new VariableConnectionsValidator();
    List<ValidationDiagnostic<VariableConnection>> diagnostics = validator.validate(systemStructure);
    assertEquals(3, diagnostics.size());
}
Also used : Variable(com.opensimulationplatform.core.model.modeldescription.Variable) SystemStructure(com.opensimulationplatform.core.model.systemstructure.SystemStructure) ValidationDiagnostic(com.opensimulationplatform.core.validation.ValidationDiagnostic) VariableConnection(com.opensimulationplatform.core.model.systemstructure.VariableConnection) Unit(com.opensimulationplatform.core.model.modeldescription.Unit) Simulator(com.opensimulationplatform.core.model.systemstructure.Simulator) Test(org.junit.Test)

Aggregations

SystemStructure (com.opensimulationplatform.core.model.systemstructure.SystemStructure)21 ValidationDiagnostic (com.opensimulationplatform.core.validation.ValidationDiagnostic)19 Test (org.junit.Test)16 Simulator (com.opensimulationplatform.core.model.systemstructure.Simulator)14 Variable (com.opensimulationplatform.core.model.modeldescription.Variable)9 VariableConnection (com.opensimulationplatform.core.model.systemstructure.VariableConnection)7 VariableGroupConnection (com.opensimulationplatform.core.model.systemstructure.VariableGroupConnection)7 SystemStructureValidator (com.opensimulationplatform.core.validation.systemstructure.SystemStructureValidator)7 SystemStructureFactory (com.opensimulationplatform.systemstructure.xml.factory.SystemStructureFactory)6 ModelDescription (com.opensimulationplatform.core.model.modeldescription.ModelDescription)5 Unit (com.opensimulationplatform.core.model.modeldescription.Unit)4 Force (com.opensimulationplatform.core.model.modeldescription.variablegroup.force.Force)4 Generic (com.opensimulationplatform.core.model.modeldescription.variablegroup.generic.Generic)4 LinearVelocity (com.opensimulationplatform.core.model.modeldescription.variablegroup.linearvelocity.LinearVelocity)3 OspSystemStructure (com.opensimulationplatform.systemstructure.xml.model.OspSystemStructure)3 LinearMechanicalPort (com.opensimulationplatform.core.model.modeldescription.variablegroup.linearmechanicalport.LinearMechanicalPort)2 File (java.io.File)2 VariableGroup (com.opensimulationplatform.core.model.modeldescription.variablegroup.VariableGroup)1 ModelDescriptionValidator (com.opensimulationplatform.core.validation.modeldescription.ModelDescriptionValidator)1 ModelDescriptionFactory (com.opensimulationplatform.modeldescription.xml.factory.ModelDescriptionFactory)1