Skip to content

Commit

Permalink
Add integration test for gh-24110
Browse files Browse the repository at this point in the history
  • Loading branch information
sbrannen committed Dec 3, 2019
1 parent 6f15f32 commit fb13f6f
Showing 1 changed file with 39 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -516,6 +516,20 @@ void getMergedAnnotationWithImplicitAliasesInMetaAnnotationOnComposedAnnotation(
assertThat(isAnnotated(element, name)).isTrue();
}

@Test
void getMergedAnnotationWithImplicitAliasesWithDefaultsInMetaAnnotationOnComposedAnnotation() {
Class<?> element = ImplicitAliasesWithDefaultsClass.class;
String name = AliasesWithDefaults.class.getName();
AliasesWithDefaults annotation = getMergedAnnotation(element, AliasesWithDefaults.class);

assertThat(annotation).as("Should find @AliasesWithDefaults on " + element.getSimpleName()).isNotNull();
assertThat(annotation.a1()).as("a1").isEqualTo("ImplicitAliasesWithDefaults");
assertThat(annotation.a2()).as("a2").isEqualTo("ImplicitAliasesWithDefaults");

// Verify contracts between utility methods:
assertThat(isAnnotated(element, name)).isTrue();
}

@Test
void getMergedAnnotationAttributesWithInvalidConventionBasedComposedAnnotation() {
Class<?> element = InvalidConventionBasedComposedContextConfigClass.class;
Expand Down Expand Up @@ -1064,7 +1078,6 @@ static class MetaCycleAnnotatedClass {
String[] xmlConfigFiles() default {};
}


@ContextConfig
@Retention(RetentionPolicy.RUNTIME)
@interface AliasedComposedContextConfig {
Expand Down Expand Up @@ -1105,6 +1118,27 @@ static class MetaCycleAnnotatedClass {
@interface ComposedImplicitAliasesContextConfig {
}

@Retention(RetentionPolicy.RUNTIME)
@interface AliasesWithDefaults {

@AliasFor("a2")
String a1() default "AliasesWithDefaults";

@AliasFor("a1")
String a2() default "AliasesWithDefaults";
}

@Retention(RetentionPolicy.RUNTIME)
@AliasesWithDefaults
@interface ImplicitAliasesWithDefaults {

@AliasFor(annotation = AliasesWithDefaults.class, attribute = "a1")
String b1() default "ImplicitAliasesWithDefaults";

@AliasFor(annotation = AliasesWithDefaults.class, attribute = "a2")
String b2() default "ImplicitAliasesWithDefaults";
}

@ImplicitAliasesContextConfig
@Retention(RetentionPolicy.RUNTIME)
@interface TransitiveImplicitAliasesContextConfig {
Expand Down Expand Up @@ -1410,6 +1444,10 @@ static class ImplicitAliasesContextConfigClass2 {
static class ImplicitAliasesContextConfigClass3 {
}

@ImplicitAliasesWithDefaults
static class ImplicitAliasesWithDefaultsClass {
}

@TransitiveImplicitAliasesContextConfig(groovy = "test.groovy")
static class TransitiveImplicitAliasesContextConfigClass {
}
Expand Down

0 comments on commit fb13f6f

Please sign in to comment.