clean up the awkward pattern in service_controller_test

This commit is contained in:
wccsama 2020-03-18 13:50:36 +08:00
parent 84dc704679
commit 3c22575e66

View File

@ -345,23 +345,22 @@ func TestSyncLoadBalancerIfNeeded(t *testing.T) {
if !createCallFound { if !createCallFound {
t.Errorf("Got no create call for load balancer, expected one") t.Errorf("Got no create call for load balancer, expected one")
} }
// TODO(@MrHohn): Clean up the awkward pattern here.
var balancer *fakecloud.Balancer var isFound bool
for k := range cloud.Balancers { for _, balancer := range cloud.Balancers {
if balancer == nil { if !reflect.DeepEqual(balancer, fakecloud.Balancer{}) {
b := cloud.Balancers[k] isFound = true
balancer = &b if balancer.Name != controller.balancer.GetLoadBalancerName(context.Background(), "", tc.service) ||
} else { balancer.Region != region ||
t.Errorf("Got load balancer %v, expected one to be created", cloud.Balancers) balancer.Ports[0].Port != tc.service.Spec.Ports[0].Port {
t.Errorf("Created load balancer has incorrect parameters: %v", balancer)
}
break break
} }
} }
if balancer == nil {
t.Errorf("Got no load balancer, expected one to be created") if !isFound {
} else if balancer.Name != controller.balancer.GetLoadBalancerName(context.Background(), "", tc.service) || t.Errorf("Got no load balancer: %v, expected one to be created", cloud.Balancers)
balancer.Region != region ||
balancer.Ports[0].Port != tc.service.Spec.Ports[0].Port {
t.Errorf("Created load balancer has incorrect parameters: %v", balancer)
} }
} }
if tc.expectDeleteAttempt { if tc.expectDeleteAttempt {
@ -472,8 +471,8 @@ func TestUpdateNodesInExternalLoadBalancer(t *testing.T) {
var services []*v1.Service var services []*v1.Service
services = append(services, item.services...) services = append(services, item.services...)
if err := controller.updateLoadBalancerHosts(services, nodes); err != nil { if servicesToRetry := controller.updateLoadBalancerHosts(services, nodes); servicesToRetry != nil {
t.Errorf("unexpected error: %v", err) t.Errorf("unexpected servicesToRetry: %v", servicesToRetry)
} }
if !reflect.DeepEqual(item.expectedUpdateCalls, cloud.UpdateCalls) { if !reflect.DeepEqual(item.expectedUpdateCalls, cloud.UpdateCalls) {
t.Errorf("expected update calls mismatch, expected %+v, got %+v", item.expectedUpdateCalls, cloud.UpdateCalls) t.Errorf("expected update calls mismatch, expected %+v, got %+v", item.expectedUpdateCalls, cloud.UpdateCalls)