summaryrefslogtreecommitdiffstats
path: root/container-disc
diff options
context:
space:
mode:
authorjonmv <venstad@gmail.com>2023-10-11 21:48:41 +0200
committerjonmv <venstad@gmail.com>2023-10-11 21:48:41 +0200
commitb02c4193d524aa80bc60a3dc2504030d1446f640 (patch)
tree410bfc67f44d7b8585261d95bcc7b299a941776b /container-disc
parentcbfb634efd2411c90424b12cd73eebde6967b15c (diff)
Add test
Diffstat (limited to 'container-disc')
-rw-r--r--container-disc/src/test/java/com/yahoo/container/jdisc/ConfiguredApplicationTest.java27
1 files changed, 27 insertions, 0 deletions
diff --git a/container-disc/src/test/java/com/yahoo/container/jdisc/ConfiguredApplicationTest.java b/container-disc/src/test/java/com/yahoo/container/jdisc/ConfiguredApplicationTest.java
new file mode 100644
index 00000000000..555d43f7697
--- /dev/null
+++ b/container-disc/src/test/java/com/yahoo/container/jdisc/ConfiguredApplicationTest.java
@@ -0,0 +1,27 @@
+package com.yahoo.container.jdisc;
+
+import org.junit.jupiter.api.Test;
+
+import java.util.List;
+
+import static com.yahoo.container.jdisc.ConfiguredApplication.ordered;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+
+public class ConfiguredApplicationTest {
+
+ @Test
+ void testSorting() {
+ class A { @Override public String toString() { return getClass().getSimpleName(); } }
+ class B extends A { }
+ class C extends B { }
+ class D extends B { }
+
+ A a = new A(), b = new B(), c = new C(), d = new D(), e = new D() { @Override public String toString() { return "E"; } };
+ List<A> s = List.of(a, b, c, d, e);
+ assertEquals(List.of(a, b, c, d, e), ordered(s, A.class, B.class, C.class, D.class));
+ assertEquals(List.of(d, e, c, b, a), ordered(s, D.class, C.class, B.class, A.class));
+ assertEquals(List.of(e, c, a, b, d), ordered(s, e.getClass(), C.class, A.class));
+ assertEquals(List.of(d, e, b, c, a), ordered(s, D.class, B.class));
+ }
+
+}