diff options
author | gjoranv <gv@oath.com> | 2018-11-22 11:23:10 +0100 |
---|---|---|
committer | gjoranv <gv@oath.com> | 2019-01-21 15:09:28 +0100 |
commit | 1ac7c6fd57d85b7dfe028faf430c7afa75b3c9bc (patch) | |
tree | e38d496137c42c8cce44e359a6b8bafaed4a0f87 /container-core/src/test | |
parent | 1b529c3f78403bfeabaa74016705dd48932ab8f8 (diff) |
Remove unused ComponentClass
Diffstat (limited to 'container-core/src/test')
-rw-r--r-- | container-core/src/test/java/com/yahoo/component/provider/test/ComponentClassTestCase.java | 191 |
1 files changed, 0 insertions, 191 deletions
diff --git a/container-core/src/test/java/com/yahoo/component/provider/test/ComponentClassTestCase.java b/container-core/src/test/java/com/yahoo/component/provider/test/ComponentClassTestCase.java deleted file mode 100644 index 0db12ba2fea..00000000000 --- a/container-core/src/test/java/com/yahoo/component/provider/test/ComponentClassTestCase.java +++ /dev/null @@ -1,191 +0,0 @@ -// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -package com.yahoo.component.provider.test; - -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertTrue; -import static org.junit.Assert.fail; - -import java.lang.reflect.Constructor; -import java.util.HashMap; -import java.util.Map; - -import com.yahoo.component.AbstractComponent; -import org.junit.Test; - -import com.yahoo.component.ComponentId; -import com.yahoo.component.Version; -import com.yahoo.component.provider.ComponentClass; -import com.yahoo.config.ConfigInstance; -import com.yahoo.config.core.IntConfig; -import com.yahoo.config.core.StringConfig; -import com.yahoo.vespa.config.ConfigKey; - -/** - * @author <a href="gv@yahoo-inc.com">G. Voldengen</a> - */ -@SuppressWarnings("unused") -public class ComponentClassTestCase { - - @Test - public void testComponentConstructor() throws NoSuchMethodException { - ComponentClass<A> a = new ComponentClass<>(A.class); - assertEquals(A.preferred(), a.getPreferredConstructor().getConstructor()); - - ComponentClass<B> b = new ComponentClass<>(B.class); - assertEquals(B.preferred(), b.getPreferredConstructor().getConstructor()); - - ComponentClass<C> c = new ComponentClass<>(C.class); - assertEquals(C.preferred(), c.getPreferredConstructor().getConstructor()); - - ComponentClass<E> e = new ComponentClass<>(E.class); - assertEquals(E.preferred(), e.getPreferredConstructor().getConstructor()); - - ComponentClass<G> g = new ComponentClass<>(G.class); - assertEquals(G.preferred(), g.getPreferredConstructor().getConstructor()); - - try { - ComponentClass<H> h = new ComponentClass<>(H.class); - fail("Expected exception due to no legal public constructors."); - } catch (IllegalArgumentException expected) { - assertTrue(expected.getMessage().contains("must have at least one public constructor with an optional " + - "component ID followed by an optional FileAcquirer and zero or more config arguments")); - } - - try { - ComponentClass<I> i = new ComponentClass<>(I.class); - fail("Expected exception due to no public constructors."); - } catch (RuntimeException expected) { - assertTrue(expected.getMessage().contains("Class has no public constructors")); - } - - try { - ComponentClass<J> j = new ComponentClass<>(J.class); - fail("Expected exception due to no public constructors."); - } catch (RuntimeException expected) { - assertTrue(expected.getMessage().contains("Class has no public constructors")); - } - - ComponentClass<K> k = new ComponentClass<>(K.class); - assertEquals(K.preferred(), k.getPreferredConstructor().getConstructor()); - - ComponentClass<L> l = new ComponentClass<>(L.class); - assertEquals(L.preferred(), l.getPreferredConstructor().getConstructor()); - } - - @SuppressWarnings("unchecked") - @Test - public void testCreateComponent() throws NoSuchMethodException { - Map<ConfigKey, ConfigInstance> availableConfigs = new HashMap<>(); - String configId = "testConfigId"; - availableConfigs.put(new ConfigKey(StringConfig.class, configId), new StringConfig(new StringConfig.Builder())); - availableConfigs.put(new ConfigKey(IntConfig.class, configId), new IntConfig(new IntConfig.Builder())); - - ComponentClass<TestComponent> testClass = new ComponentClass<>(TestComponent.class); - TestComponent component = testClass. - createComponent(new ComponentId("test", new Version(1)), availableConfigs, configId); - assertEquals("test", component.getId().getName()); - assertEquals(1, component.getId().getVersion().getMajor()); - assertEquals(1, component.intVal); - assertEquals("_default_", component.stringVal); - } - - /** - * Verifies that ComponentClass sets the ComponentId when a component that takes a ComponentId as - * constructor argument fails to call super(id). - */ - @Test - public void testNullIdComponent() throws NoSuchMethodException { - ComponentClass<NullIdComponent> testClass = new ComponentClass<>(NullIdComponent.class); - NullIdComponent component = testClass.createComponent(new ComponentId("null-test", new Version(1)), new HashMap<ConfigKey, ConfigInstance>(), null); - assertEquals("null-test", component.getId().getName()); - assertEquals(1, component.getId().getVersion().getMajor()); - } - - public static class TestComponent extends AbstractComponent { - private int intVal = 0; - private String stringVal = ""; - public TestComponent(ComponentId id, IntConfig intConfig, StringConfig stringConfig) { - super(id); - intVal = intConfig.intVal(); - stringVal = stringConfig.stringVal(); - } - } - - /** - * This component takes a ComponentId as constructor arg, but "forgets" to call super(id). - */ - public static class NullIdComponent extends AbstractComponent { - private int intVal = 0; - private String stringVal = ""; - public NullIdComponent(ComponentId id) { - } - } - - private static class A extends AbstractComponent { - public A(IntConfig intConfig) { } - public A(IntConfig intConfig, StringConfig stringConfig) { } - static Constructor<A> preferred() throws NoSuchMethodException{ - return A.class.getConstructor(IntConfig.class, StringConfig.class); - } - } - - private static class B extends AbstractComponent { - public B(ComponentId id, IntConfig intConfig) { } - public B(IntConfig intConfig) { } - static Constructor<B> preferred() throws NoSuchMethodException{ - return B.class.getConstructor(ComponentId.class, IntConfig.class); - } - } - - private static class C extends AbstractComponent { - public C(IntConfig intConfig, ComponentId id) { } - public C(String id, IntConfig intConfig) { } - static Constructor<C> preferred() throws NoSuchMethodException{ - return C.class.getConstructor(IntConfig.class, ComponentId.class); - } - } - - private static class E extends AbstractComponent { - public E(IntConfig intConfig) { } - public E(String id, String illegal, IntConfig intConfig, StringConfig stringConfig) { } - static Constructor<E> preferred() throws NoSuchMethodException{ - return E.class.getConstructor(IntConfig.class); - } - } - - private static class G extends AbstractComponent { - public G(ComponentId id) { } - public G(String id) { } - static Constructor<G> preferred() throws NoSuchMethodException{ - return G.class.getConstructor(ComponentId.class); - } - } - - private static class H extends AbstractComponent { - public H(ComponentId id, String illegal) { } - public H(String id, String illegal) { } - } - - private static class I extends AbstractComponent { - protected I(ComponentId id) { } - } - - private static class J extends AbstractComponent { - } - - private static class K extends AbstractComponent { - public K() { } - public K(ComponentId id, String illegal) { } - static Constructor<K> preferred() throws NoSuchMethodException{ - return K.class.getConstructor(); - } - } - - private static class L extends AbstractComponent { - public L(long l, long ll, long lll) { } - public L(ComponentId id, IntConfig intConfig) { } - static Constructor<L> preferred() throws NoSuchMethodException{ - return L.class.getConstructor(ComponentId.class, IntConfig.class); - } - } -} |