diff options
author | Frode Lundgren <frodelu@yahooinc.com> | 2021-12-05 19:44:19 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-12-05 19:44:19 +0100 |
commit | e69ad799a335618eaf098bcdaab15f16220c78af (patch) | |
tree | 1155e0ab1dcc1b44ed6010065269049359fe5910 /config/src/test/java/com/yahoo/config/subscription/GenericConfigSubscriberTest.java | |
parent | 3ad5494db4fa43e746595ef0005c80454e5b2f6e (diff) | |
parent | 1583971111661c5edb1170309a61c485c102f95b (diff) |
Merge pull request #20366 from vespa-engine/revert-20350-hmusum/config-subscription-refactoring-part-5v7.510.36
Revert "Config subscription refactoring, part 5 [run-systemtest]"
Diffstat (limited to 'config/src/test/java/com/yahoo/config/subscription/GenericConfigSubscriberTest.java')
-rw-r--r-- | config/src/test/java/com/yahoo/config/subscription/GenericConfigSubscriberTest.java | 34 |
1 files changed, 28 insertions, 6 deletions
diff --git a/config/src/test/java/com/yahoo/config/subscription/GenericConfigSubscriberTest.java b/config/src/test/java/com/yahoo/config/subscription/GenericConfigSubscriberTest.java index fc922cc3b07..4616630557e 100644 --- a/config/src/test/java/com/yahoo/config/subscription/GenericConfigSubscriberTest.java +++ b/config/src/test/java/com/yahoo/config/subscription/GenericConfigSubscriberTest.java @@ -6,15 +6,15 @@ import com.yahoo.config.subscription.impl.GenericConfigSubscriber; import com.yahoo.config.subscription.impl.JRTConfigRequester; import com.yahoo.config.subscription.impl.JRTConfigRequesterTest; import com.yahoo.config.subscription.impl.MockConnection; -import com.yahoo.jrt.Supervisor; -import com.yahoo.jrt.Transport; import com.yahoo.vespa.config.ConfigKey; -import com.yahoo.vespa.config.JRTConnectionPool; import com.yahoo.vespa.config.TimingValues; import com.yahoo.vespa.config.protocol.CompressionType; import org.junit.Test; +import java.util.HashMap; +import java.util.LinkedHashMap; import java.util.List; +import java.util.Map; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; @@ -31,11 +31,14 @@ public class GenericConfigSubscriberTest { @Test public void testSubscribeGeneric() throws InterruptedException { - JRTConfigRequester requester = new JRTConfigRequester(new MockConnection(), tv); - GenericConfigSubscriber sub = new GenericConfigSubscriber(requester); + Map<ConfigSourceSet, JRTConfigRequester> requesters = new HashMap<>(); + ConfigSourceSet sourceSet = new ConfigSourceSet("blabla"); + requesters.put(sourceSet, new JRTConfigRequester(new MockConnection(), tv)); + GenericConfigSubscriber sub = new GenericConfigSubscriber(requesters); final List<String> defContent = List.of("myVal int"); GenericConfigHandle handle = sub.subscribe(new ConfigKey<>("simpletypes", "id", "config"), defContent, + sourceSet, tv); assertTrue(sub.nextConfig(false)); assertTrue(handle.isChanged()); @@ -57,6 +60,23 @@ public class GenericConfigSubscriberTest { return handle.getRawConfig().getPayload().withCompression(CompressionType.UNCOMPRESSED).toString(); } + @Test + public void testGenericRequesterPooling() { + ConfigSourceSet source1 = new ConfigSourceSet("tcp/foo:78"); + ConfigSourceSet source2 = new ConfigSourceSet("tcp/bar:79"); + JRTConfigRequester req1 = JRTConfigRequester.create(source1, tv); + JRTConfigRequester req2 = JRTConfigRequester.create(source2, tv); + Map<ConfigSourceSet, JRTConfigRequester> requesters = new LinkedHashMap<>(); + requesters.put(source1, req1); + requesters.put(source2, req2); + GenericConfigSubscriber sub = new GenericConfigSubscriber(requesters); + assertEquals(sub.requesters().get(source1).getConnectionPool().getCurrent().getAddress(), "tcp/foo:78"); + assertEquals(sub.requesters().get(source2).getConnectionPool().getCurrent().getAddress(), "tcp/bar:79"); + for (JRTConfigRequester requester : requesters.values()) { + requester.close(); + } + } + @Test(expected=UnsupportedOperationException.class) public void testOverriddenSubscribeInvalid1() { createSubscriber().subscribe(null, null); @@ -73,7 +93,9 @@ public class GenericConfigSubscriberTest { } private GenericConfigSubscriber createSubscriber() { - return new GenericConfigSubscriber(new JRTConfigRequester(new JRTConnectionPool(new ConfigSourceSet("foo"), new Supervisor(new Transport())), tv)); + return new GenericConfigSubscriber(Map.of( + new ConfigSourceSet("blabla"), + new JRTConfigRequester(new MockConnection(), JRTConfigRequesterTest.getTestTimingValues()))); } } |