From ee88dc9ff5432fbc380203f84b72f23d0550e205 Mon Sep 17 00:00:00 2001 From: Kamil Patryk Kozakowski Date: Sun, 20 Jul 2025 07:44:48 +0200 Subject: [PATCH] better tests style --- .../ast/app/AstTransitionParserTest.java | 98 ++++++++++++++----- 1 file changed, 73 insertions(+), 25 deletions(-) diff --git a/src/test/java/click/kamil/springstatemachineexporter/ast/app/AstTransitionParserTest.java b/src/test/java/click/kamil/springstatemachineexporter/ast/app/AstTransitionParserTest.java index db89b95..14dafc1 100644 --- a/src/test/java/click/kamil/springstatemachineexporter/ast/app/AstTransitionParserTest.java +++ b/src/test/java/click/kamil/springstatemachineexporter/ast/app/AstTransitionParserTest.java @@ -25,10 +25,14 @@ class AstTransitionParserTest { assertThat(transitions).hasSize(1); Transition transition = transitions.getFirst(); - assertThat(transition.getType()).isEqualTo("withExternal"); + assertThat(transition) + .extracting(Transition::getType) + .isEqualTo("withExternal"); assertThat(transition.getSourceStates()).containsExactly("CREATED"); assertThat(transition.getTargetStates()).containsExactly("PAID"); - assertThat(transition.getEvent()).isEqualTo("PAY"); + assertThat(transition) + .extracting(Transition::getEvent) + .isEqualTo("PAY"); } @Test @@ -46,7 +50,9 @@ class AstTransitionParserTest { assertThat(transitions).hasSize(1); Transition transition = transitions.getFirst(); - assertThat(transition.getGuard()).isEqualTo("amount > 0"); + assertThat(transition) + .extracting(Transition::getGuard) + .isEqualTo("amount > 0"); assertThat(transition.isLambdaGuard()).isFalse(); } @@ -124,16 +130,24 @@ class AstTransitionParserTest { assertThat(transitions).hasSize(2); Transition first = transitions.getFirst(); - assertThat(first.getType()).isEqualTo("withExternal"); + assertThat(first) + .extracting(Transition::getType) + .isEqualTo("withExternal"); assertThat(first.getSourceStates()).containsExactly("CREATED"); assertThat(first.getTargetStates()).containsExactly("PAID"); - assertThat(first.getEvent()).isEqualTo("PAY"); + assertThat(first) + .extracting(Transition::getEvent) + .isEqualTo("PAY"); Transition second = transitions.get(1); - assertThat(second.getType()).isEqualTo("withExternal"); + assertThat(second) + .extracting(Transition::getType) + .isEqualTo("withExternal"); assertThat(second.getSourceStates()).containsExactly("PAID"); assertThat(second.getTargetStates()).containsExactly("SHIPPED"); - assertThat(second.getEvent()).isEqualTo("SHIP"); + assertThat(second) + .extracting(Transition::getEvent) + .isEqualTo("SHIP"); } @Test @@ -152,24 +166,40 @@ class AstTransitionParserTest { assertThat(transitions).hasSize(3); Transition first = transitions.getFirst(); - assertThat(first.getType()).isEqualTo("withChoice"); + assertThat(first) + .extracting(Transition::getType) + .isEqualTo("withChoice"); assertThat(first.getSourceStates()).containsExactly("PAID"); assertThat(first.getTargetStates()).containsExactly("SHIPPED"); - assertThat(first.getGuard()).isEqualTo("isExpress()"); - assertThat(first.getOrder()).isEqualTo(0); + assertThat(first) + .extracting(Transition::getGuard) + .isEqualTo("isExpress()"); + assertThat(first) + .extracting(Transition::getOrder) + .isEqualTo(0); Transition second = transitions.get(1); - assertThat(second.getType()).isEqualTo("withChoice"); + assertThat(second) + .extracting(Transition::getType) + .isEqualTo("withChoice"); assertThat(second.getSourceStates()).containsExactly("PAID"); assertThat(second.getTargetStates()).containsExactly("CANCELLED"); - assertThat(second.getGuard()).isEqualTo("isCancelled()"); - assertThat(second.getOrder()).isEqualTo(1); + assertThat(second) + .extracting(Transition::getGuard) + .isEqualTo("isCancelled()"); + assertThat(second) + .extracting(Transition::getOrder) + .isEqualTo(1); Transition third = transitions.get(2); - assertThat(third.getType()).isEqualTo("withChoice"); + assertThat(third) + .extracting(Transition::getType) + .isEqualTo("withChoice"); assertThat(third.getSourceStates()).containsExactly("PAID"); assertThat(third.getTargetStates()).containsExactly("PENDING"); - assertThat(third.getOrder()).isEqualTo(2); + assertThat(third) + .extracting(Transition::getOrder) + .isEqualTo(2); } @Test @@ -186,9 +216,15 @@ class AstTransitionParserTest { List transitions = AstTransitionParser.parseTransitions(method); assertThat(transitions).hasSize(3); - assertThat(transitions.getFirst().getType()).isEqualTo("withJunction"); - assertThat(transitions.get(1).getType()).isEqualTo("withJunction"); - assertThat(transitions.get(2).getType()).isEqualTo("withJunction"); + assertThat(transitions.getFirst()) + .extracting(Transition::getType) + .isEqualTo("withJunction"); + assertThat(transitions.get(1)) + .extracting(Transition::getType) + .isEqualTo("withJunction"); + assertThat(transitions.get(2)) + .extracting(Transition::getType) + .isEqualTo("withJunction"); } @Test @@ -206,9 +242,13 @@ class AstTransitionParserTest { assertThat(transitions).hasSize(1); Transition transition = transitions.getFirst(); - assertThat(transition.getType()).isEqualTo("withInternal"); + assertThat(transition) + .extracting(Transition::getType) + .isEqualTo("withInternal"); assertThat(transition.getSourceStates()).containsExactly("PAID"); - assertThat(transition.getEvent()).isEqualTo("UPDATE"); + assertThat(transition) + .extracting(Transition::getEvent) + .isEqualTo("UPDATE"); assertThat(transition.getActions()).containsExactly("updateStatus()"); } @@ -227,10 +267,14 @@ class AstTransitionParserTest { assertThat(transitions).hasSize(1); Transition transition = transitions.getFirst(); - assertThat(transition.getType()).isEqualTo("withLocal"); + assertThat(transition) + .extracting(Transition::getType) + .isEqualTo("withLocal"); assertThat(transition.getSourceStates()).containsExactly("PAID"); assertThat(transition.getTargetStates()).containsExactly("PROCESSING"); - assertThat(transition.getEvent()).isEqualTo("PROCESS"); + assertThat(transition) + .extracting(Transition::getEvent) + .isEqualTo("PROCESS"); } @Test @@ -248,7 +292,9 @@ class AstTransitionParserTest { assertThat(transitions).hasSize(1); Transition transition = transitions.getFirst(); - assertThat(transition.getType()).isEqualTo("withFork"); + assertThat(transition) + .extracting(Transition::getType) + .isEqualTo("withFork"); assertThat(transition.getSourceStates()).containsExactly("PAID"); assertThat(transition.getTargetStates()).containsExactlyInAnyOrder("SHIPPING", "BILLING"); } @@ -268,7 +314,9 @@ class AstTransitionParserTest { assertThat(transitions).hasSize(1); Transition transition = transitions.getFirst(); - assertThat(transition.getType()).isEqualTo("withJoin"); + assertThat(transition) + .extracting(Transition::getType) + .isEqualTo("withJoin"); assertThat(transition.getSourceStates()).containsExactlyInAnyOrder("SHIPPING", "BILLING"); assertThat(transition.getTargetStates()).containsExactly("COMPLETED"); } @@ -428,7 +476,7 @@ class AstTransitionParserTest { if (cu.types().isEmpty()) { return null; } - TypeDeclaration typeDecl = (TypeDeclaration) cu.types().get(0); + TypeDeclaration typeDecl = (TypeDeclaration) cu.types().getFirst(); MethodDeclaration[] methods = typeDecl.getMethods(); if (methods.length > 0) { return methods[0];