Merge branch '23890-api-should-accepts-boolean' into 'master'
API: Fix booleans not recognized as such when using the `to_boolean` helper Fixes #22831 Fixes #23890 See merge request !7149
This commit is contained in:
commit
5c5f34dd13
|
@ -12,6 +12,7 @@ Please view this file on the master branch, on stable branches it's out of date.
|
|||
- Refactor Jira service to use jira-ruby gem
|
||||
- Add hover to trash icon in notes !7008 (blackst0ne)
|
||||
- Fix sidekiq stats in admin area (blackst0ne)
|
||||
- API: Fix booleans not recognized as such when using the `to_boolean` helper
|
||||
- Removed delete branch tooltip !6954
|
||||
- Escape ref and path for relative links !6050 (winniehell)
|
||||
- Fixed link typo on /help/ui to Alerts section. !6915 (Sam Rose)
|
||||
|
|
|
@ -6,6 +6,7 @@ module API
|
|||
SUDO_PARAM = :sudo
|
||||
|
||||
def to_boolean(value)
|
||||
return value if [true, false].include?(value)
|
||||
return true if value =~ /^(true|t|yes|y|1|on)$/i
|
||||
return false if value =~ /^(false|f|no|n|0|off)$/i
|
||||
|
||||
|
|
|
@ -266,18 +266,25 @@ describe API::Helpers, api: true do
|
|||
end
|
||||
|
||||
describe '.to_boolean' do
|
||||
it 'accepts booleans' do
|
||||
expect(to_boolean(true)).to be(true)
|
||||
expect(to_boolean(false)).to be(false)
|
||||
end
|
||||
|
||||
it 'converts a valid string to a boolean' do
|
||||
expect(to_boolean('true')).to be_truthy
|
||||
expect(to_boolean('YeS')).to be_truthy
|
||||
expect(to_boolean('t')).to be_truthy
|
||||
expect(to_boolean('1')).to be_truthy
|
||||
expect(to_boolean('ON')).to be_truthy
|
||||
expect(to_boolean('FaLse')).to be_falsy
|
||||
expect(to_boolean('F')).to be_falsy
|
||||
expect(to_boolean('NO')).to be_falsy
|
||||
expect(to_boolean('n')).to be_falsy
|
||||
expect(to_boolean('0')).to be_falsy
|
||||
expect(to_boolean('oFF')).to be_falsy
|
||||
expect(to_boolean(true)).to be(true)
|
||||
expect(to_boolean('true')).to be(true)
|
||||
expect(to_boolean('YeS')).to be(true)
|
||||
expect(to_boolean('t')).to be(true)
|
||||
expect(to_boolean('1')).to be(true)
|
||||
expect(to_boolean('ON')).to be(true)
|
||||
|
||||
expect(to_boolean('FaLse')).to be(false)
|
||||
expect(to_boolean('F')).to be(false)
|
||||
expect(to_boolean('NO')).to be(false)
|
||||
expect(to_boolean('n')).to be(false)
|
||||
expect(to_boolean('0')).to be(false)
|
||||
expect(to_boolean('oFF')).to be(false)
|
||||
end
|
||||
|
||||
it 'converts an invalid string to nil' do
|
||||
|
|
Loading…
Reference in New Issue