Sha256: dc2e256615f5c14bbc00f73f448e0f5118da6e82fbdaa614d2e4615adf4085df
Contents?: true
Size: 1.13 KB
Versions: 5
Compression:
Stored size: 1.13 KB
Contents
require 'spec_helper' describe VersionCake::PathParameterStrategy do let(:strategy) { VersionCake::PathParameterStrategy.new } subject { strategy.extract(request) } context "a request with an api_version path parameter retrieves the version" do let(:request) { instance_double('Request', path: 'api/v11/parameter') } it { is_expected.to eq 11 } end context "a request with a substring matching /v\d+/ returns nil" do context "as a postpended string" do let(:request) { instance_double('Request', path: 'parameter/aav11/parameter') } it { is_expected.to be_nil } end context "as a prepended string" do let(:request) { instance_double('Request', path: 'parameter/v11aa/parameter') } it { is_expected.to be_nil } end context "as an interstital string" do let(:request) { instance_double('Request', path: 'parameter/aav11aa/parameter') } it { is_expected.to be_nil } end end context "a request without an api_version path parameter returns nil" do let(:request) { instance_double('Request', path: 'parameter/parameter') } it { is_expected.to be_nil } end end
Version data entries
5 entries across 5 versions & 1 rubygems