2018-02-21 10:27:01 +01:00
|
|
|
package router_test
|
|
|
|
|
|
|
|
import (
|
|
|
|
"testing"
|
|
|
|
|
2019-10-25 00:27:02 +02:00
|
|
|
"github.com/kataras/iris/v12"
|
|
|
|
"github.com/kataras/iris/v12/context"
|
|
|
|
"github.com/kataras/iris/v12/httptest"
|
2018-02-21 10:27:01 +01:00
|
|
|
)
|
|
|
|
|
|
|
|
func TestRouteExists(t *testing.T) {
|
|
|
|
// build the api
|
|
|
|
app := iris.New()
|
|
|
|
emptyHandler := func(context.Context) {}
|
|
|
|
|
|
|
|
// setup the tested routes
|
|
|
|
app.Handle("GET", "/route-exists", emptyHandler)
|
|
|
|
app.Handle("POST", "/route-with-param/{param}", emptyHandler)
|
|
|
|
|
|
|
|
// check RouteExists
|
|
|
|
app.Handle("GET", "/route-test", func(ctx context.Context) {
|
|
|
|
if ctx.RouteExists("GET", "/route-not-exists") {
|
|
|
|
t.Error("Route with path should not exists")
|
|
|
|
}
|
|
|
|
|
|
|
|
if ctx.RouteExists("POST", "/route-exists") {
|
|
|
|
t.Error("Route with method should not exists")
|
|
|
|
}
|
|
|
|
|
|
|
|
if !ctx.RouteExists("GET", "/route-exists") {
|
|
|
|
t.Error("Route 1 should exists")
|
|
|
|
}
|
|
|
|
|
|
|
|
if !ctx.RouteExists("POST", "/route-with-param/a-param") {
|
|
|
|
t.Error("Route 2 should exists")
|
|
|
|
}
|
|
|
|
})
|
|
|
|
|
|
|
|
// run the tests
|
|
|
|
httptest.New(t, app, httptest.Debug(false)).Request("GET", "/route-test").Expect().Status(iris.StatusOK)
|
|
|
|
}
|