diff --git a/CHANGELOG.md b/CHANGELOG.md index e31146b41f..edf2c698be 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -18,9 +18,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed - [Archetype] Replace JUnit Jupiter with AssertJ ([#2969](https://github.com/cucumber/cucumber-jvm/pull/2969) M.P. Korstanje) - [JUnit Platform Engine] Use JUnit Platform 1.11.3 (JUnit Jupiter 5.11.3) +- [Core] Update dependency io.cucumber:gherkin to v31.0.0 +- [Core] Update dependency io.cucumber:messages to v27.1.0 ### Added - [Core] Pretty-Print DocStringArgument Step Arguments([#2953](https://github.com/cucumber/cucumber-jvm/pull/2953) Daniel Miladinov) +- [Core] Include hook type in cucumber message ([#2972](https://github.com/cucumber/cucumber-jvm/pull/2972) M.P. Korstanje) ## [7.20.1] - 2024-10-09 ### Fixed diff --git a/cucumber-core/src/main/java/io/cucumber/core/backend/HookDefinition.java b/cucumber-core/src/main/java/io/cucumber/core/backend/HookDefinition.java index e5c5fbbfb2..f1aed8f08d 100644 --- a/cucumber-core/src/main/java/io/cucumber/core/backend/HookDefinition.java +++ b/cucumber-core/src/main/java/io/cucumber/core/backend/HookDefinition.java @@ -2,6 +2,8 @@ import org.apiguardian.api.API; +import java.util.Optional; + @API(status = API.Status.STABLE) public interface HookDefinition extends Located { @@ -11,4 +13,18 @@ public interface HookDefinition extends Located { int getOrder(); + default Optional getHookType() { + return Optional.empty(); + } + + enum HookType { + + BEFORE, + + AFTER, + + BEFORE_STEP, + + AFTER_STEP; + } } diff --git a/cucumber-core/src/main/java/io/cucumber/core/runner/CachingGlue.java b/cucumber-core/src/main/java/io/cucumber/core/runner/CachingGlue.java index 6fa0f865dd..dd57be9885 100644 --- a/cucumber-core/src/main/java/io/cucumber/core/runner/CachingGlue.java +++ b/cucumber-core/src/main/java/io/cucumber/core/runner/CachingGlue.java @@ -28,6 +28,7 @@ import io.cucumber.datatable.TableEntryByTypeTransformer; import io.cucumber.messages.types.Envelope; import io.cucumber.messages.types.Hook; +import io.cucumber.messages.types.HookType; import io.cucumber.messages.types.JavaMethod; import io.cucumber.messages.types.JavaStackTraceElement; import io.cucumber.messages.types.Location; @@ -306,7 +307,23 @@ private void emitHook(CoreHookDefinition coreHook) { coreHook.getDefinitionLocation() .map(this::createSourceReference) .orElseGet(this::emptySourceReference), - coreHook.getTagExpression(), null); + coreHook.getTagExpression(), + coreHook.getHookType() + .map(hookType -> { + switch (hookType) { + case BEFORE: + return HookType.BEFORE_TEST_CASE; + case AFTER: + return HookType.AFTER_TEST_CASE; + case BEFORE_STEP: + return HookType.BEFORE_TEST_STEP; + case AFTER_STEP: + return HookType.AFTER_TEST_STEP; + default: + return null; + } + }) + .orElse(null)); bus.send(Envelope.of(messagesHook)); } diff --git a/cucumber-core/src/main/java/io/cucumber/core/runner/CoreHookDefinition.java b/cucumber-core/src/main/java/io/cucumber/core/runner/CoreHookDefinition.java index ea9962cc6a..88b3d4c7bd 100644 --- a/cucumber-core/src/main/java/io/cucumber/core/runner/CoreHookDefinition.java +++ b/cucumber-core/src/main/java/io/cucumber/core/runner/CoreHookDefinition.java @@ -71,6 +71,10 @@ String getTagExpression() { return delegate.getTagExpression(); } + Optional getHookType() { + return delegate.getHookType(); + } + static class ScenarioScopedCoreHookDefinition extends CoreHookDefinition implements ScenarioScoped { private ScenarioScopedCoreHookDefinition(UUID id, HookDefinition delegate) { diff --git a/cucumber-java/src/main/java/io/cucumber/java/GlueAdaptor.java b/cucumber-java/src/main/java/io/cucumber/java/GlueAdaptor.java index 2bb64f32ae..8734380c23 100644 --- a/cucumber-java/src/main/java/io/cucumber/java/GlueAdaptor.java +++ b/cucumber-java/src/main/java/io/cucumber/java/GlueAdaptor.java @@ -6,6 +6,11 @@ import java.lang.annotation.Annotation; import java.lang.reflect.Method; +import static io.cucumber.core.backend.HookDefinition.HookType.AFTER; +import static io.cucumber.core.backend.HookDefinition.HookType.AFTER_STEP; +import static io.cucumber.core.backend.HookDefinition.HookType.BEFORE; +import static io.cucumber.core.backend.HookDefinition.HookType.BEFORE_STEP; + final class GlueAdaptor { private final Lookup lookup; @@ -24,25 +29,27 @@ void addDefinition(Method method, Annotation annotation) { } else if (annotationType.equals(Before.class)) { Before before = (Before) annotation; String tagExpression = before.value(); - glue.addBeforeHook(new JavaHookDefinition(method, tagExpression, before.order(), lookup)); + glue.addBeforeHook(new JavaHookDefinition(BEFORE, method, tagExpression, before.order(), lookup)); } else if (annotationType.equals(BeforeAll.class)) { BeforeAll beforeAll = (BeforeAll) annotation; glue.addBeforeAllHook(new JavaStaticHookDefinition(method, beforeAll.order(), lookup)); } else if (annotationType.equals(After.class)) { After after = (After) annotation; String tagExpression = after.value(); - glue.addAfterHook(new JavaHookDefinition(method, tagExpression, after.order(), lookup)); + glue.addAfterHook(new JavaHookDefinition(AFTER, method, tagExpression, after.order(), lookup)); } else if (annotationType.equals(AfterAll.class)) { AfterAll afterAll = (AfterAll) annotation; glue.addAfterAllHook(new JavaStaticHookDefinition(method, afterAll.order(), lookup)); } else if (annotationType.equals(BeforeStep.class)) { BeforeStep beforeStep = (BeforeStep) annotation; String tagExpression = beforeStep.value(); - glue.addBeforeStepHook(new JavaHookDefinition(method, tagExpression, beforeStep.order(), lookup)); + glue.addBeforeStepHook( + new JavaHookDefinition(BEFORE_STEP, method, tagExpression, beforeStep.order(), lookup)); } else if (annotationType.equals(AfterStep.class)) { AfterStep afterStep = (AfterStep) annotation; String tagExpression = afterStep.value(); - glue.addAfterStepHook(new JavaHookDefinition(method, tagExpression, afterStep.order(), lookup)); + glue.addAfterStepHook( + new JavaHookDefinition(AFTER_STEP, method, tagExpression, afterStep.order(), lookup)); } else if (annotationType.equals(ParameterType.class)) { ParameterType parameterType = (ParameterType) annotation; String pattern = parameterType.value(); diff --git a/cucumber-java/src/main/java/io/cucumber/java/JavaHookDefinition.java b/cucumber-java/src/main/java/io/cucumber/java/JavaHookDefinition.java index 3fcc2e1e52..3e17711681 100644 --- a/cucumber-java/src/main/java/io/cucumber/java/JavaHookDefinition.java +++ b/cucumber-java/src/main/java/io/cucumber/java/JavaHookDefinition.java @@ -3,9 +3,11 @@ import io.cucumber.core.backend.HookDefinition; import io.cucumber.core.backend.Lookup; import io.cucumber.core.backend.TestCaseState; +import io.cucumber.messages.types.HookType; import java.lang.reflect.Method; import java.lang.reflect.Type; +import java.util.Optional; import static io.cucumber.java.InvalidMethodSignatureException.builder; import static java.util.Objects.requireNonNull; @@ -14,9 +16,11 @@ final class JavaHookDefinition extends AbstractGlueDefinition implements HookDef private final String tagExpression; private final int order; + private final HookType hookType; - JavaHookDefinition(Method method, String tagExpression, int order, Lookup lookup) { + JavaHookDefinition(HookType hookType, Method method, String tagExpression, int order, Lookup lookup) { super(requireValidMethod(method), lookup); + this.hookType = requireNonNull(hookType); this.tagExpression = requireNonNull(tagExpression, "tag-expression may not be null"); this.order = order; } @@ -74,4 +78,8 @@ public int getOrder() { return order; } + @Override + public Optional getHookType() { + return Optional.of(hookType); + } } diff --git a/cucumber-java/src/test/java/io/cucumber/java/JavaHookDefinitionTest.java b/cucumber-java/src/test/java/io/cucumber/java/JavaHookDefinitionTest.java index e1616cd003..be96734b80 100644 --- a/cucumber-java/src/test/java/io/cucumber/java/JavaHookDefinitionTest.java +++ b/cucumber-java/src/test/java/io/cucumber/java/JavaHookDefinitionTest.java @@ -12,6 +12,7 @@ import java.lang.reflect.Method; import java.util.List; +import static io.cucumber.core.backend.HookDefinition.HookType.BEFORE; import static org.hamcrest.CoreMatchers.startsWith; import static org.hamcrest.MatcherAssert.assertThat; import static org.junit.jupiter.api.Assertions.assertThrows; @@ -39,7 +40,7 @@ public T getInstance(Class glueClass) { @Test void can_create_with_no_argument() throws Throwable { Method method = JavaHookDefinitionTest.class.getMethod("no_arguments"); - JavaHookDefinition definition = new JavaHookDefinition(method, "", 0, lookup); + JavaHookDefinition definition = new JavaHookDefinition(BEFORE, method, "", 0, lookup); definition.execute(state); assertTrue(invoked); } @@ -52,7 +53,7 @@ public void no_arguments() { @Test void can_create_with_single_scenario_argument() throws Throwable { Method method = JavaHookDefinitionTest.class.getMethod("single_argument", Scenario.class); - JavaHookDefinition definition = new JavaHookDefinition(method, "", 0, lookup); + JavaHookDefinition definition = new JavaHookDefinition(BEFORE, method, "", 0, lookup); definition.execute(state); assertTrue(invoked); } @@ -67,7 +68,7 @@ void fails_if_hook_argument_is_not_scenario_result() throws NoSuchMethodExceptio Method method = JavaHookDefinitionTest.class.getMethod("invalid_parameter", String.class); InvalidMethodSignatureException exception = assertThrows( InvalidMethodSignatureException.class, - () -> new JavaHookDefinition(method, "", 0, lookup)); + () -> new JavaHookDefinition(BEFORE, method, "", 0, lookup)); assertThat(exception.getMessage(), startsWith("" + "A method annotated with Before, After, BeforeStep or AfterStep must have one of these signatures:\n" + " * public void before_or_after(io.cucumber.java.Scenario scenario)\n" + @@ -84,7 +85,7 @@ void fails_if_generic_hook_argument_is_not_scenario_result() throws NoSuchMethod Method method = JavaHookDefinitionTest.class.getMethod("invalid_generic_parameter", List.class); assertThrows( InvalidMethodSignatureException.class, - () -> new JavaHookDefinition(method, "", 0, lookup)); + () -> new JavaHookDefinition(BEFORE, method, "", 0, lookup)); } public void invalid_generic_parameter(List badType) { @@ -96,7 +97,7 @@ void fails_if_too_many_arguments() throws NoSuchMethodException { Method method = JavaHookDefinitionTest.class.getMethod("too_many_parameters", Scenario.class, String.class); assertThrows( InvalidMethodSignatureException.class, - () -> new JavaHookDefinition(method, "", 0, lookup)); + () -> new JavaHookDefinition(BEFORE, method, "", 0, lookup)); } public void too_many_parameters(Scenario arg1, String arg2) { @@ -108,7 +109,7 @@ void fails_with_non_void_return_type() throws Throwable { Method method = JavaHookDefinitionTest.class.getMethod("string_return_type"); InvalidMethodSignatureException exception = assertThrows( InvalidMethodSignatureException.class, - () -> new JavaHookDefinition(method, "", 0, lookup)); + () -> new JavaHookDefinition(BEFORE, method, "", 0, lookup)); assertThat(exception.getMessage(), startsWith("" + "A method annotated with Before, After, BeforeStep or AfterStep must have one of these signatures:\n" + " * public void before_or_after(io.cucumber.java.Scenario scenario)\n" + diff --git a/cucumber-java8/src/main/java/io/cucumber/java8/Java8HookDefinition.java b/cucumber-java8/src/main/java/io/cucumber/java8/Java8HookDefinition.java index 0245b8c915..1c611e1802 100644 --- a/cucumber-java8/src/main/java/io/cucumber/java8/Java8HookDefinition.java +++ b/cucumber-java8/src/main/java/io/cucumber/java8/Java8HookDefinition.java @@ -3,25 +3,29 @@ import io.cucumber.core.backend.HookDefinition; import io.cucumber.core.backend.TestCaseState; +import java.util.Optional; + import static java.util.Objects.requireNonNull; final class Java8HookDefinition extends AbstractGlueDefinition implements HookDefinition { private final String tagExpression; private final int order; + private final HookType hookType; - Java8HookDefinition(String tagExpression, int order, HookBody hookBody) { - this(tagExpression, order, (Object) hookBody); + Java8HookDefinition(HookType hookType, String tagExpression, int order, HookBody hookBody) { + this(hookType, tagExpression, order, (Object) hookBody); } - private Java8HookDefinition(String tagExpression, int order, Object body) { + private Java8HookDefinition(HookType hookType, String tagExpression, int order, Object body) { super(body, new Exception().getStackTrace()[3]); this.order = order; this.tagExpression = requireNonNull(tagExpression, "tag-expression may not be null"); + this.hookType = requireNonNull(hookType); } - Java8HookDefinition(String tagExpression, int order, HookNoArgsBody hookNoArgsBody) { - this(tagExpression, order, (Object) hookNoArgsBody); + Java8HookDefinition(HookType hookType, String tagExpression, int order, HookNoArgsBody hookNoArgsBody) { + this(hookType, tagExpression, order, (Object) hookNoArgsBody); } @Override @@ -45,4 +49,8 @@ public int getOrder() { return order; } + @Override + public Optional getHookType() { + return Optional.of(hookType); + } } diff --git a/cucumber-java8/src/main/java/io/cucumber/java8/LambdaGlue.java b/cucumber-java8/src/main/java/io/cucumber/java8/LambdaGlue.java index 7b41c7b931..271081f5c9 100644 --- a/cucumber-java8/src/main/java/io/cucumber/java8/LambdaGlue.java +++ b/cucumber-java8/src/main/java/io/cucumber/java8/LambdaGlue.java @@ -2,6 +2,11 @@ import org.apiguardian.api.API; +import static io.cucumber.core.backend.HookDefinition.HookType.AFTER; +import static io.cucumber.core.backend.HookDefinition.HookType.AFTER_STEP; +import static io.cucumber.core.backend.HookDefinition.HookType.BEFORE; +import static io.cucumber.core.backend.HookDefinition.HookType.BEFORE_STEP; + @API(status = API.Status.STABLE) public interface LambdaGlue { @@ -17,7 +22,8 @@ public interface LambdaGlue { */ default void Before(final HookBody body) { LambdaGlueRegistry.INSTANCE.get() - .addBeforeHookDefinition(new Java8HookDefinition(EMPTY_TAG_EXPRESSION, DEFAULT_BEFORE_ORDER, body)); + .addBeforeHookDefinition( + new Java8HookDefinition(BEFORE, EMPTY_TAG_EXPRESSION, DEFAULT_BEFORE_ORDER, body)); } /** @@ -30,7 +36,7 @@ default void Before(final HookBody body) { */ default void Before(String tagExpression, final HookBody body) { LambdaGlueRegistry.INSTANCE.get() - .addBeforeHookDefinition(new Java8HookDefinition(tagExpression, DEFAULT_BEFORE_ORDER, body)); + .addBeforeHookDefinition(new Java8HookDefinition(BEFORE, tagExpression, DEFAULT_BEFORE_ORDER, body)); } /** @@ -42,7 +48,7 @@ default void Before(String tagExpression, final HookBody body) { */ default void Before(int order, final HookBody body) { LambdaGlueRegistry.INSTANCE.get() - .addBeforeHookDefinition(new Java8HookDefinition(EMPTY_TAG_EXPRESSION, order, body)); + .addBeforeHookDefinition(new Java8HookDefinition(BEFORE, EMPTY_TAG_EXPRESSION, order, body)); } /** @@ -56,7 +62,8 @@ default void Before(int order, final HookBody body) { * argument */ default void Before(String tagExpression, int order, final HookBody body) { - LambdaGlueRegistry.INSTANCE.get().addBeforeHookDefinition(new Java8HookDefinition(tagExpression, order, body)); + LambdaGlueRegistry.INSTANCE.get() + .addBeforeHookDefinition(new Java8HookDefinition(BEFORE, tagExpression, order, body)); } /** @@ -66,7 +73,8 @@ default void Before(String tagExpression, int order, final HookBody body) { */ default void Before(final HookNoArgsBody body) { LambdaGlueRegistry.INSTANCE.get() - .addBeforeHookDefinition(new Java8HookDefinition(EMPTY_TAG_EXPRESSION, DEFAULT_BEFORE_ORDER, body)); + .addBeforeHookDefinition( + new Java8HookDefinition(BEFORE, EMPTY_TAG_EXPRESSION, DEFAULT_BEFORE_ORDER, body)); } /** @@ -78,7 +86,7 @@ default void Before(final HookNoArgsBody body) { */ default void Before(String tagExpression, final HookNoArgsBody body) { LambdaGlueRegistry.INSTANCE.get() - .addBeforeHookDefinition(new Java8HookDefinition(tagExpression, DEFAULT_BEFORE_ORDER, body)); + .addBeforeHookDefinition(new Java8HookDefinition(BEFORE, tagExpression, DEFAULT_BEFORE_ORDER, body)); } /** @@ -90,7 +98,7 @@ default void Before(String tagExpression, final HookNoArgsBody body) { */ default void Before(int order, final HookNoArgsBody body) { LambdaGlueRegistry.INSTANCE.get() - .addBeforeHookDefinition(new Java8HookDefinition(EMPTY_TAG_EXPRESSION, order, body)); + .addBeforeHookDefinition(new Java8HookDefinition(BEFORE, EMPTY_TAG_EXPRESSION, order, body)); } /** @@ -103,7 +111,8 @@ default void Before(int order, final HookNoArgsBody body) { * @param body lambda to execute */ default void Before(String tagExpression, int order, final HookNoArgsBody body) { - LambdaGlueRegistry.INSTANCE.get().addBeforeHookDefinition(new Java8HookDefinition(tagExpression, order, body)); + LambdaGlueRegistry.INSTANCE.get() + .addBeforeHookDefinition(new Java8HookDefinition(BEFORE, tagExpression, order, body)); } /** @@ -113,7 +122,8 @@ default void Before(String tagExpression, int order, final HookNoArgsBody body) */ default void BeforeStep(final HookBody body) { LambdaGlueRegistry.INSTANCE.get() - .addBeforeStepHookDefinition(new Java8HookDefinition(EMPTY_TAG_EXPRESSION, DEFAULT_BEFORE_ORDER, body)); + .addBeforeStepHookDefinition( + new Java8HookDefinition(BEFORE_STEP, EMPTY_TAG_EXPRESSION, DEFAULT_BEFORE_ORDER, body)); } /** @@ -126,7 +136,8 @@ default void BeforeStep(final HookBody body) { */ default void BeforeStep(String tagExpression, final HookBody body) { LambdaGlueRegistry.INSTANCE.get() - .addBeforeStepHookDefinition(new Java8HookDefinition(tagExpression, DEFAULT_BEFORE_ORDER, body)); + .addBeforeStepHookDefinition( + new Java8HookDefinition(BEFORE_STEP, tagExpression, DEFAULT_BEFORE_ORDER, body)); } /** @@ -138,7 +149,7 @@ default void BeforeStep(String tagExpression, final HookBody body) { */ default void BeforeStep(int order, final HookBody body) { LambdaGlueRegistry.INSTANCE.get() - .addBeforeStepHookDefinition(new Java8HookDefinition(EMPTY_TAG_EXPRESSION, order, body)); + .addBeforeStepHookDefinition(new Java8HookDefinition(BEFORE_STEP, EMPTY_TAG_EXPRESSION, order, body)); } /** @@ -153,7 +164,7 @@ default void BeforeStep(int order, final HookBody body) { */ default void BeforeStep(String tagExpression, int order, final HookBody body) { LambdaGlueRegistry.INSTANCE.get() - .addBeforeStepHookDefinition(new Java8HookDefinition(tagExpression, order, body)); + .addBeforeStepHookDefinition(new Java8HookDefinition(BEFORE_STEP, tagExpression, order, body)); } /** @@ -163,7 +174,8 @@ default void BeforeStep(String tagExpression, int order, final HookBody body) { */ default void BeforeStep(final HookNoArgsBody body) { LambdaGlueRegistry.INSTANCE.get() - .addBeforeStepHookDefinition(new Java8HookDefinition(EMPTY_TAG_EXPRESSION, DEFAULT_BEFORE_ORDER, body)); + .addBeforeStepHookDefinition( + new Java8HookDefinition(BEFORE_STEP, EMPTY_TAG_EXPRESSION, DEFAULT_BEFORE_ORDER, body)); } /** @@ -175,7 +187,8 @@ default void BeforeStep(final HookNoArgsBody body) { */ default void BeforeStep(String tagExpression, final HookNoArgsBody body) { LambdaGlueRegistry.INSTANCE.get() - .addBeforeStepHookDefinition(new Java8HookDefinition(tagExpression, DEFAULT_BEFORE_ORDER, body)); + .addBeforeStepHookDefinition( + new Java8HookDefinition(BEFORE_STEP, tagExpression, DEFAULT_BEFORE_ORDER, body)); } /** @@ -187,7 +200,7 @@ default void BeforeStep(String tagExpression, final HookNoArgsBody body) { */ default void BeforeStep(int order, final HookNoArgsBody body) { LambdaGlueRegistry.INSTANCE.get() - .addBeforeStepHookDefinition(new Java8HookDefinition(EMPTY_TAG_EXPRESSION, order, body)); + .addBeforeStepHookDefinition(new Java8HookDefinition(BEFORE_STEP, EMPTY_TAG_EXPRESSION, order, body)); } /** @@ -201,7 +214,7 @@ default void BeforeStep(int order, final HookNoArgsBody body) { */ default void BeforeStep(String tagExpression, int order, final HookNoArgsBody body) { LambdaGlueRegistry.INSTANCE.get() - .addBeforeStepHookDefinition(new Java8HookDefinition(tagExpression, order, body)); + .addBeforeStepHookDefinition(new Java8HookDefinition(BEFORE_STEP, tagExpression, order, body)); } /** @@ -211,7 +224,8 @@ default void BeforeStep(String tagExpression, int order, final HookNoArgsBody bo */ default void After(final HookBody body) { LambdaGlueRegistry.INSTANCE.get() - .addAfterHookDefinition(new Java8HookDefinition(EMPTY_TAG_EXPRESSION, DEFAULT_AFTER_ORDER, body)); + .addAfterHookDefinition( + new Java8HookDefinition(AFTER, EMPTY_TAG_EXPRESSION, DEFAULT_AFTER_ORDER, body)); } /** @@ -224,7 +238,7 @@ default void After(final HookBody body) { */ default void After(String tagExpression, final HookBody body) { LambdaGlueRegistry.INSTANCE.get() - .addAfterHookDefinition(new Java8HookDefinition(tagExpression, DEFAULT_AFTER_ORDER, body)); + .addAfterHookDefinition(new Java8HookDefinition(AFTER, tagExpression, DEFAULT_AFTER_ORDER, body)); } /** @@ -236,7 +250,7 @@ default void After(String tagExpression, final HookBody body) { */ default void After(int order, final HookBody body) { LambdaGlueRegistry.INSTANCE.get() - .addAfterHookDefinition(new Java8HookDefinition(EMPTY_TAG_EXPRESSION, order, body)); + .addAfterHookDefinition(new Java8HookDefinition(AFTER, EMPTY_TAG_EXPRESSION, order, body)); } /** @@ -250,7 +264,8 @@ default void After(int order, final HookBody body) { * argument */ default void After(String tagExpression, int order, final HookBody body) { - LambdaGlueRegistry.INSTANCE.get().addAfterHookDefinition(new Java8HookDefinition(tagExpression, order, body)); + LambdaGlueRegistry.INSTANCE.get() + .addAfterHookDefinition(new Java8HookDefinition(AFTER, tagExpression, order, body)); } /** @@ -260,7 +275,8 @@ default void After(String tagExpression, int order, final HookBody body) { */ default void After(final HookNoArgsBody body) { LambdaGlueRegistry.INSTANCE.get() - .addAfterHookDefinition(new Java8HookDefinition(EMPTY_TAG_EXPRESSION, DEFAULT_AFTER_ORDER, body)); + .addAfterHookDefinition( + new Java8HookDefinition(AFTER, EMPTY_TAG_EXPRESSION, DEFAULT_AFTER_ORDER, body)); } /** @@ -272,7 +288,7 @@ default void After(final HookNoArgsBody body) { */ default void After(String tagExpression, final HookNoArgsBody body) { LambdaGlueRegistry.INSTANCE.get() - .addAfterHookDefinition(new Java8HookDefinition(tagExpression, DEFAULT_AFTER_ORDER, body)); + .addAfterHookDefinition(new Java8HookDefinition(AFTER, tagExpression, DEFAULT_AFTER_ORDER, body)); } /** @@ -284,7 +300,7 @@ default void After(String tagExpression, final HookNoArgsBody body) { */ default void After(int order, final HookNoArgsBody body) { LambdaGlueRegistry.INSTANCE.get() - .addAfterHookDefinition(new Java8HookDefinition(EMPTY_TAG_EXPRESSION, order, body)); + .addAfterHookDefinition(new Java8HookDefinition(AFTER, EMPTY_TAG_EXPRESSION, order, body)); } /** @@ -297,7 +313,8 @@ default void After(int order, final HookNoArgsBody body) { * @param body lambda to execute */ default void After(String tagExpression, int order, final HookNoArgsBody body) { - LambdaGlueRegistry.INSTANCE.get().addAfterHookDefinition(new Java8HookDefinition(tagExpression, order, body)); + LambdaGlueRegistry.INSTANCE.get() + .addAfterHookDefinition(new Java8HookDefinition(AFTER, tagExpression, order, body)); } /** @@ -307,7 +324,8 @@ default void After(String tagExpression, int order, final HookNoArgsBody body) { */ default void AfterStep(final HookBody body) { LambdaGlueRegistry.INSTANCE.get() - .addAfterStepHookDefinition(new Java8HookDefinition(EMPTY_TAG_EXPRESSION, DEFAULT_AFTER_ORDER, body)); + .addAfterStepHookDefinition( + new Java8HookDefinition(AFTER_STEP, EMPTY_TAG_EXPRESSION, DEFAULT_AFTER_ORDER, body)); } /** @@ -320,7 +338,8 @@ default void AfterStep(final HookBody body) { */ default void AfterStep(String tagExpression, final HookBody body) { LambdaGlueRegistry.INSTANCE.get() - .addAfterStepHookDefinition(new Java8HookDefinition(tagExpression, DEFAULT_AFTER_ORDER, body)); + .addAfterStepHookDefinition( + new Java8HookDefinition(AFTER_STEP, tagExpression, DEFAULT_AFTER_ORDER, body)); } /** @@ -332,7 +351,7 @@ default void AfterStep(String tagExpression, final HookBody body) { */ default void AfterStep(int order, final HookBody body) { LambdaGlueRegistry.INSTANCE.get() - .addAfterStepHookDefinition(new Java8HookDefinition(EMPTY_TAG_EXPRESSION, order, body)); + .addAfterStepHookDefinition(new Java8HookDefinition(AFTER_STEP, EMPTY_TAG_EXPRESSION, order, body)); } /** @@ -347,7 +366,7 @@ default void AfterStep(int order, final HookBody body) { */ default void AfterStep(String tagExpression, int order, final HookBody body) { LambdaGlueRegistry.INSTANCE.get() - .addAfterStepHookDefinition(new Java8HookDefinition(tagExpression, order, body)); + .addAfterStepHookDefinition(new Java8HookDefinition(AFTER_STEP, tagExpression, order, body)); } /** @@ -357,7 +376,8 @@ default void AfterStep(String tagExpression, int order, final HookBody body) { */ default void AfterStep(final HookNoArgsBody body) { LambdaGlueRegistry.INSTANCE.get() - .addAfterStepHookDefinition(new Java8HookDefinition(EMPTY_TAG_EXPRESSION, DEFAULT_AFTER_ORDER, body)); + .addAfterStepHookDefinition( + new Java8HookDefinition(AFTER_STEP, EMPTY_TAG_EXPRESSION, DEFAULT_AFTER_ORDER, body)); } /** @@ -369,7 +389,8 @@ default void AfterStep(final HookNoArgsBody body) { */ default void AfterStep(String tagExpression, final HookNoArgsBody body) { LambdaGlueRegistry.INSTANCE.get() - .addAfterStepHookDefinition(new Java8HookDefinition(tagExpression, DEFAULT_AFTER_ORDER, body)); + .addAfterStepHookDefinition( + new Java8HookDefinition(AFTER_STEP, tagExpression, DEFAULT_AFTER_ORDER, body)); } /** @@ -381,7 +402,7 @@ default void AfterStep(String tagExpression, final HookNoArgsBody body) { */ default void AfterStep(int order, final HookNoArgsBody body) { LambdaGlueRegistry.INSTANCE.get() - .addAfterStepHookDefinition(new Java8HookDefinition(EMPTY_TAG_EXPRESSION, order, body)); + .addAfterStepHookDefinition(new Java8HookDefinition(AFTER_STEP, EMPTY_TAG_EXPRESSION, order, body)); } /** @@ -395,7 +416,7 @@ default void AfterStep(int order, final HookNoArgsBody body) { */ default void AfterStep(String tagExpression, int order, final HookNoArgsBody body) { LambdaGlueRegistry.INSTANCE.get() - .addAfterStepHookDefinition(new Java8HookDefinition(tagExpression, order, body)); + .addAfterStepHookDefinition(new Java8HookDefinition(AFTER_STEP, tagExpression, order, body)); } /**