(t *testing.T)
| 236 | type responses map[string]response |
| 237 | |
| 238 | func TestBuildOperation(t *testing.T) { |
| 239 | const svcName = "test service" |
| 240 | cases := []struct { |
| 241 | Name string |
| 242 | DSL func() |
| 243 | |
| 244 | ExpectedDescription string |
| 245 | ExpectedDeprecated bool |
| 246 | ExpectedParameters []param |
| 247 | ExpectedRequestBody *requestBody |
| 248 | ExpectedResponses map[string]response |
| 249 | }{{ |
| 250 | Name: "desc_only", |
| 251 | DSL: dsls.DescOnly(svcName, "desc_only", "desc"), |
| 252 | |
| 253 | ExpectedDescription: "desc", |
| 254 | ExpectedDeprecated: false, |
| 255 | ExpectedResponses: responses{"204": {Description: "No Content response."}}, |
| 256 | }, { |
| 257 | Name: "deprecated_only", |
| 258 | DSL: dsls.DeprecatedOnly(svcName, "deprecated_only"), |
| 259 | ExpectedDeprecated: true, |
| 260 | ExpectedResponses: responses{"204": {Description: "No Content response."}}, |
| 261 | }, { |
| 262 | Name: "request_string_body", |
| 263 | DSL: dsls.RequestStringBody(svcName, "request_string_body"), |
| 264 | |
| 265 | ExpectedDeprecated: false, |
| 266 | ExpectedRequestBody: &requestBody{"body", tstring, true}, |
| 267 | ExpectedResponses: responses{"204": {Description: "No Content response."}}, |
| 268 | }, { |
| 269 | Name: "request_object_body", |
| 270 | DSL: dsls.RequestObjectBody(svcName, "request_object_body"), |
| 271 | |
| 272 | ExpectedDeprecated: false, |
| 273 | ExpectedRequestBody: &requestBody{"", tobj("name", tstring), true}, |
| 274 | ExpectedResponses: responses{"204": {Description: "No Content response."}}, |
| 275 | }, { |
| 276 | Name: "request_streaming_string_body", |
| 277 | DSL: dsls.RequestObjectBody(svcName, "request_streaming_string_body"), |
| 278 | |
| 279 | ExpectedDeprecated: false, |
| 280 | ExpectedRequestBody: &requestBody{"", tobj("name", tstring), true}, |
| 281 | ExpectedResponses: responses{"204": {Description: "No Content response."}}, |
| 282 | }, { |
| 283 | Name: "request_map_params", |
| 284 | DSL: dsls.RequestMapParams(svcName, "request_map_params"), |
| 285 | |
| 286 | ExpectedDeprecated: false, |
| 287 | ExpectedParameters: []param{{Name: "param", In: "query", Description: "Query parameters", Style: "deepObject", Type: tobj()}}, |
| 288 | ExpectedResponses: responses{"204": {Description: "No Content response."}}, |
| 289 | }, { |
| 290 | Name: "response_array_of_string", |
| 291 | DSL: dsls.ResponseArrayOfString(svcName, "response_array_of_string"), |
| 292 | |
| 293 | ExpectedDeprecated: false, |
| 294 | ExpectedResponses: responses{"200": {"OK response.", tobj("result", tobj("children", tarray)), nil}}, |
| 295 | }, { |
nothing calls this directly
no test coverage detected