From 933ef25585f13a3129e2bb172fded6de381a9ae1 Mon Sep 17 00:00:00 2001 From: Adam Keys Date: Sat, 21 Jan 2017 02:33:41 -0500 Subject: [PATCH] Enum constructFromObject should return value When constructing an enum through constructFromObject the original value provided by the API response should be returned rather than extracting the value from the enum name. This resolves an issue where the constructed value is undefined when the name and value are not equivalent. --- .../main/resources/Javascript/partial_model_enum_class.mustache | 2 +- .../client/petstore/javascript-promise/src/model/EnumClass.js | 2 +- .../client/petstore/javascript-promise/src/model/OuterEnum.js | 2 +- samples/client/petstore/javascript/src/model/EnumClass.js | 2 +- samples/client/petstore/javascript/src/model/OuterEnum.js | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/modules/swagger-codegen/src/main/resources/Javascript/partial_model_enum_class.mustache b/modules/swagger-codegen/src/main/resources/Javascript/partial_model_enum_class.mustache index 39d34639916..f72afdd14d7 100644 --- a/modules/swagger-codegen/src/main/resources/Javascript/partial_model_enum_class.mustache +++ b/modules/swagger-codegen/src/main/resources/Javascript/partial_model_enum_class.mustache @@ -26,7 +26,7 @@ * @return {{=< >=}}{module:<#invokerPackage>/<#modelPackage>/}<={{ }}=> The enum {{classname}} value. */ exports.constructFromObject = function(object) { - return exports[object]; + return object; } return exports; diff --git a/samples/client/petstore/javascript-promise/src/model/EnumClass.js b/samples/client/petstore/javascript-promise/src/model/EnumClass.js index 1ad4876ebe0..20ab7dad1f7 100644 --- a/samples/client/petstore/javascript-promise/src/model/EnumClass.js +++ b/samples/client/petstore/javascript-promise/src/model/EnumClass.js @@ -57,7 +57,7 @@ * @return {module:model/EnumClass} The enum EnumClass value. */ exports.constructFromObject = function(object) { - return exports[object]; + return object; } return exports; diff --git a/samples/client/petstore/javascript-promise/src/model/OuterEnum.js b/samples/client/petstore/javascript-promise/src/model/OuterEnum.js index 8a31a9d87be..21da6b555e2 100644 --- a/samples/client/petstore/javascript-promise/src/model/OuterEnum.js +++ b/samples/client/petstore/javascript-promise/src/model/OuterEnum.js @@ -57,7 +57,7 @@ * @return {module:model/OuterEnum} The enum OuterEnum value. */ exports.constructFromObject = function(object) { - return exports[object]; + return object; } return exports; diff --git a/samples/client/petstore/javascript/src/model/EnumClass.js b/samples/client/petstore/javascript/src/model/EnumClass.js index 1ad4876ebe0..20ab7dad1f7 100644 --- a/samples/client/petstore/javascript/src/model/EnumClass.js +++ b/samples/client/petstore/javascript/src/model/EnumClass.js @@ -57,7 +57,7 @@ * @return {module:model/EnumClass} The enum EnumClass value. */ exports.constructFromObject = function(object) { - return exports[object]; + return object; } return exports; diff --git a/samples/client/petstore/javascript/src/model/OuterEnum.js b/samples/client/petstore/javascript/src/model/OuterEnum.js index 8a31a9d87be..21da6b555e2 100644 --- a/samples/client/petstore/javascript/src/model/OuterEnum.js +++ b/samples/client/petstore/javascript/src/model/OuterEnum.js @@ -57,7 +57,7 @@ * @return {module:model/OuterEnum} The enum OuterEnum value. */ exports.constructFromObject = function(object) { - return exports[object]; + return object; } return exports;