From ec446a53b1a169a9c43c9821546d1b181c603bab Mon Sep 17 00:00:00 2001 From: Gibheer Date: Fri, 30 Nov 2012 14:46:52 +0100 Subject: use URI to get parameters --- spec/unit/request/parameter/payload_spec.rb | 15 ++++++++++++--- spec/unit/request/parameter/query_spec.rb | 11 ++++++++--- 2 files changed, 20 insertions(+), 6 deletions(-) (limited to 'spec') diff --git a/spec/unit/request/parameter/payload_spec.rb b/spec/unit/request/parameter/payload_spec.rb index df9f02d..af1d2ab 100644 --- a/spec/unit/request/parameter/payload_spec.rb +++ b/spec/unit/request/parameter/payload_spec.rb @@ -3,17 +3,17 @@ require 'spec_helper' describe Zero::Request::Parameter, '#payload' do subject { Zero::Request::Parameter.new(env) } - context "without parameters" do + context 'without parameters' do let(:env) { EnvGenerator.get('/foo') } its(:payload) { should == {} } end - context "with a query string" do + context 'with a query string' do let(:env) { EnvGenerator.get('/foo?bar=baz') } its(:payload) { should == {} } end - context "with a post body" do + context 'with a post body' do let(:env) do EnvGenerator.post('/foo', { :input => 'bar=baz', 'CONTENT_TYPE' => 'multipart/form-data' @@ -21,4 +21,13 @@ describe Zero::Request::Parameter, '#payload' do end its(:payload) { should == {'bar' => 'baz'} } end + + 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 end diff --git a/spec/unit/request/parameter/query_spec.rb b/spec/unit/request/parameter/query_spec.rb index 5a3964b..940e80e 100644 --- a/spec/unit/request/parameter/query_spec.rb +++ b/spec/unit/request/parameter/query_spec.rb @@ -3,18 +3,23 @@ require 'spec_helper' describe Zero::Request::Parameter, '#query' do subject { Zero::Request::Parameter.new(env) } - context "without parameters" do + context 'without parameters' do let(:env) { EnvGenerator.get('/foo') } its(:query) { should == {} } end - context "with a query string" do + context 'with a query string' do let(:env) { EnvGenerator.get('/foo?bar=baz') } its(:query) { should == {'bar' => 'baz'} } end - context "with a post body" do + context 'with a post body' do let(:env) { EnvGenerator.post('/foo', {:input => 'bar=baz'}) } its(:query) { should == {} } end + + context 'with special characters' do + let(:env) { EnvGenerator.get('/foo?bar=foo%20bar') } + its(:query) { should == {'bar' => 'foo bar'} } + end end -- cgit v1.2.3-70-g09d2