-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
/
Copy pathversioner_spec.rb
37 lines (26 loc) · 943 Bytes
/
versioner_spec.rb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# frozen_string_literal: true
describe Grape::Middleware::Versioner do
subject { described_class.using(strategy) }
context 'when :path' do
let(:strategy) { :path }
it { is_expected.to eq(Grape::Middleware::Versioner::Path) }
end
context 'when :header' do
let(:strategy) { :header }
it { is_expected.to eq(Grape::Middleware::Versioner::Header) }
end
context 'when :param' do
let(:strategy) { :param }
it { is_expected.to eq(Grape::Middleware::Versioner::Param) }
end
context 'when :accept_version_header' do
let(:strategy) { :accept_version_header }
it { is_expected.to eq(Grape::Middleware::Versioner::AcceptVersionHeader) }
end
context 'when unknown' do
let(:strategy) { :unknown }
it 'raises an error' do
expect { subject }.to raise_error Grape::Exceptions::InvalidVersionerOption, Grape::Exceptions::InvalidVersionerOption.new(strategy).message
end
end
end