diff options
Diffstat (limited to 'spec/unit/request')
| -rw-r--r-- | spec/unit/request/parameter/payload_spec.rb | 15 | ||||
| -rw-r--r-- | spec/unit/request/parameter/query_spec.rb | 11 | 
2 files changed, 20 insertions, 6 deletions
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  | 
