MCPcopy Index your code
hub / github.com/google/guice / OverrideModuleTest

Class OverrideModuleTest

core/test/com/google/inject/util/OverrideModuleTest.java:57–854  ·  view source on GitHub ↗

@author sberlin@gmail.com (Sam Berlin)

Source from the content-addressed store, hash-verified

55
56/** @author sberlin@gmail.com (Sam Berlin) */
57public class OverrideModuleTest extends TestCase {
58
59 private static final Key<String> key2 = Key.get(String.class, named("2"));
60 private static final Key<String> key3 = Key.get(String.class, named("3"));
61
62 private static final Module EMPTY_MODULE =
63 new Module() {
64 @Override
65 public void configure(Binder binder) {}
66 };
67
68 public void testOverride() {
69 Injector injector = createInjector(Modules.override(newModule("A")).with(newModule("B")));
70 assertEquals("B", injector.getInstance(String.class));
71 }
72
73 public void testOverrideMultiple() {
74 Module module =
75 Modules.override(newModule("A"), newModule(1), newModule(0.5f))
76 .with(newModule("B"), newModule(2), newModule(1.5d));
77 Injector injector = createInjector(module);
78 assertEquals("B", injector.getInstance(String.class));
79 assertEquals(2, injector.getInstance(Integer.class).intValue());
80 assertEquals(0.5f, injector.getInstance(Float.class), 0.0f);
81 assertEquals(1.5d, injector.getInstance(Double.class), 0.0);
82 }
83
84 public void testOverrideUnmatchedTolerated() {
85 Injector injector = createInjector(Modules.override(EMPTY_MODULE).with(newModule("B")));
86 assertEquals("B", injector.getInstance(String.class));
87 }
88
89 public void testOverrideConstant() {
90 Module original =
91 new AbstractModule() {
92 @Override
93 protected void configure() {
94 bindConstant().annotatedWith(named("Test")).to("A");
95 }
96 };
97
98 Module replacements =
99 new AbstractModule() {
100 @Override
101 protected void configure() {
102 bindConstant().annotatedWith(named("Test")).to("B");
103 }
104 };
105
106 Injector injector = createInjector(Modules.override(original).with(replacements));
107 assertEquals("B", injector.getInstance(Key.get(String.class, named("Test"))));
108 }
109
110 public void testGetProviderInModule() {
111 Module original =
112 new AbstractModule() {
113 @Override
114 protected void configure() {

Callers

nothing calls this directly

Calls 2

getMethod · 0.95
namedMethod · 0.80

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…