Commit Graph

26 Commits

Author SHA1 Message Date
Andrej730 72f8218fcd ruff - check for more unused imports 2026-01-26 17:10:02 +05:00
Andrej730 13be6ccd45 Sort imports 2025-12-19 18:53:14 +05:00
Dion Moult 6da51c2a6e Update IfcTester to support changed upstream spec where prohibited specs cannot have requirements. 2025-09-30 00:05:57 +10:00
Andrej730 a72e1231f2 test_ids - use more generic exception to fix tests on xmlschema>=4.0
In xmlschema 4.0 it started to throw a more generic XMLSchemaValidationError - I guess there are many things that can trigger validation check and in the new version some other issue gets there first.
2025-06-18 19:12:11 +05:00
Andrej 8b4683aef1 replace api.run with static methods 2025-06-09 18:03:19 +05:00
Dion Moult 1ed770d454 Fix #5921. Bug when parsing IDS XML of facets with no attributes. 2025-01-14 13:36:33 +11:00
Dion Moult ec600ec72e IfcTester can now read from XML strings in addition to opening files on disk 2025-01-14 13:35:45 +11:00
Dion Moult 41362e1582 Fix #5950. IfcTester now considers optional requirement facets as per latest documentation.
The IDS documentation used to state that "optional" on requirement
facets was "for information only" and didn't affect the pass / fail
state. This was changed a while ago (which I missed) to a new behaviour:
both no values and passing values will pass.
2025-01-12 16:28:14 +11:00
Dion Moult a0cb980a8f See #4896. Bump to IDS v1.0. 2024-06-20 17:37:14 +10:00
Andrej730 74fa0a106e fix issue with prohibited facets in 0065c5f, add a test 2024-04-18 10:48:21 +02:00
Andrej730 5c398428c3 ifctester.Specification.set_usage convenience method
sets minOccurs and maxOccurs according to the agreement mentioned in the latest ids.xsd
https://github.com/buildingSMART/IDS/blob/6d71cdf3547a0383c6cfbbead81a7cef7521ac3a/Development/ids.xsd#L67-L72
2024-04-18 10:48:21 +02:00
Andrej730 7be396474c typing 2024-04-18 10:48:21 +02:00
Dion Moult 13b845df92 Fix incorrect handling of prohibited specifications 2024-04-18 10:48:06 +02:00
Dion Moult 4abb4d7f63 Run black on IfcTester 2024-04-18 10:47:36 +02:00
Dion Moult ed8eb7543b Fix #4465. Update IfcTester to IDS 0.9.7 2024-04-18 10:47:36 +02:00
Claudio Benghi 4fda95a4a6 Fixed most issues with IDS auditing 2024-04-16 10:37:18 +02:00
Thomas Krijnen 42da8aba83 Correct xsi:schemaLocation 2024-04-16 10:37:15 +02:00
Thomas Krijnen 79c8594f8f Update IDS.xsd 2024-04-16 10:37:15 +02:00
Andrej730 91a11ccb69 Fixed ifctester tests by the latest ids schema #3458
Commented out tests involving minOccurs and maxOccurs until https://github.com/buildingSMART/IDS/issues/144 gets resolved.
2024-04-16 10:05:50 +02:00
Dion Moult b8e2e693f1 Fix bug where IfcTester would pass derived attribute facets.
Now that IfcOpenShell supports derived attributes, we need to explicitly make sure the attribute facet only considers forward attributes.
2024-04-15 13:30:40 +02:00
Vukas Pajic bc2a12a498 added new tests for case where spec has no requirements 2024-04-15 09:37:49 +02:00
Dion Moult d6be887bde Minor IfcTester test case fixes 2022-10-18 23:11:11 +11:00
Dion Moult 27dc81544c Minor fixes to IfcTester testcases 2022-10-07 13:34:19 +11:00
Dion Moult 422cc4802c Implement optionality in IfcTester, and generate integration testcases 2022-09-13 19:50:51 +10:00
Dion Moult 282c140c14 More aggressive refactoring for IfcTester to break up the monolithic codebase 2022-07-15 14:09:55 +10:00
Dion Moult e79068854a Refactor IDS into IfcTester with less magic and less code
* String building code all deleted and replaced with more maintainable code
 * Obscure features like metaclasses deleted
 * Regular constructors used instead of factory create and parse methods
 * Use Python class naming convention
 * Use polymorphism more (e.g. asdict, init) for facet classes
 * No more boolean any/and as users may want to test everything and not fail early
 * Error state is stored instead of streamed to logger so it can be tested and more flexible formatting
2022-07-15 09:57:40 +10:00