Skip to content

Commit

Permalink
test : getNetworkID
Browse files Browse the repository at this point in the history
  • Loading branch information
yorubad-dev committed Oct 19, 2023
1 parent ed517e1 commit 2a67eed
Showing 1 changed file with 96 additions and 0 deletions.
96 changes: 96 additions & 0 deletions pkg/openstack/loadbalancer_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -1754,3 +1754,99 @@ func TestBuildBatchUpdateMemberOpts(t *testing.T) {
})
}
}

func TestLbaasV2_getNetworkID(t *testing.T) {
lbaas := LbaasV2{
LoadBalancer: LoadBalancer{
opts: LoadBalancerOpts{
LBClasses: map[string]*LBClass{
"lbclassKey": {
NetworkID: "lb-class-network-id-1234",
},
},
NetworkID: "default-lb-class-networkId",
},
},
}

type testArg struct {
service *corev1.Service
}
tests := []struct {
name string
lbaas LbaasV2
arg testArg
want string
wantErr string
}{
{
name: "get network id from service annotation",
lbaas: LbaasV2{},
arg: testArg{
service: &corev1.Service{
ObjectMeta: v1.ObjectMeta{
Annotations: map[string]string{
ServiceAnnotationLoadBalancerNetworkID: "subnet-id",
},
},
},
},
want: "subnet-id",
wantErr: "",
},
{
name: "get network id from config class",
lbaas: lbaas,
arg: testArg{
service: &corev1.Service{
ObjectMeta: v1.ObjectMeta{
Annotations: map[string]string{
ServiceAnnotationLoadBalancerClass: "lbclassKey",
},
},
},
},
want: "lb-class-network-id-1234",
wantErr: "",
},
{
name: "get network id from default config",
lbaas: lbaas,
arg: testArg{
service: &corev1.Service{},
},
want: "default-lb-class-networkId",
wantErr: "",
},
{
name: "error when loadbalancer class not found",
lbaas: LbaasV2{},
arg: testArg{
service: &corev1.Service{
ObjectMeta: v1.ObjectMeta{
Annotations: map[string]string{
ServiceAnnotationLoadBalancerClass: "invalid-lb-class",
},
},
},
},
want: "",
wantErr: "invalid loadbalancer class \"invalid-lb-class\"",
},
}
for _, tt := range tests {
t.Run(tt.name, func(t *testing.T) {
lbaas := tt.lbaas

got, err := lbaas.getNetworkID(tt.arg.service, &serviceConfig{})

if tt.wantErr != "" {
assert.EqualError(t, err, tt.wantErr)
} else {
assert.NoError(t, err)
}

assert.Equal(t, tt.want, got)
})
}
}

0 comments on commit 2a67eed

Please sign in to comment.