Skip to content

Commit 44c22b5

Browse files
authored
Merge pull request #204 from bci-oss/203-fix-broken-test-models
Fix broken test models
2 parents 92871d0 + 75d5540 commit 44c22b5

File tree

28 files changed

+82
-45
lines changed

28 files changed

+82
-45
lines changed

core/sds-aspect-meta-model-java/src/main/java/io/openmanufacturing/sds/metamodel/loader/instantiator/EventInstantiator.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ public EventInstantiator( final ModelElementFactory modelElementFactory ) {
3333
@Override
3434
public Event apply( final Resource event ) {
3535
final MetaModelBaseAttributes metaModelBaseAttributes = buildBaseAttributes( event );
36-
final List<Property> events = getPropertiesModels( event, bamm.properties() );
36+
final List<Property> events = getPropertiesModels( event, bamm.parameters() );
3737
return new DefaultEvent( metaModelBaseAttributes, events );
3838
}
3939
}

core/sds-aspect-meta-model-java/src/test/java/io/openmanufacturing/sds/metamodel/loader/ConstraintInstantiatorTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ public void testLanguageConstraintInstantiationExpectSuccess( final KnownVersion
4949
"This is a test language constraint.",
5050
"http://example.com/omp" );
5151

52-
assertThat( languageConstraint.getLanguageCode() ).isEqualTo( Locale.GERMANY );
52+
assertThat( languageConstraint.getLanguageCode() ).isEqualTo( Locale.forLanguageTag( "de" ) );
5353
}
5454

5555
@ParameterizedTest

core/sds-aspect-meta-model-resolver/src/main/java/io/openmanufacturing/sds/aspectmodel/vocabulary/BAMM.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -139,6 +139,10 @@ public Property properties() {
139139
return property( "properties" );
140140
}
141141

142+
public Property parameters() {
143+
return property( "parameters" );
144+
}
145+
142146
public Property operations() {
143147
return property( "operations" );
144148
}

core/sds-aspect-model-document-generators/src/test/java/io/openmanufacturing/sds/aspectmodel/generator/diagram/AbstractConstraint2BoxModelTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,14 +29,14 @@ public abstract class AbstractConstraint2BoxModelTest extends MetaModelVersions
2929

3030
protected String boxSelectorStatement( final KnownVersion metaModelVersion, final String constraintIdentifier ) {
3131
if ( metaModelVersion.isNewerThan( KnownVersion.BAMM_1_0_0 ) ) {
32-
return String.format( ":%s a :Box", constraintIdentifier );
32+
return String.format( "%s a :Box", constraintIdentifier.equals( "*" ) ? "*" : ":" + constraintIdentifier );
3333
}
3434
return ":TestConstraintConstraint a :Box";
3535
}
3636

3737
protected String entriesSelectorStatement( final KnownVersion metaModelVersion, final String constraintIdentifier ) {
3838
if ( metaModelVersion.isNewerThan( KnownVersion.BAMM_1_0_0 ) ) {
39-
return String.format( ":%s :entries *", constraintIdentifier );
39+
return String.format( "%s :entries *", constraintIdentifier.equals( "*" ) ? "*" : ":" + constraintIdentifier );
4040
}
4141
return ":TestConstraintConstraint :entries *";
4242
}

core/sds-aspect-model-document-generators/src/test/java/io/openmanufacturing/sds/aspectmodel/generator/diagram/Aspect2BoxModelTest.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -129,10 +129,10 @@ public void testAspectWithOptionalPropertyWithPayloadName( final KnownVersion me
129129
qexec.execConstruct( queryResult );
130130
}
131131

132-
assertThat( queryResult.listStatements( context.selector( ":AspectWithOptionalPropertyAspect_To_testPropertyProperty a :Edge" ) )
132+
assertThat( queryResult.listStatements( context.selector( ":AspectWithOptionalPropertyWithPayloadNameAspect_To_testPropertyProperty a :Edge" ) )
133133
.toList() ).hasSize( 1 );
134134
assertThat(
135-
queryResult.listStatements( context.selector( ":AspectWithOptionalPropertyAspect_To_testPropertyProperty :title property (optional) (test)" ) )
135+
queryResult.listStatements( context.selector( ":AspectWithOptionalPropertyWithPayloadNameAspect_To_testPropertyProperty :title property (optional) (test)" ) )
136136
.toList() ).hasSize( 1 );
137137
}
138138
}

