mirror of https://github.com/grpc/grpc-java.git
xds: Check isHttp11ProxyAvailable in equals()
This fixes an equals/hashCode bug introduced in 12197065fe
.
Discovered when investigating b/430347751
This commit is contained in:
parent
01bd63d88f
commit
9d191b31b5
|
@ -89,7 +89,7 @@ public final class ClusterResolverLoadBalancerProvider extends LoadBalancerProvi
|
|||
|
||||
@Override
|
||||
public int hashCode() {
|
||||
return Objects.hash(discoveryMechanisms, lbConfig);
|
||||
return Objects.hash(discoveryMechanisms, lbConfig, isHttp11ProxyAvailable);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -102,7 +102,8 @@ public final class ClusterResolverLoadBalancerProvider extends LoadBalancerProvi
|
|||
}
|
||||
ClusterResolverConfig that = (ClusterResolverConfig) o;
|
||||
return discoveryMechanisms.equals(that.discoveryMechanisms)
|
||||
&& lbConfig.equals(that.lbConfig);
|
||||
&& lbConfig.equals(that.lbConfig)
|
||||
&& isHttp11ProxyAvailable == that.isHttp11ProxyAvailable;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -110,6 +111,7 @@ public final class ClusterResolverLoadBalancerProvider extends LoadBalancerProvi
|
|||
return MoreObjects.toStringHelper(this)
|
||||
.add("discoveryMechanisms", discoveryMechanisms)
|
||||
.add("lbConfig", lbConfig)
|
||||
.add("isHttp11ProxyAvailable", isHttp11ProxyAvailable)
|
||||
.toString();
|
||||
}
|
||||
|
||||
|
|
|
@ -32,6 +32,7 @@ import static org.mockito.Mockito.when;
|
|||
|
||||
import com.google.common.collect.ImmutableMap;
|
||||
import com.google.common.collect.Iterables;
|
||||
import com.google.common.testing.EqualsTester;
|
||||
import io.grpc.Attributes;
|
||||
import io.grpc.ChannelLogger;
|
||||
import io.grpc.ConnectivityState;
|
||||
|
@ -1199,6 +1200,27 @@ public class ClusterResolverLoadBalancerTest {
|
|||
any(ConnectivityState.class), any(SubchannelPicker.class));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void config_equalsTester() {
|
||||
new EqualsTester()
|
||||
.addEqualityGroup(
|
||||
new ClusterResolverConfig(
|
||||
Collections.singletonList(edsDiscoveryMechanism1), leastRequest, false),
|
||||
new ClusterResolverConfig(
|
||||
Collections.singletonList(edsDiscoveryMechanism1), leastRequest, false))
|
||||
.addEqualityGroup(new ClusterResolverConfig(
|
||||
Collections.singletonList(edsDiscoveryMechanism1), roundRobin, false))
|
||||
.addEqualityGroup(new ClusterResolverConfig(
|
||||
Collections.singletonList(edsDiscoveryMechanism1), leastRequest, true))
|
||||
.addEqualityGroup(new ClusterResolverConfig(
|
||||
Collections.singletonList(edsDiscoveryMechanismWithOutlierDetection),
|
||||
leastRequest,
|
||||
false))
|
||||
.addEqualityGroup(new ClusterResolverConfig(
|
||||
Arrays.asList(edsDiscoveryMechanism1, edsDiscoveryMechanism2), leastRequest, false))
|
||||
.testEquals();
|
||||
}
|
||||
|
||||
private void deliverLbConfig(ClusterResolverConfig config) {
|
||||
loadBalancer.acceptResolvedAddresses(
|
||||
ResolvedAddresses.newBuilder()
|
||||
|
|
Loading…
Reference in New Issue