forked from loafle/openapi-generator-original
Fix regexp in ruby-client (#1521)
* Fix regexp in ruby-client * Remove tests for unknown regexp patterns
This commit is contained in:
parent
9b99b6b6bf
commit
ebf67e683c
@ -147,20 +147,7 @@ abstract class AbstractRubyCodegen extends DefaultCodegen implements CodegenConf
|
|||||||
}
|
}
|
||||||
|
|
||||||
public String toRegularExpression(String pattern) {
|
public String toRegularExpression(String pattern) {
|
||||||
if (StringUtils.isEmpty(pattern)) {
|
return addRegularExpressionDelimiter(pattern);
|
||||||
return pattern;
|
|
||||||
}
|
|
||||||
|
|
||||||
// We don't escape \ in string since Ruby doesn't like \ escaped in regex literal
|
|
||||||
String regexString = pattern;
|
|
||||||
if (!regexString.startsWith("/")) {
|
|
||||||
regexString = "/" + regexString;
|
|
||||||
}
|
|
||||||
if (StringUtils.countMatches(regexString, '/') == 1) {
|
|
||||||
// we only have forward slash inserted at start... adding one to end
|
|
||||||
regexString = regexString + "/";
|
|
||||||
}
|
|
||||||
return regexString;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -319,13 +319,7 @@ public class RubyClientCodegenTest {
|
|||||||
Assert.assertEquals(op.allParams.get(0).pattern, "/^pattern$/");
|
Assert.assertEquals(op.allParams.get(0).pattern, "/^pattern$/");
|
||||||
// pattern_two_slashes '/^pattern$/i'
|
// pattern_two_slashes '/^pattern$/i'
|
||||||
Assert.assertEquals(op.allParams.get(1).pattern, "/^pattern$/i");
|
Assert.assertEquals(op.allParams.get(1).pattern, "/^pattern$/i");
|
||||||
// pattern_one_slash_start '/^pattern$'
|
|
||||||
Assert.assertEquals(op.allParams.get(2).pattern, "/^pattern$/");
|
|
||||||
// pattern_one_slash_end '^pattern$/'
|
|
||||||
Assert.assertEquals(op.allParams.get(3).pattern, "/^pattern$/");
|
|
||||||
// pattern_one_slash_near_end '^pattern$/im'
|
|
||||||
Assert.assertEquals(op.allParams.get(4).pattern, "/^pattern$/im");
|
|
||||||
// pattern_dont_escape_backslash '/^pattern\d{3}$/i' NOTE: the double \ is to escape \ in string but is read as single \
|
// pattern_dont_escape_backslash '/^pattern\d{3}$/i' NOTE: the double \ is to escape \ in string but is read as single \
|
||||||
Assert.assertEquals(op.allParams.get(5).pattern, "/^pattern\\d{3}$/i");
|
Assert.assertEquals(op.allParams.get(2).pattern, "/^pattern\\d{3}$/i");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -25,21 +25,6 @@ paths:
|
|||||||
schema:
|
schema:
|
||||||
type: string
|
type: string
|
||||||
pattern: '/^pattern$/i'
|
pattern: '/^pattern$/i'
|
||||||
- name: pattern_one_slash_start
|
|
||||||
in: header
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
pattern: '/^pattern$'
|
|
||||||
- name: pattern_one_slash_end
|
|
||||||
in: header
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
pattern: '^pattern$/'
|
|
||||||
- name: pattern_one_slash_near_end
|
|
||||||
in: header
|
|
||||||
schema:
|
|
||||||
type: string
|
|
||||||
pattern: '^pattern$/im'
|
|
||||||
- name: pattern_dont_escape_backslash
|
- name: pattern_dont_escape_backslash
|
||||||
in: header
|
in: header
|
||||||
schema:
|
schema:
|
||||||
|
@ -195,8 +195,8 @@ module Petstore
|
|||||||
invalid_properties.push('invalid value for "byte", byte cannot be nil.')
|
invalid_properties.push('invalid value for "byte", byte cannot be nil.')
|
||||||
end
|
end
|
||||||
|
|
||||||
if @byte !~ Regexp.new(/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$)
|
if @byte !~ Regexp.new(/^(?:[A-Za-z0-9+\/]{4})*(?:[A-Za-z0-9+\/]{2}==|[A-Za-z0-9+\/]{3}=)?$/)
|
||||||
invalid_properties.push('invalid value for "byte", must conform to the pattern /^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$.')
|
invalid_properties.push('invalid value for "byte", must conform to the pattern /^(?:[A-Za-z0-9+\/]{4})*(?:[A-Za-z0-9+\/]{2}==|[A-Za-z0-9+\/]{3}=)?$/.')
|
||||||
end
|
end
|
||||||
|
|
||||||
if @date.nil?
|
if @date.nil?
|
||||||
@ -234,7 +234,7 @@ module Petstore
|
|||||||
return false if !@double.nil? && @double < 67.8
|
return false if !@double.nil? && @double < 67.8
|
||||||
return false if !@string.nil? && @string !~ Regexp.new(/[a-z]/i)
|
return false if !@string.nil? && @string !~ Regexp.new(/[a-z]/i)
|
||||||
return false if @byte.nil?
|
return false if @byte.nil?
|
||||||
return false if @byte !~ Regexp.new(/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$)
|
return false if @byte !~ Regexp.new(/^(?:[A-Za-z0-9+\/]{4})*(?:[A-Za-z0-9+\/]{2}==|[A-Za-z0-9+\/]{3}=)?$/)
|
||||||
return false if @date.nil?
|
return false if @date.nil?
|
||||||
return false if @password.nil?
|
return false if @password.nil?
|
||||||
return false if @password.to_s.length > 64
|
return false if @password.to_s.length > 64
|
||||||
@ -333,8 +333,8 @@ module Petstore
|
|||||||
fail ArgumentError, 'byte cannot be nil'
|
fail ArgumentError, 'byte cannot be nil'
|
||||||
end
|
end
|
||||||
|
|
||||||
if byte !~ Regexp.new(/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$)
|
if byte !~ Regexp.new(/^(?:[A-Za-z0-9+\/]{4})*(?:[A-Za-z0-9+\/]{2}==|[A-Za-z0-9+\/]{3}=)?$/)
|
||||||
fail ArgumentError, 'invalid value for "byte", must conform to the pattern /^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$.'
|
fail ArgumentError, 'invalid value for "byte", must conform to the pattern /^(?:[A-Za-z0-9+\/]{4})*(?:[A-Za-z0-9+\/]{2}==|[A-Za-z0-9+\/]{3}=)?$/.'
|
||||||
end
|
end
|
||||||
|
|
||||||
@byte = byte
|
@byte = byte
|
||||||
|
Loading…
x
Reference in New Issue
Block a user