Skip to content

Commit 73f8297

Browse files
committed
Add EnsureTcpRoute test
1 parent 107bab6 commit 73f8297

File tree

1 file changed

+92
-0
lines changed

1 file changed

+92
-0
lines changed

e2e/tcproute_test.go

Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -728,6 +728,98 @@ func TestMeshWithMultipleTCPRoutes(t *testing.T) {
728728
}
729729
}
730730

731+
func TestEnsureTcpRoute(t *testing.T) {
732+
t.Parallel()
733+
ctx := context.Background()
734+
graphBuilder := rgraph.NewBuilder()
735+
resUniqueIdPart := "ensure-tcpr"
736+
meshURL, meshKey := ensureMesh(ctx, t, resUniqueIdPart+"-mesh")
737+
738+
t.Cleanup(func() {
739+
err := theCloud.Meshes().Delete(ctx, meshKey)
740+
t.Logf("theCloud.Meshes().Delete(ctx, %s): %v", meshKey, err)
741+
})
742+
743+
hcs, err := createHealthchecks(graphBuilder, 6, resUniqueIdPart)
744+
if err != nil {
745+
t.Fatalf("createHealthchecks(_, 6, %s) = (_, %v), want (_, nil)", resUniqueIdPart, err)
746+
}
747+
748+
bss, err := createBackendServicesWithHC(graphBuilder, 6, resUniqueIdPart, hcs)
749+
if err != nil {
750+
t.Fatalf("createBackendServicesWithHC(_, 6, %s) = (_, %v), want (_, nil)", resUniqueIdPart, err)
751+
}
752+
753+
tcprs, err := createTCPRoutes(t, graphBuilder, 3, resUniqueIdPart, meshURL, bss)
754+
755+
graph, err := graphBuilder.Build()
756+
if err != nil {
757+
t.Fatalf("graphBuilder.Build() = %v, want nil", err)
758+
}
759+
760+
expectedActions := []exec.ActionMetadata{
761+
{Type: exec.ActionTypeCreate, Name: actionName(exec.ActionTypeCreate, bss[0])},
762+
{Type: exec.ActionTypeCreate, Name: actionName(exec.ActionTypeCreate, bss[1])},
763+
{Type: exec.ActionTypeCreate, Name: actionName(exec.ActionTypeCreate, bss[2])},
764+
{Type: exec.ActionTypeCreate, Name: actionName(exec.ActionTypeCreate, bss[3])},
765+
{Type: exec.ActionTypeCreate, Name: actionName(exec.ActionTypeCreate, bss[4])},
766+
{Type: exec.ActionTypeCreate, Name: actionName(exec.ActionTypeCreate, bss[5])},
767+
{Type: exec.ActionTypeCreate, Name: actionName(exec.ActionTypeCreate, hcs[0])},
768+
{Type: exec.ActionTypeCreate, Name: actionName(exec.ActionTypeCreate, hcs[1])},
769+
{Type: exec.ActionTypeCreate, Name: actionName(exec.ActionTypeCreate, hcs[2])},
770+
{Type: exec.ActionTypeCreate, Name: actionName(exec.ActionTypeCreate, hcs[3])},
771+
{Type: exec.ActionTypeCreate, Name: actionName(exec.ActionTypeCreate, hcs[4])},
772+
{Type: exec.ActionTypeCreate, Name: actionName(exec.ActionTypeCreate, hcs[5])},
773+
{Type: exec.ActionTypeCreate, Name: actionName(exec.ActionTypeCreate, tcprs[0])},
774+
{Type: exec.ActionTypeCreate, Name: actionName(exec.ActionTypeCreate, tcprs[1])},
775+
{Type: exec.ActionTypeCreate, Name: actionName(exec.ActionTypeCreate, tcprs[2])},
776+
}
777+
778+
result, err := plan.Do(ctx, theCloud, graph)
779+
if err != nil {
780+
t.Fatalf("plan.Do(_, _, _) = %v, want nil", err)
781+
}
782+
783+
t.Logf("\nPlan.Actions: %v", result.Actions)
784+
t.Logf("\nPlan.Got: %v", result.Got)
785+
t.Logf("\nPlan.Want: %v", result.Want)
786+
787+
processGraphAndExpectActions(t, graphBuilder, expectedActions)
788+
789+
expectedActions = []exec.ActionMetadata{
790+
{Type: exec.ActionTypeMeta, Name: eventName(bss[0])},
791+
{Type: exec.ActionTypeMeta, Name: eventName(bss[1])},
792+
{Type: exec.ActionTypeMeta, Name: eventName(bss[2])},
793+
{Type: exec.ActionTypeMeta, Name: eventName(bss[3])},
794+
{Type: exec.ActionTypeMeta, Name: eventName(bss[4])},
795+
{Type: exec.ActionTypeMeta, Name: eventName(bss[5])},
796+
{Type: exec.ActionTypeMeta, Name: eventName(hcs[0])},
797+
{Type: exec.ActionTypeMeta, Name: eventName(hcs[1])},
798+
{Type: exec.ActionTypeMeta, Name: eventName(hcs[2])},
799+
{Type: exec.ActionTypeMeta, Name: eventName(hcs[3])},
800+
{Type: exec.ActionTypeMeta, Name: eventName(hcs[4])},
801+
{Type: exec.ActionTypeMeta, Name: eventName(hcs[5])},
802+
{Type: exec.ActionTypeMeta, Name: eventName(tcprs[0])},
803+
{Type: exec.ActionTypeMeta, Name: eventName(tcprs[1])},
804+
{Type: exec.ActionTypeMeta, Name: eventName(tcprs[2])},
805+
}
806+
807+
result, err = plan.Do(ctx, theCloud, graph)
808+
if err != nil {
809+
t.Fatalf("plan.Do(_, _, _) = %v, want nil", err)
810+
}
811+
812+
t.Logf("\nPlan.Actions: %v", result.Actions)
813+
t.Logf("\nPlan.Got: %v", result.Got)
814+
t.Logf("\nPlan.Want: %v", result.Want)
815+
816+
err = expectActions(result.Actions, expectedActions)
817+
if err != nil {
818+
t.Fatalf("expectActions(_, _) = %v, want nil", err)
819+
}
820+
821+
}
822+
731823
func TestTcpRouteDeletion(t *testing.T) {
732824
t.Parallel()
733825
ctx := context.Background()

0 commit comments

Comments
 (0)