From: Jan Provaznik <jprovazn(a)redhat.com>
---
src/spec/controllers/catalogs_controller_spec.rb | 48 ++++++++++++++++++++++
1 files changed, 48 insertions(+), 0 deletions(-)
create mode 100644 src/spec/controllers/catalogs_controller_spec.rb
diff --git a/src/spec/controllers/catalogs_controller_spec.rb
b/src/spec/controllers/catalogs_controller_spec.rb
new file mode 100644
index 0000000..34fa6a9
--- /dev/null
+++ b/src/spec/controllers/catalogs_controller_spec.rb
@@ -0,0 +1,48 @@
+require 'spec_helper'
+
+describe CatalogsController do
+ fixtures :all
+ before(:each) do
+ @admin_permission = FactoryGirl.create(:admin_permission)
+ @admin = @admin_permission.user
+ end
+
+ context "JSON format responses for " do
+ before do
+ accept_json
+ mock_warden(@admin)
+ end
+
+ describe "#create" do
+ before do
+ @catalog = Factory.build(:catalog)
+ Catalog.stub!(:new).and_return(@catalog)
+ post :create
+ end
+
+ it { response.should be_success }
+ it { ActiveSupport::JSON.decode(response.body)["name"].should ==
@catalog.name }
+ end
+
+ describe "#update" do
+ before do
+ @catalog = Factory.create(:catalog)
+ post :update, {:id => @catalog.id, :catalog => {:name =>
'new_name'}}
+ end
+
+ it { response.should be_success }
+ it { ActiveSupport::JSON.decode(response.body)["name"].should ==
'new_name' }
+ end
+
+ describe "#destroy" do
+ before do
+ @deployment = Factory.build(:deployment)
+ Deployment.stub!(:find).and_return([@deployment])
+ delete :destroy, :id => @deployment.id, :format => :json
+ end
+
+ it { response.should redirect_to(catalogs_path) }
+ end
+ end
+
+end
--
1.7.6.2