Skip to content

Commit 84c00a4

Browse files
committed
merged tests
1 parent f106c14 commit 84c00a4

File tree

1 file changed

+16
-9
lines changed

1 file changed

+16
-9
lines changed

spring-cloud-gateway-core/src/test/java/org/springframework/cloud/gateway/filter/LoadBalancerClientFilterTests.java

Lines changed: 16 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@
44
import java.util.Collections;
55
import java.util.LinkedHashSet;
66

7+
import com.netflix.loadbalancer.ILoadBalancer;
8+
import com.netflix.loadbalancer.Server;
79
import org.junit.Before;
810
import org.junit.Test;
911
import org.junit.runner.RunWith;
@@ -15,6 +17,9 @@
1517
import org.springframework.cloud.client.ServiceInstance;
1618
import org.springframework.cloud.client.loadbalancer.LoadBalancerClient;
1719
import org.springframework.cloud.gateway.support.NotFoundException;
20+
import org.springframework.cloud.netflix.ribbon.RibbonLoadBalancerClient;
21+
import org.springframework.cloud.netflix.ribbon.RibbonLoadBalancerContext;
22+
import org.springframework.cloud.netflix.ribbon.SpringClientFactory;
1823
import org.springframework.http.HttpMethod;
1924
import org.springframework.mock.http.server.reactive.MockServerHttpRequest;
2025
import org.springframework.mock.web.server.MockServerWebExchange;
@@ -196,18 +201,20 @@ private ServerWebExchange testFilter(MockServerHttpRequest request, URI uri) {
196201
ServerWebExchange exchange = MockServerWebExchange.from(request);
197202
exchange.getAttributes().put(GATEWAY_REQUEST_URL_ATTR, uri);
198203

199-
GatewayFilterChain filterChain = mock(GatewayFilterChain.class);
200-
201204
ArgumentCaptor<ServerWebExchange> captor = ArgumentCaptor.forClass(ServerWebExchange.class);
202-
when(filterChain.filter(captor.capture())).thenReturn(Mono.empty());
205+
when(chain.filter(captor.capture())).thenReturn(Mono.empty());
206+
207+
SpringClientFactory clientFactory = mock(SpringClientFactory.class);
208+
ILoadBalancer loadBalancer = mock(ILoadBalancer.class);
209+
210+
when(clientFactory.getLoadBalancerContext("service1")).thenReturn(new RibbonLoadBalancerContext(loadBalancer));
211+
when(clientFactory.getLoadBalancer("service1")).thenReturn(loadBalancer);
212+
when(loadBalancer.chooseServer(any())).thenReturn(new Server("service1-host1", 8081));
203213

204-
LoadBalancerClient loadBalancerClient = mock(LoadBalancerClient.class);
205-
when(loadBalancerClient.choose("service1")).
206-
thenReturn(new DefaultServiceInstance("service1", "service1-host1", 8081,
207-
false, Collections.emptyMap()));
214+
RibbonLoadBalancerClient client = new RibbonLoadBalancerClient(clientFactory);
208215

209-
LoadBalancerClientFilter filter = new LoadBalancerClientFilter(loadBalancerClient);
210-
filter.filter(exchange, filterChain);
216+
LoadBalancerClientFilter filter = new LoadBalancerClientFilter(client);
217+
filter.filter(exchange, chain);
211218

212219
return captor.getValue();
213220
}

0 commit comments

Comments
 (0)