AutoCommit Mon Aug 31 14:03:19 CEST 2015

This commit is contained in:
Andreas Stephanides
2015-08-31 14:03:19 +02:00
parent cec9939144
commit f61231accc
4 changed files with 38 additions and 12 deletions

View File

@@ -52,7 +52,8 @@
else else
flash[:error] = "You must first login to view this page" flash[:error] = "You must first login to view this page"
session[:user_return_to] = request.url session[:user_return_to] = request.url
redirect_to "/users/sign_in" return redirect_to "/users/sign_in"
end end
end end

View File

@@ -1,9 +1,9 @@
require 'spec_helper' require 'spec_helper'
describe FetprofilesController do describe FetprofilesController, :type => :controller do
let(:valid_attributes) { {"vorname"=>"Neuer Vorname"} } let(:valid_update_attributes) { {"vorname"=>"Neuer Vorname"} }
let(:valid_session) { {locale: :de} } # let(:valid_session) { {locale: :de} }
extend ControllerMacros
describe "GET index" do describe "GET index" do
let(:action) { get :index, {}, valid_session} let(:action) { get :index, {}, valid_session}
it "has a 200 status code" do it "has a 200 status code" do
@@ -27,9 +27,34 @@ describe FetprofilesController do
end end
describe "GET new" do describe "GET new" do
it "assigns a new fetprofile as @fetprofile" do describe "with fetuser" do
get :new, {}, valid_session login_fet_user
assigns(:fetprofile).should be_a_new(Fetprofile) it "is success" do
get :new, {}
expect(response).to be_success
end
it "assigns @fetprofile" do
get :new, {}
expect(assigns(:fetprofile)).to be_a_new(Fetprofile)
end
end
describe "without fetuser" do
before(:each) do
sign_out :user
end
it "doesn't assign @fetprofile" do
get :new, {}
expect(assigns(:fetprofile)).to be_nil #_a_new(Fetprofile)
end
it "is expected to raise error" do
bypass_rescue
expect { get :new }.to raise_error(CanCan::AccessDenied)
end
it "is not success" do
get :new, {}
expect(response).not_to be_success
end
end end
end end

View File

@@ -4,7 +4,7 @@ require File.expand_path("../../config/environment", __FILE__)
require 'rspec/rails' require 'rspec/rails'
require 'rspec/autorun' require 'rspec/autorun'
require 'sunspot_test/rspec' require 'sunspot_test/rspec'
require 'devise'
# Requires supporting ruby files with custom matchers and macros, etc, # Requires supporting ruby files with custom matchers and macros, etc,
# in spec/support/ and its subdirectories. # in spec/support/ and its subdirectories.
Dir[Rails.root.join("spec/support/**/*.rb")].each { |f| require f } Dir[Rails.root.join("spec/support/**/*.rb")].each { |f| require f }

View File

@@ -1,13 +1,13 @@
module ControllerMacros module ControllerMacros
include Devise::TestHelpers # include Devise::TestHelpers, :type=>:controller
def login_fet_user def login_fet_user
before(:each) do before(:each) do
@request.env["devise.mapping"] = Devise.mappings[:user] @request.env["devise.mapping"] = Devise.mappings[:user]
user = FactoryGirl.build(:user) user = FactoryGirl.build(:user)
user = User.find_by_email(user.email) || user user = User.find_by_email(user.email) || user
user.add_role(:fetuser)
user.confirm!
user.save user.save
user.add_role(:fetuser)
# user.confirm!
sign_in user sign_in user
end end
end end