Consistent detection of Order annotation in superclasses and interfaces
Issue: SPR-10514
(cherry picked from commit 814d24e)
This commit is contained in:
@@ -45,6 +45,16 @@ public class AnnotationAwareOrderComparatorTests {
|
||||
assertTrue(list.get(1) instanceof B);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void sortInstancesWithSubclass() {
|
||||
List<Object> list = new ArrayList<>();
|
||||
list.add(new B());
|
||||
list.add(new C());
|
||||
AnnotationAwareOrderComparator.sort(list);
|
||||
assertTrue(list.get(0) instanceof C);
|
||||
assertTrue(list.get(1) instanceof B);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void sortClasses() {
|
||||
List<Object> list = new ArrayList<>();
|
||||
@@ -55,6 +65,16 @@ public class AnnotationAwareOrderComparatorTests {
|
||||
assertEquals(B.class, list.get(1));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void sortClassesWithSubclass() {
|
||||
List<Object> list = new ArrayList<>();
|
||||
list.add(B.class);
|
||||
list.add(C.class);
|
||||
AnnotationAwareOrderComparator.sort(list);
|
||||
assertEquals(C.class, list.get(0));
|
||||
assertEquals(B.class, list.get(1));
|
||||
}
|
||||
|
||||
|
||||
@Order(1)
|
||||
private static class A {
|
||||
@@ -64,4 +84,7 @@ public class AnnotationAwareOrderComparatorTests {
|
||||
private static class B {
|
||||
}
|
||||
|
||||
private static class C extends A {
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user