forked from loafle/openapi-generator-original
add pattern check to ruby model
This commit is contained in:
@@ -62,7 +62,7 @@ module {{moduleName}}{{#models}}{{#model}}{{#description}}
|
||||
invalid_properties = Array.new
|
||||
{{#isEnum}}
|
||||
allowed_values = [{{#allowableValues}}{{#values}}"{{{this}}}"{{^-last}}, {{/-last}}{{/values}}{{/allowableValues}}]
|
||||
if @{{{name}}} && !allowed_values.include?(@{{{name}}})
|
||||
if @{{{name}}} && !allowed_values.include?({{{name}}})
|
||||
invalid_properties.push("invalid value for '{{{name}}}', must be one of #{allowed_values}.")
|
||||
end
|
||||
|
||||
@@ -96,6 +96,12 @@ module {{moduleName}}{{#models}}{{#model}}{{#description}}
|
||||
end
|
||||
|
||||
{{/minimum}}
|
||||
{{#pattern}}
|
||||
if @{{{name}}} !~ Regexp.new({{{pattern}}})
|
||||
invalid_properties.push("invalid value for '{{{name}}}', must conform to the pattern {{{pattern}}}.")
|
||||
end
|
||||
|
||||
{{/pattern}}
|
||||
{{/hasValidation}}
|
||||
return invalid_properties
|
||||
end
|
||||
@@ -141,6 +147,12 @@ module {{moduleName}}{{#models}}{{#model}}{{#description}}
|
||||
end
|
||||
|
||||
{{/minimum}}
|
||||
{{#pattern}}
|
||||
if @{{{name}}} !~ Regexp.new({{{pattern}}})
|
||||
return false
|
||||
end
|
||||
|
||||
{{/pattern}}
|
||||
{{/hasValidation}}
|
||||
{{/vars}}
|
||||
end
|
||||
@@ -151,7 +163,7 @@ module {{moduleName}}{{#models}}{{#model}}{{#description}}
|
||||
# @param [Object] {{{name}}} Object to be assigned
|
||||
def {{{name}}}=({{{name}}})
|
||||
allowed_values = [{{#allowableValues}}{{#values}}"{{{this}}}"{{^-last}}, {{/-last}}{{/values}}{{/allowableValues}}]
|
||||
if {{{name}}} && !allowed_values.include?(@{{{name}}})
|
||||
if {{{name}}} && !allowed_values.include?({{{name}}})
|
||||
fail ArgumentError, "invalid value for '{{{name}}}', must be one of #{allowed_values}."
|
||||
end
|
||||
@{{{name}}} = {{{name}}}
|
||||
@@ -191,6 +203,12 @@ module {{moduleName}}{{#models}}{{#model}}{{#description}}
|
||||
end
|
||||
|
||||
{{/minimum}}
|
||||
{{#pattern}}
|
||||
if @{{{name}}} !~ Regexp.new({{{pattern}}})
|
||||
fail ArgumentError, "invalid value for '{{{name}}}', must conform to the pattern {{{pattern}}}."
|
||||
end
|
||||
|
||||
{{/pattern}}
|
||||
@{{{name}}} = {{{name}}}
|
||||
end
|
||||
|
||||
|
||||
@@ -787,7 +787,7 @@ definitions:
|
||||
minimum: 67.8
|
||||
string:
|
||||
type: string
|
||||
pattern: /[a‑z]/i
|
||||
pattern: /[a-z]/i
|
||||
byte:
|
||||
type: string
|
||||
format: byte
|
||||
|
||||
@@ -8,7 +8,7 @@ This SDK is automatically generated by the [Swagger Codegen](https://github.com/
|
||||
|
||||
- API version: 1.0.0
|
||||
- Package version: 1.0.0
|
||||
- Build date: 2016-04-25T21:47:45.004+08:00
|
||||
- Build date: 2016-04-25T22:22:56.750+08:00
|
||||
- Build package: class io.swagger.codegen.languages.RubyClientCodegen
|
||||
|
||||
## Installation
|
||||
|
||||
@@ -190,6 +190,10 @@ module Petstore
|
||||
return false
|
||||
end
|
||||
|
||||
if @string !~ Regexp.new(/[a-z]/i)
|
||||
return false
|
||||
end
|
||||
|
||||
if @byte.nil?
|
||||
return false
|
||||
end
|
||||
@@ -309,6 +313,10 @@ module Petstore
|
||||
fail ArgumentError, "string cannot be nil"
|
||||
end
|
||||
|
||||
if @string !~ Regexp.new(/[a-z]/i)
|
||||
fail ArgumentError, "invalid value for 'string', must conform to the pattern /[a-z]/i."
|
||||
end
|
||||
|
||||
@string = string
|
||||
end
|
||||
|
||||
|
||||
@@ -102,7 +102,7 @@ module Petstore
|
||||
# @return true if the model is valid
|
||||
def valid?
|
||||
allowed_values = ["placed", "approved", "delivered"]
|
||||
if @status && !allowed_values.include?(status)
|
||||
if @status && !allowed_values.include?(@status)
|
||||
return false
|
||||
end
|
||||
end
|
||||
|
||||
@@ -112,7 +112,7 @@ module Petstore
|
||||
end
|
||||
|
||||
allowed_values = ["available", "pending", "sold"]
|
||||
if @status && !allowed_values.include?(status)
|
||||
if @status && !allowed_values.include?(@status)
|
||||
return false
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user