@@ -120,35 +120,36 @@ func TestRuleMatcher_GetTargetValue(t *testing.T) {
120
120
_ = mem .Set (context .Background (), req .CountID (), 2 )
121
121
122
122
var route = & cfg.Route {
123
- Method : "GET" ,
124
- Path : "/api/:object/:action" ,
123
+ Path : "/api/:object/:action" ,
125
124
}
126
125
127
126
tests := []struct {
127
+ route * cfg.Route
128
128
request * http.Request
129
129
rule * cfg.Rule
130
130
expectedValue string
131
131
}{
132
- {newHTTPRequest (), & cfg.Rule {Target : cfg .Header , Modifier : "Authorization" }, "Bearer 123" },
133
- {newHTTPRequest (), & cfg.Rule {Target : cfg .Header , Modifier : "Random" }, "" },
134
- {newHTTPRequest (), & cfg.Rule {Target : cfg .Cookie , Modifier : "Token" }, "Token 123" },
135
- {newHTTPRequest (), & cfg.Rule {Target : cfg .Cookie , Modifier : "Random" }, "" },
136
- {newHTTPRequest (), & cfg.Rule {Target : cfg .QueryString , Modifier : "name" }, "joe" },
137
- {newHTTPRequest (), & cfg.Rule {Target : cfg .QueryString , Modifier : "Random" }, "" },
138
- {newHTTPRequest (), & cfg.Rule {Target : cfg .Body , Modifier : ".name" }, "joe" },
139
- {newHTTPRequest (), & cfg.Rule {Target : cfg .Body , Modifier : "" }, `{"name": "joe","address": { "street": "123 Road", "postcode": "2234" }}` },
140
- {newHTTPRequest (), & cfg.Rule {Target : cfg .Body , Modifier : ".address.postcode" }, "2234" },
141
- {newHTTPRequest (), & cfg.Rule {Target : cfg .Body , Modifier : ".address.random" }, "" },
142
- {newHTTPRequest (), & cfg.Rule {Target : cfg .RouteParam , Modifier : "object" }, "person" },
143
- {newHTTPRequest (), & cfg.Rule {Target : cfg .RouteParam , Modifier : "action" }, "detail" },
144
- {newHTTPRequest (), & cfg.Rule {Target : cfg .RouteParam , Modifier : "random" }, "" },
145
- {newHTTPRequest (), & cfg.Rule {Target : cfg .RequestNumber }, "2" },
146
- {newHTTPRequest (), & cfg.Rule {Target : cfg .Target ("random target" )}, "" },
132
+ {route , newHTTPRequest (), & cfg.Rule {Target : cfg .Header , Modifier : "Authorization" }, "Bearer 123" },
133
+ {route , newHTTPRequest (), & cfg.Rule {Target : cfg .Header , Modifier : "Random" }, "" },
134
+ {route , newHTTPRequest (), & cfg.Rule {Target : cfg .Cookie , Modifier : "Token" }, "Token 123" },
135
+ {route , newHTTPRequest (), & cfg.Rule {Target : cfg .Cookie , Modifier : "Random" }, "" },
136
+ {route , newHTTPRequest (), & cfg.Rule {Target : cfg .QueryString , Modifier : "name" }, "joe" },
137
+ {route , newHTTPRequest (), & cfg.Rule {Target : cfg .QueryString , Modifier : "Random" }, "" },
138
+ {route , newHTTPRequest (), & cfg.Rule {Target : cfg .Body , Modifier : ".name" }, "joe" },
139
+ {route , newHTTPRequest (), & cfg.Rule {Target : cfg .Body , Modifier : "" }, `{"name": "joe","address": { "street": "123 Road", "postcode": "2234" }}` },
140
+ {route , newHTTPRequest (), & cfg.Rule {Target : cfg .Body , Modifier : ".address.postcode" }, "2234" },
141
+ {route , newHTTPRequest (), & cfg.Rule {Target : cfg .Body , Modifier : ".address.random" }, "" },
142
+ {route , newHTTPRequest (), & cfg.Rule {Target : cfg .RouteParam , Modifier : "object" }, "person" },
143
+ {route , newHTTPRequest (), & cfg.Rule {Target : cfg .RouteParam , Modifier : "action" }, "detail" },
144
+ {route , newHTTPRequest (), & cfg.Rule {Target : cfg .RouteParam , Modifier : "random" }, "" },
145
+ {& cfg.Route {Path : "/api/:object/:action/:something" }, newHTTPRequest (), & cfg.Rule {Target : cfg .RouteParam , Modifier : "random" }, "" },
146
+ {route , newHTTPRequest (), & cfg.Rule {Target : cfg .RequestNumber }, "2" },
147
+ {route , newHTTPRequest (), & cfg.Rule {Target : cfg .Target ("random target" )}, "" },
147
148
}
148
149
149
150
for _ , tt := range tests {
150
151
t .Run (fmt .Sprintf ("Target: %v, Modifier: %v" , tt .rule .Target , tt .rule .Modifier ), func (t * testing.T ) {
151
- actual , err := matcher .NewRuleMatcher (route , tt .rule , matcher.Context {
152
+ actual , err := matcher .NewRuleMatcher (tt . route , tt .rule , matcher.Context {
152
153
HTTPRequest : tt .request ,
153
154
SessionID : sessionID ,
154
155
}, mem ).GetTargetValue ()
0 commit comments