diff --git a/test/p21/CMakeLists.txt b/test/p21/CMakeLists.txt index 17d80805..421d5d5d 100644 --- a/test/p21/CMakeLists.txt +++ b/test/p21/CMakeLists.txt @@ -33,11 +33,16 @@ add_test( test_good_schema_name_asn ${p21read_ap214} ${CMAKE_CURRENT_BINARY_ add_test( test_mismatch_schema_name ${p21read_ap214} ${CMAKE_CURRENT_BINARY_DIR}/exch_file_mismatch.p21 ) add_test( test_ignore_schema_name ${p21read_ap214} -i ${CMAKE_CURRENT_BINARY_DIR}/exch_file_mismatch.p21 ) +add_test( test_missing_and_required ${p21read_ap214} ${CMAKE_CURRENT_SOURCE_DIR}/missing_and_required.p21 ) +add_test( test_missing_and_required_strict ${p21read_ap214} -s ${CMAKE_CURRENT_SOURCE_DIR}/missing_and_required.p21 ) + #not sure how multiple schema names should be handled for testing, by p21read, or by the schema and stepeditor libs #add_test( multi_schema ) #rotator_asm: # FILE_SCHEMA(('CONFIG_CONTROL_DESIGN', 'GEOMETRIC_VALIDATION_PROPERTIES_MIM','SHAPE_APPEARANCE_LAYER_MIM')); -set_tests_properties( test_good_schema_name test_good_schema_name_asn test_mismatch_schema_name test_ignore_schema_name +set_tests_properties( test_good_schema_name test_good_schema_name_asn test_mismatch_schema_name + test_ignore_schema_name test_missing_and_required test_missing_and_required_strict PROPERTIES DEPENDS build_cpp_sdai_AP214E3_2010 LABELS exchange_file ) -set_tests_properties( test_mismatch_schema_name PROPERTIES WILL_FAIL TRUE ) + +set_tests_properties( test_mismatch_schema_name test_missing_and_required_strict PROPERTIES WILL_FAIL TRUE ) diff --git a/test/p21/missing_and_required.p21 b/test/p21/missing_and_required.p21 new file mode 100644 index 00000000..9fa4c281 --- /dev/null +++ b/test/p21/missing_and_required.p21 @@ -0,0 +1,13 @@ +ISO-10303-21; +HEADER; +FILE_DESCRIPTION(('SCL test file'),'2;1'); +FILE_NAME('missing_and_required.stp','2011-11-29T',('mp'),(''),'0','1','2'); +FILE_SCHEMA(('AUTOMOTIVE_DESIGN')); +ENDSEC; +DATA; +/* ERROR: ENTITY #56 Cartesian_Point + name : missing and required. For compatibility, replacing with ''. +*/ +#56=CARTESIAN_POINT($,(366.025403784,-4.80740671596E-14,0.00000000000)); +ENDSEC; +END-ISO-10303-21;