Skip to content

Commit 3a5d8a5

Browse files
authored
Add routegroup to test cases to make them useful (#705)
* add routegroup to test cases to make them useful * extend test cases further to actually make them fail for the right reason * add more variation to uncover need for code change
1 parent 735edd3 commit 3a5d8a5

File tree

2 files changed

+69
-2
lines changed

2 files changed

+69
-2
lines changed

pkg/core/stackset_test.go

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -751,6 +751,15 @@ func TestStackUpdateFromResources(t *testing.T) {
751751
},
752752
}
753753
}
754+
routegroup := func(stackGeneration int64) *rgv1.RouteGroup {
755+
return &rgv1.RouteGroup{
756+
ObjectMeta: metav1.ObjectMeta{
757+
Annotations: map[string]string{
758+
stackGenerationAnnotationKey: strconv.FormatInt(stackGeneration, 10),
759+
},
760+
},
761+
}
762+
}
754763
hpa := func(stackGeneration int64) *autoscaling.HorizontalPodAutoscaler {
755764
return &autoscaling.HorizontalPodAutoscaler{
756765
ObjectMeta: metav1.ObjectMeta{
@@ -855,6 +864,7 @@ func TestStackUpdateFromResources(t *testing.T) {
855864
container.Resources.Deployment = deployment(11, 5, 5)
856865
container.Resources.Service = service(11)
857866
container.Resources.Ingress = ingress(10)
867+
container.Resources.IngressSegment = ingress(11)
858868
container.updateFromResources()
859869
require.EqualValues(t, false, container.resourcesUpdated)
860870
})
@@ -866,6 +876,60 @@ func TestStackUpdateFromResources(t *testing.T) {
866876
container.updateFromResources()
867877
require.EqualValues(t, false, container.resourcesUpdated)
868878
})
879+
runTest("ingress segment isn't considered updated if the generation is different", func(t *testing.T, container *StackContainer) {
880+
container.Stack.Generation = 11
881+
container.ingressSpec = &zv1.StackSetIngressSpec{}
882+
container.Resources.Deployment = deployment(11, 5, 5)
883+
container.Resources.Service = service(11)
884+
container.Resources.Ingress = ingress(11)
885+
container.Resources.IngressSegment = ingress(10)
886+
container.updateFromResources()
887+
require.EqualValues(t, false, container.resourcesUpdated)
888+
})
889+
runTest("ingress segment isn't considered updated if it should be gone", func(t *testing.T, container *StackContainer) {
890+
container.Stack.Generation = 11
891+
container.Resources.Deployment = deployment(11, 5, 5)
892+
container.Resources.Service = service(11)
893+
container.Resources.IngressSegment = ingress(11)
894+
container.updateFromResources()
895+
require.EqualValues(t, false, container.resourcesUpdated)
896+
})
897+
runTest("routegroup isn't considered updated if the generation is different", func(t *testing.T, container *StackContainer) {
898+
container.Stack.Generation = 11
899+
container.routeGroupSpec = &zv1.RouteGroupSpec{}
900+
container.Resources.Deployment = deployment(11, 5, 5)
901+
container.Resources.Service = service(11)
902+
container.Resources.RouteGroup = routegroup(10)
903+
container.Resources.RouteGroupSegment = routegroup(11)
904+
container.updateFromResources()
905+
require.EqualValues(t, false, container.resourcesUpdated)
906+
})
907+
runTest("routegroup isn't considered updated if it should be gone", func(t *testing.T, container *StackContainer) {
908+
container.Stack.Generation = 11
909+
container.Resources.Deployment = deployment(11, 5, 5)
910+
container.Resources.Service = service(11)
911+
container.Resources.RouteGroup = routegroup(11)
912+
container.updateFromResources()
913+
require.EqualValues(t, false, container.resourcesUpdated)
914+
})
915+
runTest("routegroup segment isn't considered updated if the generation is different", func(t *testing.T, container *StackContainer) {
916+
container.Stack.Generation = 11
917+
container.routeGroupSpec = &zv1.RouteGroupSpec{}
918+
container.Resources.Deployment = deployment(11, 5, 5)
919+
container.Resources.Service = service(11)
920+
container.Resources.RouteGroup = routegroup(11)
921+
container.Resources.RouteGroupSegment = routegroup(10)
922+
container.updateFromResources()
923+
require.EqualValues(t, false, container.resourcesUpdated)
924+
})
925+
runTest("routegroup segment isn't considered updated if it should be gone", func(t *testing.T, container *StackContainer) {
926+
container.Stack.Generation = 11
927+
container.Resources.Deployment = deployment(11, 5, 5)
928+
container.Resources.Service = service(11)
929+
container.Resources.RouteGroupSegment = routegroup(11)
930+
container.updateFromResources()
931+
require.EqualValues(t, false, container.resourcesUpdated)
932+
})
869933

870934
runTest("hpa isn't considered updated if the generation is different", func(t *testing.T, container *StackContainer) {
871935
container.Stack.Generation = 11
@@ -903,11 +967,14 @@ func TestStackUpdateFromResources(t *testing.T) {
903967
runTest("resources are recognised as updated correctly (all resources)", func(t *testing.T, container *StackContainer) {
904968
container.Stack.Generation = 11
905969
container.ingressSpec = &zv1.StackSetIngressSpec{}
970+
container.routeGroupSpec = &zv1.RouteGroupSpec{}
906971
container.Stack.Spec.StackSpec.Autoscaler = &zv1.Autoscaler{}
907972
container.Resources.Deployment = deployment(11, 5, 5)
908973
container.Resources.Service = service(11)
909974
container.Resources.Ingress = ingress(11)
910975
container.Resources.IngressSegment = ingress(11)
976+
container.Resources.RouteGroup = routegroup(11)
977+
container.Resources.RouteGroupSegment = routegroup(11)
911978
container.Resources.HPA = hpa(11)
912979
container.updateFromResources()
913980
require.EqualValues(t, true, container.resourcesUpdated)

pkg/core/types.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -445,7 +445,7 @@ func (sc *StackContainer) updateFromResources() {
445445
} else {
446446
// ignore if ingress is not set
447447
ingressUpdated = sc.Resources.Ingress == nil
448-
ingressSegmentUpdated = sc.Resources.Ingress == nil
448+
ingressSegmentUpdated = sc.Resources.IngressSegment == nil
449449
}
450450

451451
// routegroup: ignore if routegroup is not set or check if we are up to date
@@ -459,7 +459,7 @@ func (sc *StackContainer) updateFromResources() {
459459
} else {
460460
// ignore if route group is not set
461461
routeGroupUpdated = sc.Resources.RouteGroup == nil
462-
routeGroupSegmentUpdated = sc.Resources.RouteGroup == nil
462+
routeGroupSegmentUpdated = sc.Resources.RouteGroupSegment == nil
463463
}
464464

465465
// hpa

0 commit comments

Comments
 (0)