github.com/Kong/go-pdk@v0.11.0/router/router_test.go (about) 1 package router 2 3 import ( 4 "testing" 5 6 "github.com/Kong/go-pdk/bridge" 7 "github.com/Kong/go-pdk/bridge/bridgetest" 8 "github.com/Kong/go-pdk/entities" 9 "github.com/Kong/go-pdk/server/kong_plugin_protocol" 10 "github.com/stretchr/testify/assert" 11 ) 12 13 func TestRouter(t *testing.T) { 14 router := Router{bridge.New(bridgetest.Mock(t, []bridgetest.MockStep{ 15 {Method: "kong.router.get_route", Ret: &kong_plugin_protocol.Route{ 16 Id: "001:002", 17 Name: "route_66", 18 Protocols: []string{"http", "tcp"}, 19 Paths: []string{"/v0/left", "/v1/this"}, 20 }}, 21 {Method: "kong.router.get_service", Ret: &kong_plugin_protocol.Service{ 22 Id: "003:004", 23 Name: "self_service", 24 Protocol: "http", 25 Path: "/v0/left", 26 }}, 27 }))} 28 29 ret_r, err := router.GetRoute() 30 assert.NoError(t, err) 31 assert.Equal(t, entities.Route{ 32 Id: "001:002", 33 Name: "route_66", 34 Protocols: []string{"http", "tcp"}, 35 Paths: []string{"/v0/left", "/v1/this"}, 36 }, ret_r) 37 38 ret_s, err := router.GetService() 39 assert.NoError(t, err) 40 assert.Equal(t, entities.Service{ 41 Id: "003:004", 42 Name: "self_service", 43 Protocol: "http", 44 Path: "/v0/left", 45 }, ret_s) 46 }