summaryrefslogtreecommitdiffstats
path: root/container-di
diff options
context:
space:
mode:
authorgjoranv <gv@verizonmedia.com>2020-07-08 23:53:47 +0200
committergjoranv <gv@verizonmedia.com>2020-07-10 00:38:36 +0200
commit1d92ada09722c4277ac51f35c1a1d5e40c2e6734 (patch)
treef677bee1c366ff7952f01833bbb360fa970403b8 /container-di
parent6b1fe50d0c148fb5dde8fe3c9a0cdc0228c90a07 (diff)
Move test for Guice injector out of the 'demo' package.
Diffstat (limited to 'container-di')
-rw-r--r--container-di/src/test/java/com/yahoo/container/di/componentgraph/core/FallbackToGuiceInjectorTest.java (renamed from container-di/src/test/java/demo/FallbackToGuiceInjectorTest.java)59
-rw-r--r--container-di/src/test/java/demo/Base.java59
2 files changed, 53 insertions, 65 deletions
diff --git a/container-di/src/test/java/demo/FallbackToGuiceInjectorTest.java b/container-di/src/test/java/com/yahoo/container/di/componentgraph/core/FallbackToGuiceInjectorTest.java
index 4b7d9d54725..7c517d67960 100644
--- a/container-di/src/test/java/demo/FallbackToGuiceInjectorTest.java
+++ b/container-di/src/test/java/com/yahoo/container/di/componentgraph/core/FallbackToGuiceInjectorTest.java
@@ -1,5 +1,5 @@
// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-package demo;
+package com.yahoo.container.di.componentgraph.core;
import com.google.inject.AbstractModule;
import com.google.inject.Guice;
@@ -8,10 +8,19 @@ import com.google.inject.Injector;
import com.google.inject.name.Named;
import com.google.inject.name.Names;
import com.yahoo.component.AbstractComponent;
+import com.yahoo.component.ComponentId;
+import com.yahoo.config.ConfigInstance;
+import com.yahoo.container.di.componentgraph.core.ComponentGraph;
+import com.yahoo.container.di.componentgraph.core.ComponentNode;
+import com.yahoo.container.di.componentgraph.core.Node;
+import com.yahoo.vespa.config.ConfigKey;
+import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.ExpectedException;
+import java.util.HashMap;
+import java.util.Map;
import java.util.concurrent.Executor;
import java.util.concurrent.Executors;
@@ -24,7 +33,22 @@ import static org.junit.Assert.assertNotNull;
* @author gjoranv
*/
@SuppressWarnings("unused")
-public class FallbackToGuiceInjectorTest extends Base {
+public class FallbackToGuiceInjectorTest {
+
+ private ComponentGraph componentGraph;
+ private Injector injector;
+ private Map<ConfigKey<? extends ConfigInstance>, ConfigInstance> configs =
+ new HashMap<>();
+
+ @Rule
+ public final ExpectedException exception = ExpectedException.none();
+
+ @Before
+ public void createGraph() {
+ injector = Guice.createInjector();
+ componentGraph = new ComponentGraph(0);
+ }
+
public static class MyComponent extends AbstractComponent {
private final String url;
private final Executor executor;
@@ -52,9 +76,6 @@ public class FallbackToGuiceInjectorTest extends Base {
public ComponentThatCannotBeConstructed(Integer cannot_be_injected_because_Integer_has_no_default_ctor) { }
}
- @Rule
- public final ExpectedException exception = ExpectedException.none();
-
@Test
public void guice_injector_is_used_when_no_global_component_exists() {
setInjector(
@@ -90,10 +111,36 @@ public class FallbackToGuiceInjectorTest extends Base {
register(ComponentThatCannotBeConstructed.class);
exception.expect(RuntimeException.class);
- exception.expectMessage("When resolving dependencies of 'demo.FallbackToGuiceInjectorTest$ComponentThatCannotBeConstructed'");
+ exception.expectMessage("When resolving dependencies of 'com.yahoo.container.di.componentgraph.core.FallbackToGuiceInjectorTest$ComponentThatCannotBeConstructed'");
complete();
}
+ public void register(Class<?> componentClass) {
+ componentGraph.add(mockComponentNode(componentClass));
+ }
+
+ public ComponentId toId(Class<?> componentClass) {
+ return ComponentId.fromString(componentClass.getName());
+ }
+
+ @SuppressWarnings("unchecked")
+ private Node mockComponentNode(Class<?> componentClass) {
+ return new ComponentNode(toId(componentClass), toId(componentClass).toString(), (Class<Object>)componentClass, null);
+ }
+
+ public <T> T getInstance(Class<T> componentClass) {
+ return componentGraph.getInstance(componentClass);
+ }
+
+ public void complete() {
+ componentGraph.complete(injector);
+ componentGraph.setAvailableConfigs(configs);
+ }
+
+ public void setInjector(Injector injector) {
+ this.injector = injector;
+ }
+
private Injector emptyGuiceInjector() {
return Guice.createInjector(new AbstractModule() {
@Override
diff --git a/container-di/src/test/java/demo/Base.java b/container-di/src/test/java/demo/Base.java
deleted file mode 100644
index e98d85a9193..00000000000
--- a/container-di/src/test/java/demo/Base.java
+++ /dev/null
@@ -1,59 +0,0 @@
-// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-package demo;
-
-import com.google.inject.Guice;
-import com.google.inject.Injector;
-import com.yahoo.component.ComponentId;
-import com.yahoo.config.ConfigInstance;
-import com.yahoo.container.di.componentgraph.core.ComponentGraph;
-import com.yahoo.container.di.componentgraph.core.ComponentNode;
-import com.yahoo.container.di.componentgraph.core.Node;
-import com.yahoo.vespa.config.ConfigKey;
-import org.junit.Before;
-
-import java.util.HashMap;
-import java.util.Map;
-
-/**
- * @author Tony Vaagenes
- * @author gjoranv
- */
-public class Base {
- private ComponentGraph componentGraph;
- private Injector injector;
- private Map<ConfigKey<? extends ConfigInstance>, ConfigInstance> configs =
- new HashMap<>();
-
- @Before
- public void createGraph() {
- injector = Guice.createInjector();
- componentGraph = new ComponentGraph(0);
- }
-
- public void register(Class<?> componentClass) {
- componentGraph.add(mockComponentNode(componentClass));
- }
-
- public ComponentId toId(Class<?> componentClass) {
- return ComponentId.fromString(componentClass.getName());
- }
-
- @SuppressWarnings("unchecked")
- private Node mockComponentNode(Class<?> componentClass) {
- return new ComponentNode(toId(componentClass), toId(componentClass).toString(), (Class<Object>)componentClass, null);
- }
-
- public <T> T getInstance(Class<T> componentClass) {
- return componentGraph.getInstance(componentClass);
- }
-
- public void complete() {
- componentGraph.complete(injector);
- componentGraph.setAvailableConfigs(configs);
- }
-
- public void setInjector(Injector injector) {
- this.injector = injector;
- }
-
-}