Search in sources :

Example 51 with ConfigOrError

use of io.grpc.NameResolver.ConfigOrError in project grpc-java by grpc.

the class GrpclbLoadBalancerProviderTest method retrieveModeFromLbConfig_emptyChildPolicyUseRoundRobin.

@Test
public void retrieveModeFromLbConfig_emptyChildPolicyUseRoundRobin() throws Exception {
    String lbConfig = "{\"childPolicy\" : []}";
    ConfigOrError configOrError = provider.parseLoadBalancingPolicyConfig(parseJsonObject(lbConfig));
    assertThat(configOrError.getConfig()).isNotNull();
    GrpclbConfig config = (GrpclbConfig) configOrError.getConfig();
    assertThat(config.getMode()).isEqualTo(Mode.ROUND_ROBIN);
    assertThat(config.getServiceName()).isNull();
}
Also used : ConfigOrError(io.grpc.NameResolver.ConfigOrError) Test(org.junit.Test)

Example 52 with ConfigOrError

use of io.grpc.NameResolver.ConfigOrError in project grpc-java by grpc.

the class GrpclbLoadBalancerProviderTest method retrieveModeFromLbConfig_wrongChildPolicyTypeWithTarget.

@Test
public void retrieveModeFromLbConfig_wrongChildPolicyTypeWithTarget() throws Exception {
    String lbConfig = "{\"childPolicy\" : {}, \"serviceName\": \"foo.google.com\"}";
    ConfigOrError configOrError = provider.parseLoadBalancingPolicyConfig(parseJsonObject(lbConfig));
    assertThat(configOrError.getError()).isNotNull();
    assertThat(configOrError.getError().getCause()).hasMessageThat().contains("is not List");
}
Also used : ConfigOrError(io.grpc.NameResolver.ConfigOrError) Test(org.junit.Test)

Example 53 with ConfigOrError

use of io.grpc.NameResolver.ConfigOrError in project grpc-java by grpc.

the class RlsLoadBalancerTest method deliverResolvedAddresses.

private void deliverResolvedAddresses() throws Exception {
    ConfigOrError parsedConfigOrError = provider.parseLoadBalancingPolicyConfig(getServiceConfig());
    assertThat(parsedConfigOrError.getConfig()).isNotNull();
    rlsLb.handleResolvedAddresses(ResolvedAddresses.newBuilder().setAddresses(ImmutableList.of(new EquivalentAddressGroup(mock(SocketAddress.class)))).setLoadBalancingPolicyConfig(parsedConfigOrError.getConfig()).build());
    verify(helper).createResolvingOobChannelBuilder(anyString(), any(ChannelCredentials.class));
}
Also used : EquivalentAddressGroup(io.grpc.EquivalentAddressGroup) ChannelCredentials(io.grpc.ChannelCredentials) ConfigOrError(io.grpc.NameResolver.ConfigOrError)

Example 54 with ConfigOrError

use of io.grpc.NameResolver.ConfigOrError in project grpc-java by grpc.

the class LeastRequestLoadBalancerProviderTest method parseLoadBalancingConfig_invalid_negativeSize.

@Test
public void parseLoadBalancingConfig_invalid_negativeSize() throws IOException {
    String lbConfig = "{\"choiceCount\" : -10}";
    ConfigOrError configOrError = provider.parseLoadBalancingPolicyConfig(parseJsonObject(lbConfig));
    assertThat(configOrError.getError()).isNotNull();
    assertThat(configOrError.getError().getCode()).isEqualTo(Code.INVALID_ARGUMENT);
    assertThat(configOrError.getError().getDescription()).isEqualTo("Invalid 'choiceCount'");
}
Also used : ConfigOrError(io.grpc.NameResolver.ConfigOrError) Test(org.junit.Test)

Example 55 with ConfigOrError

use of io.grpc.NameResolver.ConfigOrError in project grpc-java by grpc.

the class LeastRequestLoadBalancerProviderTest method parseLoadBalancingConfig_missingChoiceCount_useDefaults.

@Test
public void parseLoadBalancingConfig_missingChoiceCount_useDefaults() throws IOException {
    String lbConfig = "{}";
    ConfigOrError configOrError = provider.parseLoadBalancingPolicyConfig(parseJsonObject(lbConfig));
    assertThat(configOrError.getConfig()).isNotNull();
    LeastRequestConfig config = (LeastRequestConfig) configOrError.getConfig();
    assertThat(config.choiceCount).isEqualTo(LeastRequestLoadBalancerProvider.DEFAULT_CHOICE_COUNT);
}
Also used : LeastRequestConfig(io.grpc.xds.LeastRequestLoadBalancer.LeastRequestConfig) ConfigOrError(io.grpc.NameResolver.ConfigOrError) Test(org.junit.Test)

Aggregations

ConfigOrError (io.grpc.NameResolver.ConfigOrError)57 Test (org.junit.Test)52 PolicySelection (io.grpc.internal.ServiceConfigUtil.PolicySelection)10 EquivalentAddressGroup (io.grpc.EquivalentAddressGroup)9 Helper (io.grpc.LoadBalancer.Helper)9 Status (io.grpc.Status)9 AutoConfiguredLoadBalancer (io.grpc.internal.AutoConfiguredLoadBalancerFactory.AutoConfiguredLoadBalancer)7 ForwardingLoadBalancerHelper (io.grpc.util.ForwardingLoadBalancerHelper)7 Map (java.util.Map)7 InetSocketAddress (java.net.InetSocketAddress)6 SocketAddress (java.net.SocketAddress)4 Random (java.util.Random)4 CreateSubchannelArgs (io.grpc.LoadBalancer.CreateSubchannelArgs)3 ResolvedAddresses (io.grpc.LoadBalancer.ResolvedAddresses)3 LoadBalancerProvider (io.grpc.LoadBalancerProvider)3 LoadBalancerRegistry (io.grpc.LoadBalancerRegistry)3 LeastRequestConfig (io.grpc.xds.LeastRequestLoadBalancer.LeastRequestConfig)3 LbConfig (io.grpc.internal.ServiceConfigUtil.LbConfig)2 RingHashConfig (io.grpc.xds.RingHashLoadBalancer.RingHashConfig)2 LinkedHashMap (java.util.LinkedHashMap)2