summaryrefslogtreecommitdiffstats
path: root/config/src/test/java/com/yahoo/config/subscription/GenericConfigSubscriberTest.java
diff options
context:
space:
mode:
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.java34
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())));
}
}