about summary refs log tree commit diff
path: root/request_test.go
blob: 9062e7881d0757cf26cb0c8737c01aab2a41a023 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
package mooh

import (
	"net/http"
	"net/url"
	"testing"
	"regexp"
)

func testRequestRoute(req *Request) (Response, error) {
	resp := Response{}
	return resp, nil
}

func buildRouter() Router {
	router := BuildRouter()
	router.AddRoute(&Route{
		Method: "GET",
		Path:   "/foo/:bar",
		Code:   testRequestRoute,
		Validations: map[string]*regexp.Regexp{
			"bar": regexp.MustCompile("\\w+"),
		},
	})
	return router
}

func TestBasicRequest(t *testing.T) {
	router := buildRouter()
	t.Log(router.routes[0].components)
	r := &http.Request{Method: "GET", URL: &url.URL{Path: "/foo/bar"}}
	m, _ := router.Match(r)
	request := NewRequest(r, m)

	if request == nil {
		t.Fatal()
	}
	if p := request.RouteParam("bar"); p != "bar" {
		t.Fatal()
	}
}