File tree Expand file tree Collapse file tree 2 files changed +38
-0
lines changed
Expand file tree Collapse file tree 2 files changed +38
-0
lines changed Original file line number Diff line number Diff line change @@ -128,6 +128,12 @@ func buildParseQuery(req *MessageRequest) string {
128128 if req .Tag != "" {
129129 q += fmt .Sprintf ("&tag=%s" , req .Tag )
130130 }
131+ if req .Context != nil {
132+ b , _ := json .Marshal (req .Context )
133+ if b != nil {
134+ q += fmt .Sprintf ("&context=%s" , url .PathEscape (string (b )))
135+ }
136+ }
131137
132138 return q
133139}
Original file line number Diff line number Diff line change 66 "bytes"
77 "net/http"
88 "net/http/httptest"
9+ "net/url"
910 "reflect"
1011 "testing"
1112)
@@ -146,3 +147,34 @@ func TestSpeech(t *testing.T) {
146147 t .Fatalf ("expected \n \t msg %v \n \t got %v" , wantMessage , msg )
147148 }
148149}
150+
151+ func Test_buildParseQuery (t * testing.T ) {
152+ want := "?q=" + url .PathEscape ("hello world" ) +
153+ "&n=1&tag=tag" +
154+ "&context=" +
155+ url .PathEscape ("{" +
156+ "\" reference_time\" :\" 2014-10-30T12:18:45-07:00\" ," +
157+ "\" timezone\" :\" America/Los_Angeles\" ," +
158+ "\" locale\" :\" en_US\" ," +
159+ "\" coords\" :{\" lat\" :32.47104,\" long\" :-122.14703}" +
160+ "}" )
161+
162+ got := buildParseQuery (& MessageRequest {
163+ Query : "hello world" ,
164+ N : 1 ,
165+ Tag : "tag" ,
166+ Context : & MessageContext {
167+ Locale : "en_US" ,
168+ Coords : MessageCoords {
169+ Lat : 32.47104 ,
170+ Long : - 122.14703 ,
171+ },
172+ Timezone : "America/Los_Angeles" ,
173+ ReferenceTime : "2014-10-30T12:18:45-07:00" ,
174+ },
175+ })
176+
177+ if got != want {
178+ t .Fatalf ("expected \n \t query = %v \n \t got = %v" , want , got )
179+ }
180+ }
You can’t perform that action at this time.
0 commit comments