Mercurial > hg > soundsoftware-site
diff test/functional/repositories_filesystem_controller_test.rb @ 909:cbb26bc654de redmine-1.3
Update to Redmine 1.3-stable branch (Redmine SVN rev 8964)
author | Chris Cannam |
---|---|
date | Fri, 24 Feb 2012 19:09:32 +0000 |
parents | cbce1fd3b1b7 |
children | 433d4f72a19b |
line wrap: on
line diff
--- a/test/functional/repositories_filesystem_controller_test.rb Fri Feb 24 18:36:29 2012 +0000 +++ b/test/functional/repositories_filesystem_controller_test.rb Fri Feb 24 19:09:32 2012 +0000 @@ -22,10 +22,10 @@ class RepositoriesController; def rescue_action(e) raise e end; end class RepositoriesFilesystemControllerTest < ActionController::TestCase - fixtures :projects, :users, :roles, :members, :member_roles, :repositories, :enabled_modules + fixtures :projects, :users, :roles, :members, :member_roles, + :repositories, :enabled_modules - # No '..' in the repository path - REPOSITORY_PATH = RAILS_ROOT.gsub(%r{config\/\.\.}, '') + '/tmp/test/filesystem_repository' + REPOSITORY_PATH = Rails.root.join('tmp/test/filesystem_repository').to_s PRJ_ID = 3 def setup @@ -36,8 +36,9 @@ @response = ActionController::TestResponse.new User.current = nil Setting.enabled_scm << 'Filesystem' unless Setting.enabled_scm.include?('Filesystem') + @project = Project.find(PRJ_ID) @repository = Repository::Filesystem.create( - :project => Project.find(PRJ_ID), + :project => @project, :url => REPOSITORY_PATH, :path_encoding => '' ) @@ -115,6 +116,36 @@ assert_equal 'text/plain', @response.content_type end end + + def test_destroy_valid_repository + @request.session[:user_id] = 1 # admin + + get :destroy, :id => PRJ_ID + assert_response 302 + @project.reload + assert_nil @project.repository + end + + def test_destroy_invalid_repository + @request.session[:user_id] = 1 # admin + + get :destroy, :id => PRJ_ID + assert_response 302 + @project.reload + assert_nil @project.repository + + @repository = Repository::Filesystem.create( + :project => Project.find(PRJ_ID), + :url => "/invalid", + :path_encoding => '' + ) + assert @repository + + get :destroy, :id => PRJ_ID + assert_response 302 + @project.reload + assert_nil @project.repository + end else puts "Filesystem test repository NOT FOUND. Skipping functional tests !!!" def test_fake; assert true end