Commit 74ed31b04b8d03c7f300b68f7b0fc8582bb05038

Authored by Nick Recobra
1 parent 78becdf1
Exists in master and in 1 other branch production

Setting app id once - on create.

app/models/app.rb
@@ -10,7 +10,7 @@ class App @@ -10,7 +10,7 @@ class App
10 # There seems to be a Mongoid bug making it impossible to use String identity with references_many feature: 10 # There seems to be a Mongoid bug making it impossible to use String identity with references_many feature:
11 # https://github.com/mongoid/mongoid/issues/703 11 # https://github.com/mongoid/mongoid/issues/703
12 # Using 32 character string as a workaround. 12 # Using 32 character string as a workaround.
13 - before_save :on => :create do |r| 13 + before_create do |r|
14 r.id = ActiveSupport::SecureRandom.hex 14 r.id = ActiveSupport::SecureRandom.hex
15 end 15 end
16 16
spec/controllers/apps_controller_spec.rb
1 require 'spec_helper' 1 require 'spec_helper'
2 2
3 describe AppsController do 3 describe AppsController do
4 - 4 + render_views
  5 +
5 it_requires_authentication 6 it_requires_authentication
6 it_requires_admin_privileges :for => {:new => :get, :edit => :get, :create => :post, :update => :put, :destroy => :delete} 7 it_requires_admin_privileges :for => {:new => :get, :edit => :get, :create => :post, :update => :put, :destroy => :delete}
7 8
@@ -32,7 +33,6 @@ describe AppsController do @@ -32,7 +33,6 @@ describe AppsController do
32 end 33 end
33 34
34 describe "GET /apps/:id" do 35 describe "GET /apps/:id" do
35 - render_views  
36 context 'logged in as an admin' do 36 context 'logged in as an admin' do
37 before(:each) do 37 before(:each) do
38 @user = Factory(:admin) 38 @user = Factory(:admin)
@@ -151,10 +151,6 @@ describe AppsController do @@ -151,10 +151,6 @@ describe AppsController do
151 end 151 end
152 152
153 context "when the update is successful" do 153 context "when the update is successful" do
154 - before do  
155 - @app.should_receive(:update_attributes).and_return(true)  
156 - end  
157 -  
158 it "should redirect to the app page" do 154 it "should redirect to the app page" do
159 put :update, :id => @app.id, :app => {} 155 put :update, :id => @app.id, :app => {}
160 response.should redirect_to(app_path(@app)) 156 response.should redirect_to(app_path(@app))
@@ -165,6 +161,14 @@ describe AppsController do @@ -165,6 +161,14 @@ describe AppsController do
165 request.flash[:success].should match(/success/) 161 request.flash[:success].should match(/success/)
166 end 162 end
167 end 163 end
  164 +
  165 + context "changing name" do
  166 + it "should redirect to app page" do
  167 + id = @app.id
  168 + put :update, :id => id, :app => {:name => "new name"}
  169 + response.should redirect_to(app_path(id))
  170 + end
  171 + end
168 172
169 context "when the update is unsuccessful" do 173 context "when the update is unsuccessful" do
170 it "should render the edit page" do 174 it "should render the edit page" do