From d8b7dcbca106bf81c6e18151808bcb0ae5de3c9a Mon Sep 17 00:00:00 2001 From: Oliver Gierke Date: Fri, 28 Oct 2016 09:43:23 +0200 Subject: [PATCH] #471 - Polishing. Fixed imports and reinstantiated old unit test to make sure we actually test both scenarios. Original pull request: #497. --- .../hateoas/core/AnnotationMappingDiscoverer.java | 2 +- .../core/AnnotationMappingDiscovererUnitTest.java | 15 ++++++++++++++- 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/springframework/hateoas/core/AnnotationMappingDiscoverer.java b/src/main/java/org/springframework/hateoas/core/AnnotationMappingDiscoverer.java index 4ccf8b6b..2cc062d1 100644 --- a/src/main/java/org/springframework/hateoas/core/AnnotationMappingDiscoverer.java +++ b/src/main/java/org/springframework/hateoas/core/AnnotationMappingDiscoverer.java @@ -15,7 +15,7 @@ */ package org.springframework.hateoas.core; -import static org.springframework.core.annotation.AnnotatedElementUtils.findMergedAnnotation; +import static org.springframework.core.annotation.AnnotatedElementUtils.*; import static org.springframework.core.annotation.AnnotationUtils.*; import java.lang.annotation.Annotation; diff --git a/src/test/java/org/springframework/hateoas/core/AnnotationMappingDiscovererUnitTest.java b/src/test/java/org/springframework/hateoas/core/AnnotationMappingDiscovererUnitTest.java index 913db350..ef3b4774 100644 --- a/src/test/java/org/springframework/hateoas/core/AnnotationMappingDiscovererUnitTest.java +++ b/src/test/java/org/springframework/hateoas/core/AnnotationMappingDiscovererUnitTest.java @@ -141,12 +141,25 @@ public class AnnotationMappingDiscovererUnitTest { assertThat(discoverer.getMapping(method), is("/type/method")); } + /** + * @see #471 + */ + @Test + public void discoversMethodLevelMappingUsingComposedAnnotation() throws Exception { + + Method method = MyController.class.getMethod("methodWithComposedAnnotation"); + assertThat(discoverer.getMapping(method), is("/type/otherMethod")); + } + @RequestMapping("/type") interface MyController { - @GetMapping("/method") + @RequestMapping("/method") void method(); + @GetMapping("/otherMethod") + void methodWithComposedAnnotation(); + @RequestMapping void noMethodMapping(); }