thoughtbot--shoulda-matchers/spec/unit/shoulda/matchers/action_controller/route_params_spec.rb

31 lines
1.0 KiB
Ruby

require 'unit_spec_helper'
describe Shoulda::Matchers::ActionController::RouteParams, type: :controller do
describe '#normalize' do
context 'when the route parameters is a hash' do
it 'stringifies the values in the hash' do
expect(build_route_params(controller: :examples, action: 'example', id: '1').normalize).
to eq({ controller: 'examples', action: 'example', id: '1' })
end
end
context 'when the route parameters is a string and a hash' do
it 'produces a hash of route parameters' do
expect(build_route_params('examples#example', id: '1').normalize).
to eq({ controller: 'examples', action: 'example', id: '1' })
end
end
context 'when the route params is a string' do
it 'produces a hash of route params' do
expect(build_route_params('examples#index').normalize).
to eq({ controller: 'examples', action: 'index' })
end
end
end
def build_route_params(*params)
Shoulda::Matchers::ActionController::RouteParams.new(params)
end
end