Skip to content

Commit e5090b6

Browse files
authored
fix parsing endless range values (#896)
1 parent c0c1b74 commit e5090b6

File tree

3 files changed

+16
-1
lines changed

3 files changed

+16
-1
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
* Your contribution here.
66

77
#### Fixes
8+
* [#868](https://github.com/ruby-grape/grape-swagger/pull/896): Fix parsing endless range values - [@dhruvCW](https://github.com/dhruvCW)
89

910
* Your contribution here.
1011

lib/grape-swagger/doc_methods/parse_params.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -171,7 +171,7 @@ def parse_enum_or_range_values(values)
171171
end
172172

173173
def parse_range_values(values)
174-
{ minimum: values.first, maximum: values.last }
174+
{ minimum: values.begin, maximum: values.end }.compact
175175
end
176176
end
177177
end

spec/lib/parse_params_spec.rb

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,20 @@
1212
parsed_range = subject.send(:parse_range_values, start_value..end_value)
1313
expect(parsed_range).to eql(minimum: start_value, maximum: end_value)
1414
end
15+
16+
describe 'endless range' do
17+
specify do
18+
parsed_range = subject.send(:parse_range_values, start_value..)
19+
expect(parsed_range).to eql(minimum: start_value)
20+
end
21+
end
22+
23+
describe 'beginless range' do
24+
specify do
25+
parsed_range = subject.send(:parse_range_values, ..end_value)
26+
expect(parsed_range).to eql(maximum: end_value)
27+
end
28+
end
1529
end
1630

1731
describe '#parse_enum_or_range_values' do

0 commit comments

Comments
 (0)