rename mocks to fakes and add nil check
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
load("@io_bazel_rules_go//go:def.bzl", "go_library")
|
load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test")
|
||||||
|
|
||||||
go_library(
|
go_library(
|
||||||
name = "go_default_library",
|
name = "go_default_library",
|
||||||
@@ -34,3 +34,16 @@ filegroup(
|
|||||||
tags = ["automanaged"],
|
tags = ["automanaged"],
|
||||||
visibility = ["//visibility:public"],
|
visibility = ["//visibility:public"],
|
||||||
)
|
)
|
||||||
|
|
||||||
|
go_test(
|
||||||
|
name = "go_default_test",
|
||||||
|
srcs = ["fieldmanager_test.go"],
|
||||||
|
embed = [":go_default_library"],
|
||||||
|
deps = [
|
||||||
|
"//staging/src/k8s.io/api/core/v1:go_default_library",
|
||||||
|
"//staging/src/k8s.io/apimachinery/pkg/api/meta:go_default_library",
|
||||||
|
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",
|
||||||
|
"//staging/src/k8s.io/apimachinery/pkg/runtime:go_default_library",
|
||||||
|
"//staging/src/k8s.io/apimachinery/pkg/runtime/schema:go_default_library",
|
||||||
|
],
|
||||||
|
)
|
||||||
|
@@ -29,24 +29,24 @@ import (
|
|||||||
"k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager"
|
"k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager"
|
||||||
)
|
)
|
||||||
|
|
||||||
type mockObjectConvertor struct{}
|
type fakeObjectConvertor struct{}
|
||||||
|
|
||||||
func (c *mockObjectConvertor) Convert(in, out, context interface{}) error {
|
func (c *fakeObjectConvertor) Convert(in, out, context interface{}) error {
|
||||||
out = in
|
out = in
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *mockObjectConvertor) ConvertToVersion(in runtime.Object, _ runtime.GroupVersioner) (runtime.Object, error) {
|
func (c *fakeObjectConvertor) ConvertToVersion(in runtime.Object, _ runtime.GroupVersioner) (runtime.Object, error) {
|
||||||
return in, nil
|
return in, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (c *mockObjectConvertor) ConvertFieldLabel(_ schema.GroupVersionKind, _, _ string) (string, string, error) {
|
func (c *fakeObjectConvertor) ConvertFieldLabel(_ schema.GroupVersionKind, _, _ string) (string, string, error) {
|
||||||
return "", "", errors.New("not implemented")
|
return "", "", errors.New("not implemented")
|
||||||
}
|
}
|
||||||
|
|
||||||
type mockObjectDefaulter struct{}
|
type fakeObjectDefaulter struct{}
|
||||||
|
|
||||||
func (d *mockObjectDefaulter) Default(in runtime.Object) {}
|
func (d *fakeObjectDefaulter) Default(in runtime.Object) {}
|
||||||
|
|
||||||
func NewTestFieldManager(t *testing.T) *fieldmanager.FieldManager {
|
func NewTestFieldManager(t *testing.T) *fieldmanager.FieldManager {
|
||||||
gv := schema.GroupVersion{
|
gv := schema.GroupVersion{
|
||||||
@@ -55,25 +55,28 @@ func NewTestFieldManager(t *testing.T) *fieldmanager.FieldManager {
|
|||||||
}
|
}
|
||||||
|
|
||||||
return fieldmanager.NewCRDFieldManager(
|
return fieldmanager.NewCRDFieldManager(
|
||||||
&mockObjectConvertor{},
|
&fakeObjectConvertor{},
|
||||||
&mockObjectDefaulter{},
|
&fakeObjectDefaulter{},
|
||||||
gv,
|
gv,
|
||||||
gv,
|
gv,
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestFieldManagerCreation(t *testing.T) {
|
func TestFieldManagerCreation(t *testing.T) {
|
||||||
_ = NewTestFieldManager(t)
|
if NewTestFieldManager(t) == nil {
|
||||||
|
t.Fatal("failed to create FieldManager")
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func TestApplyStripsFields(t *testing.T) {
|
func TestApplyStripsFields(t *testing.T) {
|
||||||
f := NewTestFieldManager(t)
|
f := NewTestFieldManager(t)
|
||||||
|
ti, _ := time.Parse(time.RFC3339, "2016-05-19T09:59:00Z")
|
||||||
|
|
||||||
obj := &corev1.Pod{
|
obj := &corev1.Pod{
|
||||||
ObjectMeta: metav1.ObjectMeta{
|
ObjectMeta: metav1.ObjectMeta{
|
||||||
Name: "a",
|
Name: "a",
|
||||||
Namespace: "a",
|
Namespace: "a",
|
||||||
CreationTimestamp: metav1.Time{Time: time.Now().UTC()},
|
CreationTimestamp: metav1.Time{Time: ti},
|
||||||
SelfLink: "a",
|
SelfLink: "a",
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
@@ -84,7 +87,7 @@ func TestApplyStripsFields(t *testing.T) {
|
|||||||
"metadata": {
|
"metadata": {
|
||||||
"name": "b",
|
"name": "b",
|
||||||
"namespace": "b",
|
"namespace": "b",
|
||||||
"creationTimestamp": "`+time.Now().UTC().Format(time.RFC3339)+`",
|
"creationTimestamp": "`+ti.Add(1*time.Minute).Format(time.RFC3339)+`",
|
||||||
"selfLink": "b",
|
"selfLink": "b",
|
||||||
"uid": "b",
|
"uid": "b",
|
||||||
"resourceVersion": "b"
|
"resourceVersion": "b"
|
||||||
@@ -137,4 +140,3 @@ func TestApplyDoesNotStripLabels(t *testing.T) {
|
|||||||
t.Fatalf("labels shouldn't get stripped on apply: %v", m)
|
t.Fatalf("labels shouldn't get stripped on apply: %v", m)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user