2012-11-14 20:57:18 +01:00
|
|
|
require 'spec_helper'
|
|
|
|
|
|
|
|
describe Zero::Request::Parameter, '#payload' do
|
|
|
|
subject { Zero::Request::Parameter.new(env) }
|
|
|
|
|
2012-11-30 14:46:52 +01:00
|
|
|
context 'without parameters' do
|
2012-11-14 20:57:18 +01:00
|
|
|
let(:env) { EnvGenerator.get('/foo') }
|
|
|
|
its(:payload) { should == {} }
|
|
|
|
end
|
|
|
|
|
2012-11-30 14:46:52 +01:00
|
|
|
context 'with a query string' do
|
2012-11-14 20:57:18 +01:00
|
|
|
let(:env) { EnvGenerator.get('/foo?bar=baz') }
|
|
|
|
its(:payload) { should == {} }
|
|
|
|
end
|
|
|
|
|
2012-11-30 14:46:52 +01:00
|
|
|
context 'with a post body' do
|
2012-11-14 20:57:18 +01:00
|
|
|
let(:env) do
|
|
|
|
EnvGenerator.post('/foo', {
|
|
|
|
:input => 'bar=baz', 'CONTENT_TYPE' => 'multipart/form-data'
|
|
|
|
})
|
|
|
|
end
|
|
|
|
its(:payload) { should == {'bar' => 'baz'} }
|
|
|
|
end
|
2012-11-30 14:46:52 +01:00
|
|
|
|
|
|
|
context 'with special characters' do
|
|
|
|
let(:env) do
|
|
|
|
EnvGenerator.post('/foo', {
|
|
|
|
:input => 'bar=foo%20bar', 'CONTENT_TYPE' => 'multipart/form-data'
|
|
|
|
})
|
|
|
|
end
|
|
|
|
its(:payload) { should == {'bar' => 'foo bar'} }
|
|
|
|
end
|
2012-11-14 20:57:18 +01:00
|
|
|
end
|