Add parameterized ShapeContractTest for Shape interface invariants #15

Merged
thib8956 merged 1 commits from issue-8/shape-contract-test into master 2026-03-27 16:21:22 +00:00
Owner

Summary

  • Add ShapeContractTest with 3 parameterized contract tests (clone(), getBounds(), translate()) across all 5 Shape implementations (SRectangle, SCircle, STriangle, SText, SCollection) — 15 tests total
  • Add ShapeFactory test utility providing a Stream<Shape> via @MethodSource
  • Add junit-jupiter-params dependency to pom.xml

Closes #8

## Summary - Add `ShapeContractTest` with 3 parameterized contract tests (`clone()`, `getBounds()`, `translate()`) across all 5 Shape implementations (SRectangle, SCircle, STriangle, SText, SCollection) — 15 tests total - Add `ShapeFactory` test utility providing a `Stream<Shape>` via `@MethodSource` - Add `junit-jupiter-params` dependency to `pom.xml` Closes #8
thib8956 added 1 commit 2026-03-27 16:11:56 +00:00
Add parameterized ShapeContractTest for Shape interface invariants
All checks were successful
CI / build-and-test (pull_request) Successful in 18s
7ddef4d8ab
Verify clone(), getBounds(), and translate() contracts across all Shape
implementations (SRectangle, SCircle, STriangle, SText, SCollection)
using @ParameterizedTest + @MethodSource.

Also adds junit-jupiter-params dependency to pom.xml.

Closes #8
thib8956 force-pushed issue-8/shape-contract-test from 35e5829e5c to 7ddef4d8ab 2026-03-27 16:11:56 +00:00 Compare
thib8956 merged commit 29d202c156 into master 2026-03-27 16:21:22 +00:00
thib8956 deleted branch issue-8/shape-contract-test 2026-03-27 16:21:23 +00:00
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: thib8956/new-shapes#15