mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-07-27 21:47:07 +00:00
Svc REST: Test that ExternalName doesn't set IPs
This commit is contained in:
parent
ca4a95ee49
commit
9ca582f3b7
@ -339,14 +339,12 @@ func familyOf(ip string) api.IPFamily {
|
|||||||
return api.IPFamily("unknown")
|
return api.IPFamily("unknown")
|
||||||
}
|
}
|
||||||
|
|
||||||
// Prove that create ignores IPFamily stuff when type is ExternalName.
|
// Prove that create ignores IP and IPFamily stuff when type is ExternalName.
|
||||||
func TestCreateIgnoresIPFamilyForExternalName(t *testing.T) {
|
func TestCreateIgnoresIPsForExternalName(t *testing.T) {
|
||||||
type testCase struct {
|
type testCase struct {
|
||||||
name string
|
name string
|
||||||
svc *api.Service
|
svc *api.Service
|
||||||
expectError bool
|
expectError bool
|
||||||
expectPolicy *api.IPFamilyPolicyType
|
|
||||||
expectFamilies []api.IPFamily
|
|
||||||
}
|
}
|
||||||
// These cases were chosen from the full gamut to ensure all "interesting"
|
// These cases were chosen from the full gamut to ensure all "interesting"
|
||||||
// cases are covered.
|
// cases are covered.
|
||||||
@ -362,29 +360,21 @@ func TestCreateIgnoresIPFamilyForExternalName(t *testing.T) {
|
|||||||
cases: []testCase{{
|
cases: []testCase{{
|
||||||
name: "Policy:unset_Families:unset",
|
name: "Policy:unset_Families:unset",
|
||||||
svc: svctest.MakeService("foo"),
|
svc: svctest.MakeService("foo"),
|
||||||
expectPolicy: nil,
|
|
||||||
expectFamilies: nil,
|
|
||||||
}, {
|
}, {
|
||||||
name: "Policy:SingleStack_Families:v4",
|
name: "Policy:SingleStack_Families:v4",
|
||||||
svc: svctest.MakeService("foo",
|
svc: svctest.MakeService("foo",
|
||||||
svctest.SetIPFamilyPolicy(api.IPFamilyPolicySingleStack),
|
svctest.SetIPFamilyPolicy(api.IPFamilyPolicySingleStack),
|
||||||
svctest.SetIPFamilies(api.IPv4Protocol)),
|
svctest.SetIPFamilies(api.IPv4Protocol)),
|
||||||
expectPolicy: nil,
|
|
||||||
expectFamilies: nil,
|
|
||||||
}, {
|
}, {
|
||||||
name: "Policy:PreferDualStack_Families:v4v6",
|
name: "Policy:PreferDualStack_Families:v4v6",
|
||||||
svc: svctest.MakeService("foo",
|
svc: svctest.MakeService("foo",
|
||||||
svctest.SetIPFamilyPolicy(api.IPFamilyPolicyPreferDualStack),
|
svctest.SetIPFamilyPolicy(api.IPFamilyPolicyPreferDualStack),
|
||||||
svctest.SetIPFamilies(api.IPv4Protocol, api.IPv6Protocol)),
|
svctest.SetIPFamilies(api.IPv4Protocol, api.IPv6Protocol)),
|
||||||
expectPolicy: nil,
|
|
||||||
expectFamilies: nil,
|
|
||||||
}, {
|
}, {
|
||||||
name: "Policy:RequireDualStack_Families:v6v4",
|
name: "Policy:RequireDualStack_Families:v6v4",
|
||||||
svc: svctest.MakeService("foo",
|
svc: svctest.MakeService("foo",
|
||||||
svctest.SetIPFamilyPolicy(api.IPFamilyPolicyRequireDualStack),
|
svctest.SetIPFamilyPolicy(api.IPFamilyPolicyRequireDualStack),
|
||||||
svctest.SetIPFamilies(api.IPv6Protocol, api.IPv4Protocol)),
|
svctest.SetIPFamilies(api.IPv6Protocol, api.IPv4Protocol)),
|
||||||
expectPolicy: nil,
|
|
||||||
expectFamilies: nil,
|
|
||||||
}},
|
}},
|
||||||
}, {
|
}, {
|
||||||
name: "singlestack:v6_gate:on",
|
name: "singlestack:v6_gate:on",
|
||||||
@ -393,8 +383,6 @@ func TestCreateIgnoresIPFamilyForExternalName(t *testing.T) {
|
|||||||
cases: []testCase{{
|
cases: []testCase{{
|
||||||
name: "Policy:unset_Families:unset",
|
name: "Policy:unset_Families:unset",
|
||||||
svc: svctest.MakeService("foo"),
|
svc: svctest.MakeService("foo"),
|
||||||
expectPolicy: nil,
|
|
||||||
expectFamilies: nil,
|
|
||||||
}, {
|
}, {
|
||||||
name: "Policy:SingleStack_Families:v6",
|
name: "Policy:SingleStack_Families:v6",
|
||||||
svc: svctest.MakeService("foo",
|
svc: svctest.MakeService("foo",
|
||||||
@ -421,29 +409,21 @@ func TestCreateIgnoresIPFamilyForExternalName(t *testing.T) {
|
|||||||
cases: []testCase{{
|
cases: []testCase{{
|
||||||
name: "Policy:unset_Families:unset",
|
name: "Policy:unset_Families:unset",
|
||||||
svc: svctest.MakeService("foo"),
|
svc: svctest.MakeService("foo"),
|
||||||
expectPolicy: nil,
|
|
||||||
expectFamilies: nil,
|
|
||||||
}, {
|
}, {
|
||||||
name: "Policy:SingleStack_Families:v4",
|
name: "Policy:SingleStack_Families:v4",
|
||||||
svc: svctest.MakeService("foo",
|
svc: svctest.MakeService("foo",
|
||||||
svctest.SetIPFamilyPolicy(api.IPFamilyPolicySingleStack),
|
svctest.SetIPFamilyPolicy(api.IPFamilyPolicySingleStack),
|
||||||
svctest.SetIPFamilies(api.IPv4Protocol)),
|
svctest.SetIPFamilies(api.IPv4Protocol)),
|
||||||
expectPolicy: nil,
|
|
||||||
expectFamilies: nil,
|
|
||||||
}, {
|
}, {
|
||||||
name: "Policy:PreferDualStack_Families:v4v6",
|
name: "Policy:PreferDualStack_Families:v4v6",
|
||||||
svc: svctest.MakeService("foo",
|
svc: svctest.MakeService("foo",
|
||||||
svctest.SetIPFamilyPolicy(api.IPFamilyPolicyPreferDualStack),
|
svctest.SetIPFamilyPolicy(api.IPFamilyPolicyPreferDualStack),
|
||||||
svctest.SetIPFamilies(api.IPv4Protocol, api.IPv6Protocol)),
|
svctest.SetIPFamilies(api.IPv4Protocol, api.IPv6Protocol)),
|
||||||
expectPolicy: nil,
|
|
||||||
expectFamilies: nil,
|
|
||||||
}, {
|
}, {
|
||||||
name: "Policy:RequireDualStack_Families:v6v4",
|
name: "Policy:RequireDualStack_Families:v6v4",
|
||||||
svc: svctest.MakeService("foo",
|
svc: svctest.MakeService("foo",
|
||||||
svctest.SetIPFamilyPolicy(api.IPFamilyPolicyRequireDualStack),
|
svctest.SetIPFamilyPolicy(api.IPFamilyPolicyRequireDualStack),
|
||||||
svctest.SetIPFamilies(api.IPv6Protocol, api.IPv4Protocol)),
|
svctest.SetIPFamilies(api.IPv6Protocol, api.IPv4Protocol)),
|
||||||
expectPolicy: nil,
|
|
||||||
expectFamilies: nil,
|
|
||||||
}},
|
}},
|
||||||
}, {
|
}, {
|
||||||
name: "dualstack:v6v4_gate:on",
|
name: "dualstack:v6v4_gate:on",
|
||||||
@ -452,8 +432,6 @@ func TestCreateIgnoresIPFamilyForExternalName(t *testing.T) {
|
|||||||
cases: []testCase{{
|
cases: []testCase{{
|
||||||
name: "Policy:unset_Families:unset",
|
name: "Policy:unset_Families:unset",
|
||||||
svc: svctest.MakeService("foo"),
|
svc: svctest.MakeService("foo"),
|
||||||
expectPolicy: nil,
|
|
||||||
expectFamilies: nil,
|
|
||||||
}, {
|
}, {
|
||||||
name: "Policy:SingleStack_Families:v6",
|
name: "Policy:SingleStack_Families:v6",
|
||||||
svc: svctest.MakeService("foo",
|
svc: svctest.MakeService("foo",
|
||||||
@ -503,12 +481,18 @@ func TestCreateIgnoresIPFamilyForExternalName(t *testing.T) {
|
|||||||
}
|
}
|
||||||
createdSvc := createdObj.(*api.Service)
|
createdSvc := createdObj.(*api.Service)
|
||||||
|
|
||||||
if want, got := fmtIPFamilyPolicy(itc.expectPolicy), fmtIPFamilyPolicy(createdSvc.Spec.IPFamilyPolicy); want != got {
|
if want, got := fmtIPFamilyPolicy(nil), fmtIPFamilyPolicy(createdSvc.Spec.IPFamilyPolicy); want != got {
|
||||||
t.Errorf("wrong IPFamilyPolicy: want %s, got %s", want, got)
|
t.Errorf("wrong IPFamilyPolicy: want %s, got %s", want, got)
|
||||||
}
|
}
|
||||||
if want, got := fmtIPFamilies(itc.expectFamilies), fmtIPFamilies(createdSvc.Spec.IPFamilies); want != got {
|
if want, got := fmtIPFamilies(nil), fmtIPFamilies(createdSvc.Spec.IPFamilies); want != got {
|
||||||
t.Errorf("wrong IPFamilies: want %s, got %s", want, got)
|
t.Errorf("wrong IPFamilies: want %s, got %s", want, got)
|
||||||
}
|
}
|
||||||
|
if len(createdSvc.Spec.ClusterIP) != 0 {
|
||||||
|
t.Errorf("expected no clusterIP, got %q", createdSvc.Spec.ClusterIP)
|
||||||
|
}
|
||||||
|
if len(createdSvc.Spec.ClusterIPs) != 0 {
|
||||||
|
t.Errorf("expected no clusterIPs, got %q", createdSvc.Spec.ClusterIPs)
|
||||||
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
Loading…
Reference in New Issue
Block a user