diff --git a/apps/dashboard/pkg/apis/dashboard/v0alpha1/dashboard_object_gen.go b/apps/dashboard/pkg/apis/dashboard/v0alpha1/dashboard_object_gen.go index ab406988c90..5e5643192a6 100644 --- a/apps/dashboard/pkg/apis/dashboard/v0alpha1/dashboard_object_gen.go +++ b/apps/dashboard/pkg/apis/dashboard/v0alpha1/dashboard_object_gen.go @@ -219,7 +219,7 @@ func (o *Dashboard) Copy() resource.Object { } func (o *Dashboard) DeepCopyObject() runtime.Object { - return o.Copy() + return o.DeepCopy() } // Interface compliance compile-time check diff --git a/apps/dashboard/pkg/apis/dashboard/v1alpha1/dashboard_object_gen.go b/apps/dashboard/pkg/apis/dashboard/v1alpha1/dashboard_object_gen.go index cdf11cabbd0..8d45c64fc1a 100644 --- a/apps/dashboard/pkg/apis/dashboard/v1alpha1/dashboard_object_gen.go +++ b/apps/dashboard/pkg/apis/dashboard/v1alpha1/dashboard_object_gen.go @@ -219,7 +219,7 @@ func (o *Dashboard) Copy() resource.Object { } func (o *Dashboard) DeepCopyObject() runtime.Object { - return o.Copy() + return o.DeepCopy() } // Interface compliance compile-time check diff --git a/apps/dashboard/pkg/apis/dashboard/v2alpha1/dashboard_object_gen.go b/apps/dashboard/pkg/apis/dashboard/v2alpha1/dashboard_object_gen.go index 504dc5a25f1..5b59fbd93aa 100644 --- a/apps/dashboard/pkg/apis/dashboard/v2alpha1/dashboard_object_gen.go +++ b/apps/dashboard/pkg/apis/dashboard/v2alpha1/dashboard_object_gen.go @@ -219,7 +219,7 @@ func (o *Dashboard) Copy() resource.Object { } func (o *Dashboard) DeepCopyObject() runtime.Object { - return o.Copy() + return o.DeepCopy() } // Interface compliance compile-time check diff --git a/apps/dashboard/pkg/migration/conversion/conversion_test.go b/apps/dashboard/pkg/migration/conversion/conversion_test.go index 23cbd9fc2ba..c77afd78e1f 100644 --- a/apps/dashboard/pkg/migration/conversion/conversion_test.go +++ b/apps/dashboard/pkg/migration/conversion/conversion_test.go @@ -45,3 +45,20 @@ func TestConversionMatrixExist(t *testing.T) { }) } } + +func TestDeepCopyValid(t *testing.T) { + dash1 := &v0alpha1.Dashboard{} + meta1, err := utils.MetaAccessor(dash1) + require.NoError(t, err) + meta1.SetFolder("f1") + require.Equal(t, "f1", dash1.Annotations[utils.AnnoKeyFolder]) + + dash1Copy := dash1.DeepCopyObject() + metaCopy, err := utils.MetaAccessor(dash1Copy) + require.NoError(t, err) + require.Equal(t, "f1", metaCopy.GetFolder()) + + // Changing a property on the copy should not effect the original + metaCopy.SetFolder("XYZ") + require.Equal(t, "f1", meta1.GetFolder()) // 💣💣💣 +}