Skip to content

Commit ccac8e5

Browse files
dfcoffinclaude
andauthored
feat: ESPI 4.0 Schema Compliance - Phase 25: EndDevice + DTO Cleanup (#94)
Phase 25: EndDevice Implementation + ESPI 4.0 DTO Cleanup - Implemented EndDevice entity with full ESPI 4.0 XSD compliance - Cleaned 13 DTOs (4 customer + 9 usage) - removed id/uuid fields - Created 8 integration test files for Phases 18, 23, 24, 25 - Fixed NotificationMethodKind enum to match customer.xsd - Fixed JAXB OffsetDateTime marshalling in LifecycleDateDto and AcceptanceTestDto - All 654 unit tests + 99 integration tests passing Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
1 parent e7fd099 commit ccac8e5

File tree

68 files changed

+5197
-591
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

68 files changed

+5197
-591
lines changed

CLAUDE.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -230,6 +230,10 @@ ESPI uses Atom XML feeds for data exchange. Key patterns:
230230
- All tests must pass before committing: `mvn test`
231231
- Run tests for affected module and its dependents: `mvn test -pl <module> -am`
232232
- Integration tests should pass before PR merge: `mvn verify -Pfull-integration`
233+
- **IMPORTANT**: Use AssertJ chained assertions - combine all assertions for a single object into one assertion chain
234+
- Good: `assertThat(retrieved).isPresent().hasValueSatisfying(device -> assertThat(device).extracting(...).containsExactly(...))`
235+
- Bad: Multiple separate `assertThat()` statements for the same object
236+
- This improves readability and provides better failure messages
233237

234238
### Common Development Patterns
235239

0 commit comments

Comments
 (0)