You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2021/10/06 17:45:46 UTC
[isis-app-demo] 18/19: adds error scenario for bookVisit that a
reason is required
This is an automated email from the ASF dual-hosted git repository.
danhaywood pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/isis-app-demo.git
commit f1a4dc2bec5719d42c1a3f2886677cec1956254e
Author: Dan Haywood <da...@haywood-associates.co.uk>
AuthorDate: Wed Oct 6 18:37:05 2021 +0100
adds error scenario for bookVisit that a reason is required
---
.../integtest/tests/Pet_bookVisit_IntegTest.java | 22 ++++++++++++++++++++++
1 file changed, 22 insertions(+)
diff --git a/module-visits/src/test/java/petclinic/modules/visits/integtest/tests/Pet_bookVisit_IntegTest.java b/module-visits/src/test/java/petclinic/modules/visits/integtest/tests/Pet_bookVisit_IntegTest.java
index 72d2b3f..2127efa 100644
--- a/module-visits/src/test/java/petclinic/modules/visits/integtest/tests/Pet_bookVisit_IntegTest.java
+++ b/module-visits/src/test/java/petclinic/modules/visits/integtest/tests/Pet_bookVisit_IntegTest.java
@@ -9,8 +9,11 @@ import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import static org.assertj.core.api.Assertions.assertThat;
+import static org.assertj.core.api.Assertions.assertThatThrownBy;
import org.apache.isis.applib.services.clock.ClockService;
+import org.apache.isis.applib.services.wrapper.DisabledException;
+import org.apache.isis.applib.services.wrapper.InvalidException;
import org.apache.isis.testing.fakedata.applib.services.FakeDataService;
import petclinic.modules.pets.dom.pet.Pet;
@@ -53,6 +56,25 @@ public class Pet_bookVisit_IntegTest extends VisitsModuleIntegTestAbstract {
assertThat(visit.getReason()).isEqualTo(reason);
}
+ @Test
+ public void reason_is_required() {
+
+ // given
+ Pet somePet = fakeDataService.enums().anyOf(Pet_persona.class)
+ .findUsing(serviceRegistry);
+ List<Visit> before = visitRepository.findByPetOrderByVisitAtDesc(somePet);
+
+ // when, then
+ LocalDateTime visitAt = clockService.getClock().nowAsLocalDateTime()
+ .plusDays(fakeDataService.ints().between(1, 3));
+
+ assertThatThrownBy(() ->
+ wrapMixin(Pet_bookVisit.class, somePet).act(visitAt, null)
+ )
+ .isInstanceOf(InvalidException.class)
+ .hasMessage("'Reason' is mandatory");
+ }
+
@Inject FakeDataService fakeDataService;
@Inject VisitRepository visitRepository;
@Inject ClockService clockService;