172 lines
3.5 KiB
Go
172 lines
3.5 KiB
Go
package detector
|
|
|
|
import (
|
|
"testing"
|
|
|
|
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
|
|
|
policyv1alpha1 "github.com/karmada-io/karmada/pkg/apis/policy/v1alpha1"
|
|
)
|
|
|
|
func Test_GetHigherPriorityPropagationPolicy(t *testing.T) {
|
|
type args struct {
|
|
a *policyv1alpha1.PropagationPolicy
|
|
b *policyv1alpha1.PropagationPolicy
|
|
}
|
|
tests := []struct {
|
|
name string
|
|
args args
|
|
want *policyv1alpha1.PropagationPolicy
|
|
}{
|
|
{
|
|
name: "Test 1",
|
|
args: args{
|
|
a: &policyv1alpha1.PropagationPolicy{
|
|
ObjectMeta: metav1.ObjectMeta{
|
|
Name: "A",
|
|
},
|
|
},
|
|
b: &policyv1alpha1.PropagationPolicy{
|
|
ObjectMeta: metav1.ObjectMeta{
|
|
Name: "B",
|
|
},
|
|
},
|
|
},
|
|
want: &policyv1alpha1.PropagationPolicy{
|
|
ObjectMeta: metav1.ObjectMeta{
|
|
Name: "A",
|
|
},
|
|
},
|
|
},
|
|
{
|
|
name: "Test 2",
|
|
args: args{
|
|
a: &policyv1alpha1.PropagationPolicy{
|
|
ObjectMeta: metav1.ObjectMeta{
|
|
Name: "abc",
|
|
},
|
|
},
|
|
b: &policyv1alpha1.PropagationPolicy{
|
|
ObjectMeta: metav1.ObjectMeta{
|
|
Name: "ab",
|
|
},
|
|
},
|
|
},
|
|
want: &policyv1alpha1.PropagationPolicy{
|
|
ObjectMeta: metav1.ObjectMeta{
|
|
Name: "ab",
|
|
},
|
|
},
|
|
},
|
|
{
|
|
name: "Test 3",
|
|
args: args{
|
|
a: &policyv1alpha1.PropagationPolicy{
|
|
ObjectMeta: metav1.ObjectMeta{
|
|
Name: "",
|
|
},
|
|
},
|
|
b: &policyv1alpha1.PropagationPolicy{
|
|
ObjectMeta: metav1.ObjectMeta{
|
|
Name: "ab",
|
|
},
|
|
},
|
|
},
|
|
want: &policyv1alpha1.PropagationPolicy{
|
|
ObjectMeta: metav1.ObjectMeta{
|
|
Name: "",
|
|
},
|
|
},
|
|
},
|
|
}
|
|
for _, tt := range tests {
|
|
t.Run(tt.name, func(t *testing.T) {
|
|
result := GetHigherPriorityPropagationPolicy(tt.args.a, tt.args.b)
|
|
if result.Name != tt.want.Name {
|
|
t.Errorf("GetHigherPriorityPropagationPolicy() got = %v, want %v", result.Name, tt.want.Name)
|
|
}
|
|
})
|
|
}
|
|
}
|
|
|
|
func Test_GetHigherPriorityClusterPropagationPolicy(t *testing.T) {
|
|
type args struct {
|
|
a *policyv1alpha1.ClusterPropagationPolicy
|
|
b *policyv1alpha1.ClusterPropagationPolicy
|
|
}
|
|
tests := []struct {
|
|
name string
|
|
args args
|
|
want *policyv1alpha1.ClusterPropagationPolicy
|
|
}{
|
|
{
|
|
name: "Test 1",
|
|
args: args{
|
|
a: &policyv1alpha1.ClusterPropagationPolicy{
|
|
ObjectMeta: metav1.ObjectMeta{
|
|
Name: "A",
|
|
},
|
|
},
|
|
b: &policyv1alpha1.ClusterPropagationPolicy{
|
|
ObjectMeta: metav1.ObjectMeta{
|
|
Name: "B",
|
|
},
|
|
},
|
|
},
|
|
want: &policyv1alpha1.ClusterPropagationPolicy{
|
|
ObjectMeta: metav1.ObjectMeta{
|
|
Name: "A",
|
|
},
|
|
},
|
|
},
|
|
{
|
|
name: "Test 2",
|
|
args: args{
|
|
a: &policyv1alpha1.ClusterPropagationPolicy{
|
|
ObjectMeta: metav1.ObjectMeta{
|
|
Name: "abc",
|
|
},
|
|
},
|
|
b: &policyv1alpha1.ClusterPropagationPolicy{
|
|
ObjectMeta: metav1.ObjectMeta{
|
|
Name: "ab",
|
|
},
|
|
},
|
|
},
|
|
want: &policyv1alpha1.ClusterPropagationPolicy{
|
|
ObjectMeta: metav1.ObjectMeta{
|
|
Name: "ab",
|
|
},
|
|
},
|
|
},
|
|
{
|
|
name: "Test 3",
|
|
args: args{
|
|
a: &policyv1alpha1.ClusterPropagationPolicy{
|
|
ObjectMeta: metav1.ObjectMeta{
|
|
Name: "",
|
|
},
|
|
},
|
|
b: &policyv1alpha1.ClusterPropagationPolicy{
|
|
ObjectMeta: metav1.ObjectMeta{
|
|
Name: "ab",
|
|
},
|
|
},
|
|
},
|
|
want: &policyv1alpha1.ClusterPropagationPolicy{
|
|
ObjectMeta: metav1.ObjectMeta{
|
|
Name: "",
|
|
},
|
|
},
|
|
},
|
|
}
|
|
for _, tt := range tests {
|
|
t.Run(tt.name, func(t *testing.T) {
|
|
result := GetHigherPriorityClusterPropagationPolicy(tt.args.a, tt.args.b)
|
|
if result.Name != tt.want.Name {
|
|
t.Errorf("GetHigherPriorityClusterPropagationPolicy() got = %v, want %v", result.Name, tt.want.Name)
|
|
}
|
|
})
|
|
}
|
|
}
|