core/sds-aspect-model-document-generators/src/test/java/io/openmanufacturing/sds/aspectmodel/generator/diagram/Constraint2BoxModelTest.java

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ public void testOnlyUsedConstraintsAreProcessedExpectSuccess( final KnownVersion
5050
@ParameterizedTest
5151
@MethodSource( value = "allVersions" )
5252
public void testSeeAttributeIsPresentExpectSuccess( final KnownVersion metaModelVersion ) {
53-
final String constraintIdentifier = "LengthConstraint294de3c";
53+
final String constraintIdentifier = "*";
5454
final TestContext context = new TestContext( TestAspect.ASPECT_WITH_CONSTRAINT_WITH_SEE_ATTRIBUTE, metaModelVersion );
5555
context.executeAttributeIsPresentTest( sparqlQueryFileName, boxSelectorStatement( metaModelVersion, constraintIdentifier ),
5656
entriesSelectorStatement( metaModelVersion, constraintIdentifier ),
@@ -60,7 +60,7 @@ public void testSeeAttributeIsPresentExpectSuccess( final KnownVersion metaModel
6060
@ParameterizedTest
6161
@MethodSource( value = "allVersions" )
6262
public void testSeeAttributesArePresentExpectSuccess( final KnownVersion metaModelVersion ) {
63-
final String constraintIdentifier = "LengthConstraintc82ebce";
63+
final String constraintIdentifier = "*";
6464
final TestContext context = new TestContext( TestAspect.ASPECT_WITH_CONSTRAINT_WITH_MULTIPLE_SEE_ATTRIBUTES, metaModelVersion );
6565
context.executeAttributeIsPresentTest(
6666
sparqlQueryFileName, boxSelectorStatement( metaModelVersion, constraintIdentifier ), entriesSelectorStatement( metaModelVersion, constraintIdentifier ),
@@ -73,7 +73,7 @@ sparqlQueryFileName, boxSelectorStatement( metaModelVersion, constraintIdentifie
7373
@ParameterizedTest
7474
@MethodSource( value = "allVersions" )
7575
public void testSeeAttributeIsNotPresentExpectSuccess( final KnownVersion metaModelVersion ) {
76-
final String constraintIdentifier = "LengthConstraint125edc1";
76+
final String constraintIdentifier = "*";
7777
final TestContext context = new TestContext( TestAspect.ASPECT_WITH_CONSTRAINT_WITHOUT_SEE_ATTRIBUTE, metaModelVersion );
7878
context.executeAttributeIsNotPresentTest( sparqlQueryFileName, boxSelectorStatement( metaModelVersion, constraintIdentifier ),
7979
entriesSelectorStatement( metaModelVersion, constraintIdentifier ),
@@ -83,7 +83,7 @@ public void testSeeAttributeIsNotPresentExpectSuccess( final KnownVersion metaMo
8383
@ParameterizedTest
8484
@MethodSource( value = "allVersions" )
8585
public void testRegularExpressionConstraintExpectSuccess( final KnownVersion metaModelVersion ) {
86-
final String constraintIdentifier = "RegularExpressionConstraint44300e9";
86+
final String constraintIdentifier = "*";
8787
final TestContext context = new TestContext( TestAspect.ASPECT_WITH_NUMERIC_REGULAR_EXPRESSION_CONSTRAINT, metaModelVersion );
8888
context.executeAttributeIsPresentTest(
8989
sparqlQueryFileName, boxSelectorStatement( metaModelVersion, constraintIdentifier ), entriesSelectorStatement( metaModelVersion, constraintIdentifier ),
@@ -95,7 +95,7 @@ sparqlQueryFileName, boxSelectorStatement( metaModelVersion, constraintIdentifie
9595
@ParameterizedTest
9696
@MethodSource( value = "allVersions" )
9797
public void testFixedPointConstraintExpectSuccess( final KnownVersion metaModelVersion ) {
98-
final String constraintIdentifier = "FixedPointConstraintd050140";
98+
final String constraintIdentifier = "*";
9999
final TestContext context = new TestContext( TestAspect.ASPECT_WITH_FIXED_POINT_CONSTRAINT, metaModelVersion );
100100
context.executeAttributeIsPresentTest(
101101
sparqlQueryFileName, boxSelectorStatement( metaModelVersion, constraintIdentifier ), entriesSelectorStatement( metaModelVersion, constraintIdentifier ),

core/sds-aspect-model-document-generators/src/test/java/io/openmanufacturing/sds/aspectmodel/generator/diagram/TestContext.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ public void executeAttributeIsPresentTest( final String sparqlQueryFileName,
116116
qexec.execConstruct( queryResult );
117117
}
118118

119-
assertThat( queryResult.listStatements( selector( boxSelectorStatement ) ).toList() ).hasSize( 1 );
119+
assertThat( queryResult.listStatements( selector( boxSelectorStatement ) ).toList() ).hasSizeGreaterThanOrEqualTo( 1 );
120120

121121
final List<RDFNode> entries = queryResult
122122
.listStatements( selector( entriesSelectorStatement ) )

core/sds-aspect-model-document-generators/src/test/java/io/openmanufacturing/sds/aspectmodel/generator/docu/AspectModelDocumentationGeneratorTest.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ public void testEncodedTextIsNotDecoded( final KnownVersion metaModelVersion ) t
121121
@MethodSource( "allVersions" )
122122
public void testAspectModelUrnIsDisplayed( final KnownVersion metaModelVersion ) throws IOException {
123123
assertThat( generateHtmlDocumentation( TestAspect.ASPECT_WITH_HTML_TAGS, metaModelVersion ) )
124-
.contains( "urn:bamm:io.openmanufacturing.test:1.0.0#AspectWithHTMLTags" );
124+
.contains( "urn:bamm:io.openmanufacturing.test:1.0.0#AspectWithHtmlTags" );
125125
}
126126

127127
@ParameterizedTest

core/sds-aspect-model-serializer/src/main/java/io/openmanufacturing/sds/aspectmodel/serializer/RdfModelCreatorVisitor.java

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,7 @@ private Model serializeDescriptions( final Resource elementResource, final IsDes
175175

176176
@SuppressWarnings( "squid:S2250" )
177177
// Amount of elements in list is regarding amount of properties in Aspect Model. Even in bigger aspects this should not lead to performance issues
178-
private Model serializeProperties( final Resource elementResource, final HasProperties element ) {
178+
private Model serializePropertiesOrParameters( final Resource elementResource, final HasProperties element, final org.apache.jena.rdf.model.Property theProperty ) {
179179
final Model model = ModelFactory.createDefaultModel();
180180
final List<RDFNode> propertiesList = new ArrayList<>();
181181
if ( resourceList.contains( elementResource ) ) {
@@ -202,10 +202,18 @@ private Model serializeProperties( final Resource elementResource, final HasProp
202202
return propertyModel;
203203
} ).forEach( model::add );
204204

205-
model.add( elementResource, bamm.properties(), model.createList( propertiesList.iterator() ) );
205+
model.add( elementResource, theProperty, model.createList( propertiesList.iterator() ) );
206206
return model;
207207
}
208208

209+
private Model serializeParameters( final Resource elementResource, final HasProperties element ) {
210+
return serializePropertiesOrParameters( elementResource, element, bamm.parameters() );
211+
}
212+
213+
private Model serializeProperties( final Resource elementResource, final HasProperties element ) {
214+
return serializePropertiesOrParameters( elementResource, element, bamm.properties() );
215+
}
216+
209217
private Resource serializeAnonymousPropertyNodes( final Property property, final Model propertyModel, final Resource propertyResource ) {
210218
final Resource anonymousPropertyNode = createResource();
211219
propertyModel.add( anonymousPropertyNode, bamm.property(), propertyResource );
@@ -402,9 +410,9 @@ public ElementModel visitFixedPointConstraint( final FixedPointConstraint fixedP
402410
final Resource resource = getElementResource( fixedPointConstraint );
403411
model.add( resource, RDF.type, bammc.FixedPointConstraint() );
404412
model.add( resource, bammc.integer(),
405-
serializeTypedValue( fixedPointConstraint.getInteger().toString(), ExtendedXsdDataType.NON_NEGATIVE_INTEGER ) );
413+
serializeTypedValue( fixedPointConstraint.getInteger().toString(), ExtendedXsdDataType.POSITIVE_INTEGER ) );
406414
model.add( resource, bammc.scale(),
407-
serializeTypedValue( fixedPointConstraint.getScale().toString(), ExtendedXsdDataType.NON_NEGATIVE_INTEGER ) );
415+
serializeTypedValue( fixedPointConstraint.getScale().toString(), ExtendedXsdDataType.POSITIVE_INTEGER ) );
408416
return new ElementModel( model, Optional.of( resource ) );
409417
}
410418

@@ -675,7 +683,7 @@ public ElementModel visitEvent( final Event event, final Base context ) {
675683
final Resource resource = getElementResource( event );
676684
model.add( resource, RDF.type, bamm.Event() );
677685
model.add( serializeDescriptions( resource, event ) );
678-
model.add( serializeProperties( resource, event ) );
686+
model.add( serializeParameters( resource, event ) );
679687
return new ElementModel( model, Optional.of( resource ) );
680688
}
681689

core/sds-aspect-model-validator/src/test/java/io/openmanufacturing/sds/aspectmodel/validation/services/AspectModelValidatorTest.java

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
import java.util.Collection;
2020

2121
import org.junit.jupiter.params.ParameterizedTest;
22+
import org.junit.jupiter.params.provider.EnumSource;
2223
import org.junit.jupiter.params.provider.MethodSource;
2324
import org.topbraid.shacl.vocabulary.SH;
2425

@@ -59,6 +60,33 @@ public void testValidAspect( final KnownVersion metaModelVersion ) {
5960
assertThat( result.getValidationErrors() ).hasSize( 0 );
6061
}
6162

63+
@ParameterizedTest
64+
@EnumSource( value = TestAspect.class, mode = EnumSource.Mode.EXCLUDE, names = {
65+
"ASPECT_WITH_CONSTRAINTS",
66+
// uses bamm-c:OPEN which is not specified, see https://github.com/OpenManufacturingPlatform/sds-bamm-aspect-meta-model/issues/174
67+
"ASPECT_WITH_FIXED_POINT",
68+
"ASPECT_WITH_FIXED_POINT_CONSTRAINT",
69+
"ASPECT_WITH_LANGUAGE_CONSTRAINT",
70+
"ASPECT_WITH_RANGE_CONSTRAINT_ON_CONSTRAINED_NUMERIC_TYPE", // uses bamm-c:OPEN
71+
"ASPECT_WITH_RANGE_CONSTRAINT_WITHOUT_MIN_MAX_DOUBLE_VALUE", // uses bamm-c:OPEN
72+
"ASPECT_WITH_RANGE_CONSTRAINT_WITHOUT_MIN_MAX_INTEGER_VALUE", // uses bamm-c:OPEN
73+
"ASPECT_WITH_RANGE_CONSTRAINT_WITH_ONLY_LOWER_BOUND", // uses bamm-c:OPEN
74+
"ASPECT_WITH_RANGE_CONSTRAINT_WITH_ONLY_LOWER_BOUND_INCL_BOUND_DEFINITION", // uses bamm-c:OPEN
75+
"ASPECT_WITH_RANGE_CONSTRAINT_WITH_ONLY_MIN_VALUE", // uses bamm-c:OPEN
76+
"ASPECT_WITH_RANGE_CONSTRAINT_WITH_ONLY_UPPER_BOUND", // uses bamm-c:OPEN
77+
"ASPECT_WITH_RANGE_CONSTRAINT_WITH_ONLY_UPPER_BOUND_INCL_BOUND_DEFINITION" // uses bamm-c:OPEN
78+
} )
79+
public void testValidateTestAspectModel( final TestAspect testAspect ) {
80+
final Try<VersionedModel> tryModel = TestResources.getModel( testAspect, KnownVersion.getLatest() );
81+
final VersionedModel versionedModel = tryModel.get();
82+
83+
final ValidationReport report = service.validate( tryModel );
84+
if ( !report.conforms() ) {
85+
report.getValidationErrors().forEach( System.out::println );
86+
}
87+
assertThat( report.conforms() ).isTrue();
88+
}
89+
6290
@ParameterizedTest
6391
@MethodSource( value = "versionsUpToIncluding1_0_0" )
6492
public void testInvalidAspectMissingProperties( final KnownVersion metaModelVersion ) {

0 commit comments

Comments
 (0)