mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-27 21:47:07 +00:00
add gce loadbalancer no-op finalizer and existingFwdRule tests
This commit is contained in:
parent
b2534483fa
commit
3c51478f65
@ -583,16 +583,6 @@ func TestEnsureExternalLoadBalancerFailsWithNoNodes(t *testing.T) {
|
|||||||
func TestEnsureExternalLoadBalancerRBSAnnotation(t *testing.T) {
|
func TestEnsureExternalLoadBalancerRBSAnnotation(t *testing.T) {
|
||||||
t.Parallel()
|
t.Parallel()
|
||||||
|
|
||||||
vals := DefaultTestClusterValues()
|
|
||||||
gce, err := fakeGCECloud(DefaultTestClusterValues())
|
|
||||||
require.NoError(t, err)
|
|
||||||
nodeNames := []string{"test-node-1"}
|
|
||||||
|
|
||||||
nodes, err := createAndInsertNodes(gce, nodeNames, vals.ZoneName)
|
|
||||||
require.NoError(t, err)
|
|
||||||
|
|
||||||
svc := fakeLoadbalancerService("")
|
|
||||||
|
|
||||||
for desc, tc := range map[string]struct {
|
for desc, tc := range map[string]struct {
|
||||||
annotations map[string]string
|
annotations map[string]string
|
||||||
expectError *error
|
expectError *error
|
||||||
@ -611,6 +601,15 @@ func TestEnsureExternalLoadBalancerRBSAnnotation(t *testing.T) {
|
|||||||
},
|
},
|
||||||
} {
|
} {
|
||||||
t.Run(desc, func(t *testing.T) {
|
t.Run(desc, func(t *testing.T) {
|
||||||
|
vals := DefaultTestClusterValues()
|
||||||
|
gce, err := fakeGCECloud(DefaultTestClusterValues())
|
||||||
|
require.NoError(t, err)
|
||||||
|
nodeNames := []string{"test-node-1"}
|
||||||
|
|
||||||
|
nodes, err := createAndInsertNodes(gce, nodeNames, vals.ZoneName)
|
||||||
|
require.NoError(t, err)
|
||||||
|
|
||||||
|
svc := fakeLoadbalancerService("")
|
||||||
svc.Annotations = tc.annotations
|
svc.Annotations = tc.annotations
|
||||||
_, err = gce.ensureExternalLoadBalancer(vals.ClusterName, vals.ClusterID, svc, nil, nodes)
|
_, err = gce.ensureExternalLoadBalancer(vals.ClusterName, vals.ClusterID, svc, nil, nodes)
|
||||||
if tc.expectError != nil {
|
if tc.expectError != nil {
|
||||||
@ -622,6 +621,87 @@ func TestEnsureExternalLoadBalancerRBSAnnotation(t *testing.T) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestEnsureExternalLoadBalancerRBSFinalizer(t *testing.T) {
|
||||||
|
t.Parallel()
|
||||||
|
|
||||||
|
for desc, tc := range map[string]struct {
|
||||||
|
finalizers []string
|
||||||
|
expectError *error
|
||||||
|
}{
|
||||||
|
"When has ELBRbsFinalizer": {
|
||||||
|
finalizers: []string{ELBRbsFinalizer},
|
||||||
|
expectError: &cloudprovider.ImplementedElsewhere,
|
||||||
|
},
|
||||||
|
"When has no finalizer": {
|
||||||
|
finalizers: []string{},
|
||||||
|
expectError: nil,
|
||||||
|
},
|
||||||
|
} {
|
||||||
|
t.Run(desc, func(t *testing.T) {
|
||||||
|
vals := DefaultTestClusterValues()
|
||||||
|
gce, err := fakeGCECloud(DefaultTestClusterValues())
|
||||||
|
require.NoError(t, err)
|
||||||
|
nodeNames := []string{"test-node-1"}
|
||||||
|
|
||||||
|
nodes, err := createAndInsertNodes(gce, nodeNames, vals.ZoneName)
|
||||||
|
require.NoError(t, err)
|
||||||
|
|
||||||
|
svc := fakeLoadbalancerService("")
|
||||||
|
svc.Finalizers = tc.finalizers
|
||||||
|
_, err = gce.ensureExternalLoadBalancer(vals.ClusterName, vals.ClusterID, svc, nil, nodes)
|
||||||
|
if tc.expectError != nil {
|
||||||
|
assert.EqualError(t, err, (*tc.expectError).Error())
|
||||||
|
} else {
|
||||||
|
assert.NoError(t, err, "Should not return an error "+desc)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func TestEnsureExternalLoadBalancerExistingFwdRule(t *testing.T) {
|
||||||
|
t.Parallel()
|
||||||
|
|
||||||
|
for desc, tc := range map[string]struct {
|
||||||
|
existingForwardingRule *compute.ForwardingRule
|
||||||
|
expectError *error
|
||||||
|
}{
|
||||||
|
"When has existingForwardingRule with backend service": {
|
||||||
|
existingForwardingRule: &compute.ForwardingRule{
|
||||||
|
BackendService: "exists",
|
||||||
|
},
|
||||||
|
expectError: &cloudprovider.ImplementedElsewhere,
|
||||||
|
},
|
||||||
|
"When has existingForwardingRule with empty backend service": {
|
||||||
|
existingForwardingRule: &compute.ForwardingRule{
|
||||||
|
BackendService: "",
|
||||||
|
},
|
||||||
|
expectError: nil,
|
||||||
|
},
|
||||||
|
"When has no existingForwardingRule": {
|
||||||
|
existingForwardingRule: nil,
|
||||||
|
expectError: nil,
|
||||||
|
},
|
||||||
|
} {
|
||||||
|
t.Run(desc, func(t *testing.T) {
|
||||||
|
vals := DefaultTestClusterValues()
|
||||||
|
gce, err := fakeGCECloud(DefaultTestClusterValues())
|
||||||
|
require.NoError(t, err)
|
||||||
|
nodeNames := []string{"test-node-1"}
|
||||||
|
|
||||||
|
nodes, err := createAndInsertNodes(gce, nodeNames, vals.ZoneName)
|
||||||
|
require.NoError(t, err)
|
||||||
|
|
||||||
|
svc := fakeLoadbalancerService("")
|
||||||
|
_, err = gce.ensureExternalLoadBalancer(vals.ClusterName, vals.ClusterID, svc, tc.existingForwardingRule, nodes)
|
||||||
|
if tc.expectError != nil {
|
||||||
|
assert.EqualError(t, err, (*tc.expectError).Error())
|
||||||
|
} else {
|
||||||
|
assert.NoError(t, err, "Should not return an error "+desc)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
func TestForwardingRuleNeedsUpdate(t *testing.T) {
|
func TestForwardingRuleNeedsUpdate(t *testing.T) {
|
||||||
t.Parallel()
|
t.Parallel()
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user