This is an automated email from the ASF dual-hosted git repository. danhaywood pushed a commit to branch v2 in repository https://gitbox.apache.org/repos/asf/causeway-app-petclinic.git
commit 64e79fd417351e551214c8de9434ea12e01c0cc6 Author: Dan Haywood <[email protected]> AuthorDate: Sun May 26 23:15:53 2024 +0100 adds sad case (cannot book visit in the past) as integ test --- .../integtests/PetOwner_bookVisit_IntegTest.java | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/module-visit/src/test/java/domainapp/modules/visit/integtests/PetOwner_bookVisit_IntegTest.java b/module-visit/src/test/java/domainapp/modules/visit/integtests/PetOwner_bookVisit_IntegTest.java index 727cd34..94cf5c3 100644 --- a/module-visit/src/test/java/domainapp/modules/visit/integtests/PetOwner_bookVisit_IntegTest.java +++ b/module-visit/src/test/java/domainapp/modules/visit/integtests/PetOwner_bookVisit_IntegTest.java @@ -60,6 +60,25 @@ public class PetOwner_bookVisit_IntegTest extends VisitModuleIntegTestAbstract { assertThat(visit.getVisitAt()).isEqualTo(visitAt); } + @Test + public void cannot_book_in_the_past() { + + // given + PetOwner somePetOwner = fakeDataService.enums() + .anyOf(PetOwner_persona.class) + .findUsing(serviceRegistry); + Pet somePet = fakeDataService.collections() + .anyOf(somePetOwner.getPets()); + + // when, then + LocalDateTime visitAt = clockService.getClock().nowAsLocalDateTime(); + + assertThatThrownBy(() -> + wrapMixin(PetOwner_bookVisit.class, somePetOwner).act(somePet, visitAt) + ) + .isInstanceOf(InvalidException.class) + .hasMessage("Must book in the future"); + } @Inject FakeDataService fakeDataService;
