From 646d3a9e23b8d8d7912186bec624beb493d4e81b Mon Sep 17 00:00:00 2001 From: Gibheer Date: Tue, 13 Nov 2012 07:47:05 +0100 Subject: more specs for the #? methods of request --- spec/spec_helper.rb | 15 +++++++++++++++ spec/unit/request/delete_spec.rb | 15 +++++++++++++++ spec/unit/request/get_spec.rb | 2 +- spec/unit/request/head_spec.rb | 15 +++++++++++++++ spec/unit/request/patch_spec.rb | 15 +++++++++++++++ spec/unit/request/post_spec.rb | 15 +++++++++++++++ spec/unit/request/put_spec.rb | 15 +++++++++++++++ 7 files changed, 91 insertions(+), 1 deletion(-) create mode 100644 spec/unit/request/delete_spec.rb create mode 100644 spec/unit/request/head_spec.rb create mode 100644 spec/unit/request/patch_spec.rb create mode 100644 spec/unit/request/post_spec.rb create mode 100644 spec/unit/request/put_spec.rb (limited to 'spec') diff --git a/spec/spec_helper.rb b/spec/spec_helper.rb index 9b30f58..5f1be68 100644 --- a/spec/spec_helper.rb +++ b/spec/spec_helper.rb @@ -12,7 +12,10 @@ end class EnvGenerator KEY_REQUEST_METHOD = 'REQUEST_METHOD' KEY_REQUEST_GET = 'GET' + KEY_REQUEST_HEAD = 'HEAD' KEY_REQUEST_POST = 'POST' + KEY_REQUEST_PUT = 'PUT' + KEY_REQUEST_DELETE = 'DELETE' def self.generate_env(uri, options) Rack::MockRequest.env_for(uri, options) @@ -22,7 +25,19 @@ class EnvGenerator generate_env(uri, options.merge(KEY_REQUEST_METHOD => KEY_REQUEST_GET)) end + def self.head(uri, options = {}) + generate_env(uri, options.merge(KEY_REQUEST_METHOD => KEY_REQUEST_HEAD)) + end + def self.post(uri, options = {}) generate_env(uri, options.merge(KEY_REQUEST_METHOD => KEY_REQUEST_POST)) end + + def self.put(uri, options = {}) + generate_env(uri, options.merge(KEY_REQUEST_METHOD => KEY_REQUEST_PUT)) + end + + def self.delete(uri, options = {}) + generate_env(uri, options.merge(KEY_REQUEST_METHOD => KEY_REQUEST_DELETE)) + end end diff --git a/spec/unit/request/delete_spec.rb b/spec/unit/request/delete_spec.rb new file mode 100644 index 0000000..9a5737d --- /dev/null +++ b/spec/unit/request/delete_spec.rb @@ -0,0 +1,15 @@ +require 'spec_helper' + +describe Zero::Request, '#delete?' do + subject { Zero::Request.new(env) } + + context "with a delete request" do + let(:env) { EnvGenerator.delete('/foo') } + its(:delete?) { should be(true) } + end + + context "with a get request" do + let(:env) { EnvGenerator.get('/foo') } + its(:delete?) { should be(false) } + end +end diff --git a/spec/unit/request/get_spec.rb b/spec/unit/request/get_spec.rb index 15f7480..0b96abc 100644 --- a/spec/unit/request/get_spec.rb +++ b/spec/unit/request/get_spec.rb @@ -1,6 +1,6 @@ require 'spec_helper' -describe Zero::Request do +describe Zero::Request, '#get?' do subject { Zero::Request.new(env) } context "with a get request" do diff --git a/spec/unit/request/head_spec.rb b/spec/unit/request/head_spec.rb new file mode 100644 index 0000000..5622fd6 --- /dev/null +++ b/spec/unit/request/head_spec.rb @@ -0,0 +1,15 @@ +require 'spec_helper' + +describe Zero::Request, '#head?' do + subject { Zero::Request.new(env) } + + context "with a head request" do + let(:env) { EnvGenerator.head('/foo') } + its(:head?) { should be(true) } + end + + context "with a get request" do + let(:env) { EnvGenerator.get('/foo') } + its(:head?) { should be(false) } + end +end diff --git a/spec/unit/request/patch_spec.rb b/spec/unit/request/patch_spec.rb new file mode 100644 index 0000000..1c2d3c9 --- /dev/null +++ b/spec/unit/request/patch_spec.rb @@ -0,0 +1,15 @@ +require 'spec_helper' + +describe Zero::Request, '#patch?' do + subject { Zero::Request.new(env) } + + context "with a post request" do + let(:env) { EnvGenerator.post('/foo') } + its(:post?) { should be(true) } + end + + context "with a get request" do + let(:env) { EnvGenerator.get('/foo') } + its(:post?) { should be(false) } + end +end diff --git a/spec/unit/request/post_spec.rb b/spec/unit/request/post_spec.rb new file mode 100644 index 0000000..2bfa834 --- /dev/null +++ b/spec/unit/request/post_spec.rb @@ -0,0 +1,15 @@ +require 'spec_helper' + +describe Zero::Request, '#post?' do + subject { Zero::Request.new(env) } + + context "with a post request" do + let(:env) { EnvGenerator.post('/foo') } + its(:post?) { should be(true) } + end + + context "with a get request" do + let(:env) { EnvGenerator.get('/foo') } + its(:post?) { should be(false) } + end +end diff --git a/spec/unit/request/put_spec.rb b/spec/unit/request/put_spec.rb new file mode 100644 index 0000000..937d904 --- /dev/null +++ b/spec/unit/request/put_spec.rb @@ -0,0 +1,15 @@ +require 'spec_helper' + +describe Zero::Request, '#put?' do + subject { Zero::Request.new(env) } + + context "with a put request" do + let(:env) { EnvGenerator.put('/foo') } + its(:put?) { should be(true) } + end + + context "with a get request" do + let(:env) { EnvGenerator.get('/foo') } + its(:put?) { should be(false) } + end +end -- cgit v1.2.3-70-g09d2