diff options
Diffstat (limited to 'config/src/test/java/com/yahoo/config/subscription/impl')
-rw-r--r-- | config/src/test/java/com/yahoo/config/subscription/impl/FileConfigSubscriptionTest.java | 7 | ||||
-rw-r--r-- | config/src/test/java/com/yahoo/config/subscription/impl/JRTConfigRequesterTest.java | 78 |
2 files changed, 46 insertions, 39 deletions
diff --git a/config/src/test/java/com/yahoo/config/subscription/impl/FileConfigSubscriptionTest.java b/config/src/test/java/com/yahoo/config/subscription/impl/FileConfigSubscriptionTest.java index 74af35e39dc..15f39f590aa 100644 --- a/config/src/test/java/com/yahoo/config/subscription/impl/FileConfigSubscriptionTest.java +++ b/config/src/test/java/com/yahoo/config/subscription/impl/FileConfigSubscriptionTest.java @@ -1,6 +1,7 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.config.subscription.impl; +import com.yahoo.config.subscription.ConfigSubscriber; import com.yahoo.config.subscription.DirSource; import com.yahoo.foo.SimpletypesConfig; import com.yahoo.foo.TestReferenceConfig; @@ -97,10 +98,8 @@ public class FileConfigSubscriptionTest { final String cfgDir = "src/test/resources/configs/foo"; final String cfgId = "dir:" + cfgDir; final ConfigKey<TestReferenceConfig> key = new ConfigKey<>(TestReferenceConfig.class, cfgId); - ConfigSubscription<TestReferenceConfig> sub = ConfigSubscription.get(key, - new JrtConfigRequesters(), - new DirSource(new File(cfgDir)), - new TimingValues()); + ConfigSubscriber subscriber = new ConfigSubscriber(); + ConfigSubscription<TestReferenceConfig> sub = ConfigSubscription.get(key, subscriber, new DirSource(new File(cfgDir)), new TimingValues()); assertTrue(sub.nextConfig(1000)); assertThat(sub.getConfigState().getConfig().configId(), is(cfgId)); } diff --git a/config/src/test/java/com/yahoo/config/subscription/impl/JRTConfigRequesterTest.java b/config/src/test/java/com/yahoo/config/subscription/impl/JRTConfigRequesterTest.java index dca0c2d0018..62a25fadf25 100644 --- a/config/src/test/java/com/yahoo/config/subscription/impl/JRTConfigRequesterTest.java +++ b/config/src/test/java/com/yahoo/config/subscription/impl/JRTConfigRequesterTest.java @@ -2,6 +2,7 @@ package com.yahoo.config.subscription.impl; import com.yahoo.config.subscription.ConfigSourceSet; +import com.yahoo.config.subscription.ConfigSubscriber; import com.yahoo.foo.SimpletypesConfig; import com.yahoo.jrt.Request; import com.yahoo.vespa.config.ConfigKey; @@ -50,11 +51,12 @@ public class JRTConfigRequesterTest { @Test public void testFirstRequestAfterSubscribing() { - TimingValues timingValues = getTestTimingValues(); - MockConnection connection = new MockConnection(); - JRTConfigRequester requester = new JRTConfigRequester(connection, timingValues); - JRTConfigSubscription<SimpletypesConfig> sub = createSubscription(requester, timingValues); + ConfigSubscriber subscriber = new ConfigSubscriber(); + final TimingValues timingValues = getTestTimingValues(); + JRTConfigSubscription<SimpletypesConfig> sub = createSubscription(subscriber, timingValues); + final MockConnection connection = new MockConnection(); + JRTConfigRequester requester = new JRTConfigRequester(connection, timingValues); assertEquals(requester.getConnectionPool(), connection); requester.request(sub); final Request request = connection.getRequest(); @@ -68,24 +70,25 @@ public class JRTConfigRequesterTest { @Test public void testFatalError() { + ConfigSubscriber subscriber = new ConfigSubscriber(); final TimingValues timingValues = getTestTimingValues(); final MockConnection connection = new MockConnection(new ErrorResponseHandler()); JRTConfigRequester requester = new JRTConfigRequester(connection, timingValues); - requester.request(createSubscription(requester, timingValues)); + requester.request(createSubscription(subscriber, timingValues)); waitUntilResponse(connection); assertEquals(1, requester.getFailures()); } @Test public void testFatalErrorSubscribed() { - TimingValues timingValues = getTestTimingValues(); - MockConnection connection = new MockConnection(new ErrorResponseHandler()); - JRTConfigRequester requester = new JRTConfigRequester(connection, timingValues); - - JRTConfigSubscription<SimpletypesConfig> sub = createSubscription(requester, timingValues); + ConfigSubscriber subscriber = new ConfigSubscriber(); + final TimingValues timingValues = getTestTimingValues(); + JRTConfigSubscription<SimpletypesConfig> sub = createSubscription(subscriber, timingValues); sub.setConfig(1L, false, config(), PayloadChecksums.empty()); + final MockConnection connection = new MockConnection(new ErrorResponseHandler()); + JRTConfigRequester requester = new JRTConfigRequester(connection, timingValues); requester.request(sub); waitUntilResponse(connection); assertEquals(1, requester.getFailures()); @@ -93,23 +96,25 @@ public class JRTConfigRequesterTest { @Test public void testTransientError() { - TimingValues timingValues = getTestTimingValues(); + ConfigSubscriber subscriber = new ConfigSubscriber(); + final TimingValues timingValues = getTestTimingValues(); - MockConnection connection = new MockConnection(new ErrorResponseHandler(com.yahoo.jrt.ErrorCode.TIMEOUT)); + final MockConnection connection = new MockConnection(new ErrorResponseHandler(com.yahoo.jrt.ErrorCode.TIMEOUT)); JRTConfigRequester requester = new JRTConfigRequester(connection, timingValues); - requester.request(createSubscription(requester, timingValues)); + requester.request(createSubscription(subscriber, timingValues)); waitUntilResponse(connection); assertEquals(1, requester.getFailures()); } @Test public void testTransientErrorSubscribed() { - TimingValues timingValues = getTestTimingValues(); - MockConnection connection = new MockConnection(new ErrorResponseHandler(com.yahoo.jrt.ErrorCode.TIMEOUT)); - JRTConfigRequester requester = new JRTConfigRequester(connection, timingValues); - JRTConfigSubscription<SimpletypesConfig> sub = createSubscription(requester, timingValues); + ConfigSubscriber subscriber = new ConfigSubscriber(); + final TimingValues timingValues = getTestTimingValues(); + JRTConfigSubscription<SimpletypesConfig> sub = createSubscription(subscriber, timingValues); sub.setConfig(1L, false, config(), PayloadChecksums.empty()); + final MockConnection connection = new MockConnection(new ErrorResponseHandler(com.yahoo.jrt.ErrorCode.TIMEOUT)); + JRTConfigRequester requester = new JRTConfigRequester(connection, timingValues); requester.request(sub); waitUntilResponse(connection); assertEquals(1, requester.getFailures()); @@ -117,12 +122,13 @@ public class JRTConfigRequesterTest { @Test public void testUnknownConfigDefinitionError() { - TimingValues timingValues = getTestTimingValues(); - MockConnection connection = new MockConnection(new ErrorResponseHandler(ErrorCode.UNKNOWN_DEFINITION)); - JRTConfigRequester requester = new JRTConfigRequester(connection, timingValues); - JRTConfigSubscription<SimpletypesConfig> sub = createSubscription(requester, timingValues); + ConfigSubscriber subscriber = new ConfigSubscriber(); + final TimingValues timingValues = getTestTimingValues(); + JRTConfigSubscription<SimpletypesConfig> sub = createSubscription(subscriber, timingValues); sub.setConfig(1L, false, config(), PayloadChecksums.empty()); + final MockConnection connection = new MockConnection(new ErrorResponseHandler(ErrorCode.UNKNOWN_DEFINITION)); + JRTConfigRequester requester = new JRTConfigRequester(connection, timingValues); assertEquals(requester.getConnectionPool(), connection); requester.request(sub); waitUntilResponse(connection); @@ -131,12 +137,13 @@ public class JRTConfigRequesterTest { @Test public void testClosedSubscription() { - TimingValues timingValues = getTestTimingValues(); - MockConnection connection = new MockConnection(new MockConnection.OKResponseHandler()); - JRTConfigRequester requester = new JRTConfigRequester(connection, timingValues); - JRTConfigSubscription<SimpletypesConfig> sub = createSubscription(requester, timingValues); + ConfigSubscriber subscriber = new ConfigSubscriber(); + final TimingValues timingValues = getTestTimingValues(); + JRTConfigSubscription<SimpletypesConfig> sub = createSubscription(subscriber, timingValues); sub.close(); + final MockConnection connection = new MockConnection(new MockConnection.OKResponseHandler()); + JRTConfigRequester requester = new JRTConfigRequester(connection, timingValues); requester.request(sub); assertEquals(1, connection.getNumberOfRequests()); // Check that no further request was sent? @@ -150,14 +157,16 @@ public class JRTConfigRequesterTest { @Test public void testTimeout() { - TimingValues timingValues = getTestTimingValues(); - MockConnection connection = new MockConnection(new DelayedResponseHandler(timingValues.getSubscribeTimeout()), - 2); // fake that we have more than one source - JRTConfigRequester requester = new JRTConfigRequester(connection, timingValues); - JRTConfigSubscription<SimpletypesConfig> sub = createSubscription(requester, timingValues); + ConfigSubscriber subscriber = new ConfigSubscriber(); + final TimingValues timingValues = getTestTimingValues(); + JRTConfigSubscription<SimpletypesConfig> sub = createSubscription(subscriber, timingValues); sub.close(); - requester.request(createSubscription(requester, timingValues)); + final MockConnection connection = new MockConnection( + new DelayedResponseHandler(timingValues.getSubscribeTimeout()), + 2); // fake that we have more than one source + JRTConfigRequester requester = new JRTConfigRequester(connection, timingValues); + requester.request(createSubscription(subscriber, timingValues)); // Check that no further request was sent? try { Thread.sleep(timingValues.getFixedDelay()*2); @@ -166,10 +175,9 @@ public class JRTConfigRequesterTest { } } - private JRTConfigSubscription<SimpletypesConfig> createSubscription(JRTConfigRequester requester, TimingValues timingValues) { - return new JRTConfigSubscription<>(new ConfigKey<>(SimpletypesConfig.class, "testid"), - requester, - timingValues); + private JRTConfigSubscription<SimpletypesConfig> createSubscription(ConfigSubscriber subscriber, TimingValues timingValues) { + return new JRTConfigSubscription<>( + new ConfigKey<>(SimpletypesConfig.class, "testid"), subscriber, null, timingValues); } private SimpletypesConfig config() { |