...
1 package chi
2
3 import "testing"
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 func TestRoutePattern(t *testing.T) {
23 routePatterns := []string{
24 "/v1/*",
25 "/resources/*",
26 "/{resource_id}",
27 }
28
29 x := &Context{
30 RoutePatterns: routePatterns,
31 }
32
33 if p := x.RoutePattern(); p != "/v1/resources/{resource_id}" {
34 t.Fatal("unexpected route pattern: " + p)
35 }
36
37 x.RoutePatterns = []string{
38 "/v1/*",
39 "/resources/*",
40
41 "/*",
42 "/{resource_id}",
43 }
44
45
46 if p := x.RoutePattern(); p != "/v1/resources/{resource_id}" {
47 t.Fatal("unexpected route pattern: " + p)
48 }
49
50 x.RoutePatterns = []string{
51 "/v1/*",
52 "/resources/*",
53
54 "/*",
55 "/*",
56 "/*",
57 "/{resource_id}/*",
58 }
59
60
61 if p := x.RoutePattern(); p != "/v1/resources/{resource_id}/*" {
62 t.Fatal("unexpected route pattern: " + p)
63 }
64
65 x.RoutePatterns = []string{
66 "/v1/*",
67 "/resources/*",
68
69 "/*special_path/*",
70 "/with_asterisks*/*",
71 "/{resource_id}",
72 }
73
74
75 if p := x.RoutePattern(); p != "/v1/resources/*special_path/with_asterisks*/{resource_id}" {
76 t.Fatal("unexpected route pattern: " + p)
77 }
78 }
79
View as plain text