Merge pull request #51544 from sttts/sttts-deepcopy-pkg-api

Automatic merge from submit-queue (batch tested with PRs 51228, 50185, 50940, 51544, 51543)

pkg/api: simplify deepcopy calls
This commit is contained in:
Kubernetes Submit Queue 2017-08-29 23:54:32 -07:00 committed by GitHub
commit 99a9ee5a3c
4 changed files with 7 additions and 35 deletions

View File

@ -50,12 +50,7 @@ func doDeepCopyTest(t *testing.T, kind schema.GroupVersionKind, f *fuzz.Fuzzer)
t.Fatalf("Could not create a %v: %s", kind, err)
}
f.Fuzz(item)
itemCopy, err := api.Scheme.DeepCopy(item)
if err != nil {
t.Errorf("Could not deep copy a %v: %s", kind, err)
return
}
itemCopy := item.DeepCopyObject()
if !reflect.DeepEqual(item, itemCopy) {
t.Errorf("\nexpected: %#v\n\ngot: %#v\n\ndiff: %v", item, itemCopy, diff.ObjectReflectDiff(item, itemCopy))
}

View File

@ -131,11 +131,7 @@ var benchmarkPod api.Pod = api.Pod{
func BenchmarkPodCopy(b *testing.B) {
var result *api.Pod
for i := 0; i < b.N; i++ {
obj, err := api.Scheme.DeepCopy(&benchmarkPod)
if err != nil {
b.Fatalf("Unexpected error copying pod: %v", err)
}
result = obj.(*api.Pod)
result = benchmarkPod.DeepCopy()
}
if !apiequality.Semantic.DeepEqual(benchmarkPod, *result) {
b.Fatalf("Incorrect copy: expected %v, got %v", benchmarkPod, *result)
@ -154,11 +150,7 @@ func BenchmarkNodeCopy(b *testing.B) {
var result *api.Node
for i := 0; i < b.N; i++ {
obj, err := api.Scheme.DeepCopy(&node)
if err != nil {
b.Fatalf("Unexpected error copying node: %v", err)
}
result = obj.(*api.Node)
result = node.DeepCopy()
}
if !apiequality.Semantic.DeepEqual(node, *result) {
b.Fatalf("Incorrect copy: expected %v, got %v", node, *result)
@ -177,11 +169,7 @@ func BenchmarkReplicationControllerCopy(b *testing.B) {
var result *api.ReplicationController
for i := 0; i < b.N; i++ {
obj, err := api.Scheme.DeepCopy(&replicationController)
if err != nil {
b.Fatalf("Unexpected error copying replication controller: %v", err)
}
result = obj.(*api.ReplicationController)
result = replicationController.DeepCopy()
}
if !apiequality.Semantic.DeepEqual(replicationController, *result) {
b.Fatalf("Incorrect copy: expected %v, got %v", replicationController, *result)

View File

@ -187,13 +187,10 @@ func TestDefaulting(t *testing.T) {
src.GetObjectKind().SetGroupVersionKind(schema.GroupVersionKind{})
original, err := scheme.DeepCopy(src)
if err != nil {
t.Fatal(err)
}
original := src.DeepCopyObject()
// get internal
withDefaults, _ := scheme.DeepCopy(src)
withDefaults := src.DeepCopyObject()
scheme.Default(withDefaults.(runtime.Object))
if !reflect.DeepEqual(original, withDefaults) {

View File

@ -123,15 +123,7 @@ func ExtractResourceValueByContainerNameAndNodeAllocatable(copier deepCopier, fs
return "", err
}
containerCopy, err := copier.DeepCopy(realContainer)
if err != nil {
return "", fmt.Errorf("failed to perform a deep copy of container object: %v", err)
}
container, ok := containerCopy.(*v1.Container)
if !ok {
return "", fmt.Errorf("unexpected type returned from deep copy of container object")
}
container := realContainer.DeepCopy()
MergeContainerResourceLimits(container, nodeAllocatable)