From df37e33105f34c0a01da325a6bbd46397308fef3 Mon Sep 17 00:00:00 2001 From: Arjen Poutsma Date: Tue, 14 Jun 2022 13:03:05 +0200 Subject: [PATCH] Revert "Ensure fix for gh-28012 is actually tested" This reverts commit 3188c0f7db54cffdb95e7127e2adde959dd078f9. --- .../springframework/core/annotation/Filter.kt | 4 ++ .../KotlinMergedAnnotationsTests.kt | 68 +------------------ .../springframework/core/annotation/Person.kt | 4 ++ .../core/annotation/SynthesizableFilter.kt | 35 ---------- .../core/annotation/SynthesizableFilters.kt | 29 -------- .../core/annotation/SynthesizablePerson.kt | 35 ---------- 6 files changed, 9 insertions(+), 166 deletions(-) delete mode 100644 spring-core/src/test/kotlin/org/springframework/core/annotation/SynthesizableFilter.kt delete mode 100644 spring-core/src/test/kotlin/org/springframework/core/annotation/SynthesizableFilters.kt delete mode 100644 spring-core/src/test/kotlin/org/springframework/core/annotation/SynthesizablePerson.kt diff --git a/spring-core/src/test/kotlin/org/springframework/core/annotation/Filter.kt b/spring-core/src/test/kotlin/org/springframework/core/annotation/Filter.kt index 9a05b5ba1a..2755ba4d9b 100644 --- a/spring-core/src/test/kotlin/org/springframework/core/annotation/Filter.kt +++ b/spring-core/src/test/kotlin/org/springframework/core/annotation/Filter.kt @@ -24,8 +24,12 @@ package org.springframework.core.annotation @Retention(AnnotationRetention.RUNTIME) public annotation class Filter( + @get:AliasFor("name") val value: String = "", + @get:AliasFor("value") + val name: String = "", + val and: Filters = Filters() ) diff --git a/spring-core/src/test/kotlin/org/springframework/core/annotation/KotlinMergedAnnotationsTests.kt b/spring-core/src/test/kotlin/org/springframework/core/annotation/KotlinMergedAnnotationsTests.kt index fa32cfe365..dedd3ced41 100644 --- a/spring-core/src/test/kotlin/org/springframework/core/annotation/KotlinMergedAnnotationsTests.kt +++ b/spring-core/src/test/kotlin/org/springframework/core/annotation/KotlinMergedAnnotationsTests.kt @@ -41,34 +41,6 @@ class KotlinMergedAnnotationsTests { val mergedAnnotation = MergedAnnotation.from(method.getAnnotation(Person::class.java)) assertThat(mergedAnnotation).isNotNull(); - // NON-Synthesized Annotations - val jane = mergedAnnotation.synthesize() - assertThat(jane).isNotInstanceOf(SynthesizedAnnotation::class.java) - assertThat(jane.name).isEqualTo("jane") - val synthesizedFriends = jane.friends - assertThat(synthesizedFriends).hasSize(2) - - val john = synthesizedFriends[0] - assertThat(john).isNotInstanceOf(SynthesizedAnnotation::class.java) - assertThat(john.name).isEqualTo("john") - - val sally = synthesizedFriends[1] - assertThat(sally).isNotInstanceOf(SynthesizedAnnotation::class.java) - assertThat(sally.name).isEqualTo("sally") - } - - @Test // gh-28012 - fun recursiveAnnotationWithAttributeAliases() { - val method = javaClass.getMethod("synthesizablePersonMethod") - - // MergedAnnotations - val mergedAnnotations = MergedAnnotations.from(method) - assertThat(mergedAnnotations.isPresent(SynthesizablePerson::class.java)).isTrue(); - - // MergedAnnotation - val mergedAnnotation = MergedAnnotation.from(method.getAnnotation(SynthesizablePerson::class.java)) - assertThat(mergedAnnotation).isNotNull(); - // Synthesized Annotations val jane = mergedAnnotation.synthesize() assertThat(jane).isInstanceOf(SynthesizedAnnotation::class.java) @@ -100,36 +72,6 @@ class KotlinMergedAnnotationsTests { val mergedAnnotation = MergedAnnotation.from(method.getAnnotation(Filter::class.java)) assertThat(mergedAnnotation).isNotNull(); - // NON-Synthesized Annotations - val fooFilter = mergedAnnotation.synthesize() - assertThat(fooFilter).isNotInstanceOf(SynthesizedAnnotation::class.java) - assertThat(fooFilter.value).isEqualTo("foo") - val filters = fooFilter.and - assertThat(filters.value).hasSize(2) - - val barFilter = filters.value[0] - assertThat(barFilter).isNotInstanceOf(SynthesizedAnnotation::class.java) - assertThat(barFilter.value).isEqualTo("bar") - assertThat(barFilter.and.value).isEmpty() - - val bazFilter = filters.value[1] - assertThat(bazFilter).isNotInstanceOf(SynthesizedAnnotation::class.java) - assertThat(bazFilter.value).isEqualTo("baz") - assertThat(bazFilter.and.value).isEmpty() - } - - @Test // gh-28012 - fun recursiveNestedAnnotationWithAttributeAliases() { - val method = javaClass.getMethod("synthesizableFilterMethod") - - // MergedAnnotations - val mergedAnnotations = MergedAnnotations.from(method) - assertThat(mergedAnnotations.isPresent(SynthesizableFilter::class.java)).isTrue(); - - // MergedAnnotation - val mergedAnnotation = MergedAnnotation.from(method.getAnnotation(SynthesizableFilter::class.java)) - assertThat(mergedAnnotation).isNotNull(); - // Synthesized Annotations val fooFilter = mergedAnnotation.synthesize() assertThat(fooFilter).isInstanceOf(SynthesizedAnnotation::class.java) @@ -152,20 +94,12 @@ class KotlinMergedAnnotationsTests { } - @Person(name = "jane", friends = [Person(name = "john"), Person(name = "sally")]) + @Person("jane", friends = [Person("john"), Person("sally")]) fun personMethod() { } - @SynthesizablePerson(name = "jane", friends = [SynthesizablePerson(name = "john"), SynthesizablePerson(name = "sally")]) - fun synthesizablePersonMethod() { - } - @Filter("foo", and = Filters(Filter("bar"), Filter("baz"))) fun filterMethod() { } - @SynthesizableFilter("foo", and = SynthesizableFilters(SynthesizableFilter("bar"), SynthesizableFilter("baz"))) - fun synthesizableFilterMethod() { - } - } diff --git a/spring-core/src/test/kotlin/org/springframework/core/annotation/Person.kt b/spring-core/src/test/kotlin/org/springframework/core/annotation/Person.kt index 4ae45e5feb..28d67c4a23 100644 --- a/spring-core/src/test/kotlin/org/springframework/core/annotation/Person.kt +++ b/spring-core/src/test/kotlin/org/springframework/core/annotation/Person.kt @@ -24,6 +24,10 @@ package org.springframework.core.annotation @Retention(AnnotationRetention.RUNTIME) public annotation class Person( + @get:AliasFor("name") + val value: String = "", + + @get:AliasFor("value") val name: String = "", vararg val friends: Person = [] diff --git a/spring-core/src/test/kotlin/org/springframework/core/annotation/SynthesizableFilter.kt b/spring-core/src/test/kotlin/org/springframework/core/annotation/SynthesizableFilter.kt deleted file mode 100644 index b10a970fdc..0000000000 --- a/spring-core/src/test/kotlin/org/springframework/core/annotation/SynthesizableFilter.kt +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright 2002-2022 the original author or authors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * https://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.springframework.core.annotation - -/** - * @author Sam Brannen - * @since 5.3.16 - */ -@Target(AnnotationTarget.FUNCTION) -@Retention(AnnotationRetention.RUNTIME) -public annotation class SynthesizableFilter( - - @get:AliasFor("name") - val value: String = "", - - @get:AliasFor("value") - val name: String = "", - - val and: SynthesizableFilters = SynthesizableFilters() - -) diff --git a/spring-core/src/test/kotlin/org/springframework/core/annotation/SynthesizableFilters.kt b/spring-core/src/test/kotlin/org/springframework/core/annotation/SynthesizableFilters.kt deleted file mode 100644 index b961de1abe..0000000000 --- a/spring-core/src/test/kotlin/org/springframework/core/annotation/SynthesizableFilters.kt +++ /dev/null @@ -1,29 +0,0 @@ -/* - * Copyright 2002-2022 the original author or authors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * https://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.springframework.core.annotation - -/** - * @author Sam Brannen - * @since 5.3.16 - */ -@Target(AnnotationTarget.FUNCTION) -@Retention(AnnotationRetention.RUNTIME) -public annotation class SynthesizableFilters( - - vararg val value: SynthesizableFilter - -) diff --git a/spring-core/src/test/kotlin/org/springframework/core/annotation/SynthesizablePerson.kt b/spring-core/src/test/kotlin/org/springframework/core/annotation/SynthesizablePerson.kt deleted file mode 100644 index 01d6f870c7..0000000000 --- a/spring-core/src/test/kotlin/org/springframework/core/annotation/SynthesizablePerson.kt +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright 2002-2022 the original author or authors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * https://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package org.springframework.core.annotation - -/** - * @author Sam Brannen - * @since 5.3.16 - */ -@Target(AnnotationTarget.FUNCTION) -@Retention(AnnotationRetention.RUNTIME) -public annotation class SynthesizablePerson( - - @get:AliasFor("name") - val value: String = "", - - @get:AliasFor("value") - val name: String = "", - - vararg val friends: SynthesizablePerson = [] - -)