From d3158e37b9d4e3f3da8266f38eed626e5ed7df03 Mon Sep 17 00:00:00 2001 From: Eric Davis Date: Mon, 2 Aug 2010 15:42:59 +0000 Subject: [PATCH] Added tests for AccountController#register POST with automatic registration. git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@3904 e93f8b46-1217-0410-a6f0-8f06a7374b81 --- test/functional/account_controller_test.rb | 44 +++++++++++++++++++++- 1 file changed, 43 insertions(+), 1 deletion(-) diff --git a/test/functional/account_controller_test.rb b/test/functional/account_controller_test.rb index ce3d13f1..61ad9743 100644 --- a/test/functional/account_controller_test.rb +++ b/test/functional/account_controller_test.rb @@ -175,5 +175,47 @@ class AccountControllerTest < ActionController::TestCase should_redirect_to('/') { home_url } end end - + + # See integration/account_test.rb for the full test + context "POST #register" do + context "with self registration on automatic" do + setup do + Setting.self_registration = '3' + post :register, :user => { + :login => 'register', + :password => 'test', + :password_confirmation => 'test', + :firstname => 'John', + :lastname => 'Doe', + :mail => 'register@example.com' + } + end + + should_respond_with :redirect + should_assign_to :user + should_redirect_to('my page') { {:controller => 'my', :action => 'account'} } + + should "create a new user" do + user = User.last(:conditions => {:login => 'register'}) + assert user + assert_kind_of User, user + end + + should 'set the user status to active' do + user = User.last(:conditions => {:login => 'register'}) + assert user + assert_equal User::STATUS_ACTIVE, user.status + end + end + + context "with self registration off" do + setup do + Setting.self_registration = '0' + post :register + end + + should_redirect_to('/') { home_url } + end + end + end