1
0
Fork 0

Foxx: Adjusted to the format of Swagger's parameters

This commit is contained in:
Lucas Dohmen 2013-03-27 13:03:32 +01:00
parent fb4a223cb0
commit ee0278dcad
2 changed files with 26 additions and 26 deletions

View File

@ -247,11 +247,11 @@ function DocumentationAndConstraintsSpec () {
assertEqual(routes.length, 1);
assertEqual(routes[0].url.constraint.id, "/[0-9]+/");
assertEqual(routes[0].docs.parameters.id.paramType, "path");
assertEqual(routes[0].docs.parameters.id.name, "id");
assertEqual(routes[0].docs.parameters.id.description, "Id of the Foxx");
assertEqual(routes[0].docs.parameters.id.dataType, "int");
assertEqual(routes[0].docs.parameters.id.required, true);
assertEqual(routes[0].docs.parameters[0].paramType, "path");
assertEqual(routes[0].docs.parameters[0].name, "id");
assertEqual(routes[0].docs.parameters[0].description, "Id of the Foxx");
assertEqual(routes[0].docs.parameters[0].dataType, "int");
assertEqual(routes[0].docs.parameters[0].required, true);
},
testDefineMultiplePathParams: function () {
@ -268,18 +268,18 @@ function DocumentationAndConstraintsSpec () {
assertEqual(routes.length, 1);
assertEqual(routes[0].url.constraint.foxx, "/.+/");
assertEqual(routes[0].docs.parameters.foxx.paramType, "path");
assertEqual(routes[0].docs.parameters.foxx.name, "foxx");
assertEqual(routes[0].docs.parameters.foxx.description, "Kind of Foxx");
assertEqual(routes[0].docs.parameters.foxx.dataType, "string");
assertEqual(routes[0].docs.parameters.foxx.required, true);
assertEqual(routes[0].docs.parameters[0].paramType, "path");
assertEqual(routes[0].docs.parameters[0].name, "foxx");
assertEqual(routes[0].docs.parameters[0].description, "Kind of Foxx");
assertEqual(routes[0].docs.parameters[0].dataType, "string");
assertEqual(routes[0].docs.parameters[0].required, true);
assertEqual(routes[0].url.constraint.id, "/[0-9]+/");
assertEqual(routes[0].docs.parameters.id.paramType, "path");
assertEqual(routes[0].docs.parameters.id.name, "id");
assertEqual(routes[0].docs.parameters.id.description, "Id of the Foxx");
assertEqual(routes[0].docs.parameters.id.dataType, "int");
assertEqual(routes[0].docs.parameters.id.required, true);
assertEqual(routes[0].docs.parameters[1].paramType, "path");
assertEqual(routes[0].docs.parameters[1].name, "id");
assertEqual(routes[0].docs.parameters[1].description, "Id of the Foxx");
assertEqual(routes[0].docs.parameters[1].dataType, "int");
assertEqual(routes[0].docs.parameters[1].required, true);
},
testDefineQueryParam: function () {
@ -293,12 +293,12 @@ function DocumentationAndConstraintsSpec () {
});
assertEqual(routes.length, 1);
assertEqual(routes[0].docs.parameters.a.paramType, "query");
assertEqual(routes[0].docs.parameters.a.name, "a");
assertEqual(routes[0].docs.parameters.a.description, "The value of an a");
assertEqual(routes[0].docs.parameters.a.dataType, "int");
assertEqual(routes[0].docs.parameters.a.required, false);
assertEqual(routes[0].docs.parameters.a.allowMultiple, true);
assertEqual(routes[0].docs.parameters[0].paramType, "query");
assertEqual(routes[0].docs.parameters[0].name, "a");
assertEqual(routes[0].docs.parameters[0].description, "The value of an a");
assertEqual(routes[0].docs.parameters[0].dataType, "int");
assertEqual(routes[0].docs.parameters[0].required, false);
assertEqual(routes[0].docs.parameters[0].allowMultiple, true);
},
testDefineMetaData: function () {

View File

@ -177,7 +177,7 @@ _.extend(FoxxApplication.prototype, {
callback: String(callback)
},
docs: {
parameters: {},
parameters: [],
errorResponses: [],
httpMethod: method.toUpperCase()
}
@ -447,13 +447,13 @@ _.extend(RequestContext.prototype, {
constraint[paramName] = this.typeToRegex[attributes.dataType];
this.route.url = internal.createUrlObject(url.match, constraint, url.methods[0]);
this.route.docs.parameters[paramName] = {
this.route.docs.parameters.push({
paramType: "path",
name: paramName,
description: attributes.description,
dataType: attributes.dataType,
required: true
};
});
return this;
},
@ -485,14 +485,14 @@ _.extend(RequestContext.prototype, {
queryParam: function (paramName, attributes) {
'use strict';
this.route.docs.parameters[paramName] = {
this.route.docs.parameters.push({
paramType: "query",
name: paramName,
description: attributes.description,
dataType: attributes.dataType,
required: attributes.required,
allowMultiple: attributes.allowMultiple
};
});
return this;
},