Skip to content

Commit

Permalink
add e2e test cases to cover sream route with sni
Browse files Browse the repository at this point in the history
Signed-off-by: mango <xu.weiKyrie@foxmail.com>
  • Loading branch information
mangoGoForward committed Nov 4, 2022
1 parent 78afcc1 commit dd48936
Showing 1 changed file with 65 additions and 0 deletions.
65 changes: 65 additions & 0 deletions test/e2e/suite-ingress/suite-ingress-resource/stream.go
Original file line number Diff line number Diff line change
Expand Up @@ -150,3 +150,68 @@ spec:
suites(scaffold.NewDefaultV2Scaffold())
})
})

var _ = ginkgo.Describe("suite-ingress-resource: ApisixRoute stream Testing SNI with v2", func() {
s := scaffold.NewDefaultV2Scaffold()

ginkgo.It("stream route with sni when set host", func() {
backendSvc, backendSvcPort := s.DefaultHTTPBackend()
apisixRoute := fmt.Sprintf(`
apiVersion: apisix.apache.org/v2
kind: ApisixRoute
metadata:
name: httpbin-tcp-route
spec:
stream:
- name: rule1
protocol: TCP
match:
ingressPort: 9100
host: a.test.com
backend:
serviceName: %s
servicePort: %d
`, backendSvc, backendSvcPort[0])

assert.Nil(ginkgo.GinkgoT(), s.CreateVersionedApisixResource(apisixRoute))

err := s.EnsureNumApisixStreamRoutesCreated(1)
assert.Nil(ginkgo.GinkgoT(), err, "Checking number of routes")

sr, err := s.ListApisixStreamRoutes()
assert.Nil(ginkgo.GinkgoT(), err)
assert.Len(ginkgo.GinkgoT(), sr, 1)
assert.Equal(ginkgo.GinkgoT(), sr[0].ServerPort, int32(9100))
assert.Equal(ginkgo.GinkgoT(), sr[0].SNI, "a.test.com")
})

ginkgo.It("no sni in stream route when not set host", func() {
backendSvc, backendSvcPort := s.DefaultHTTPBackend()
apisixRoute := fmt.Sprintf(`
apiVersion: apisix.apache.org/v2
kind: ApisixRoute
metadata:
name: httpbin-tcp-route
spec:
stream:
- name: rule1
protocol: TCP
match:
ingressPort: 9100
backend:
serviceName: %s
servicePort: %d
`, backendSvc, backendSvcPort[0])

assert.Nil(ginkgo.GinkgoT(), s.CreateVersionedApisixResource(apisixRoute))

err := s.EnsureNumApisixStreamRoutesCreated(1)
assert.Nil(ginkgo.GinkgoT(), err, "Checking number of routes")

sr, err := s.ListApisixStreamRoutes()
assert.Nil(ginkgo.GinkgoT(), err)
assert.Len(ginkgo.GinkgoT(), sr, 1)
assert.Equal(ginkgo.GinkgoT(), sr[0].ServerPort, int32(9100))
assert.Equal(ginkgo.GinkgoT(), sr[0].SNI, "")
})
})

0 comments on commit dd48936

Please sign in to comment.