From b6b77c438a0bf34351ee5d23adcbbe9979f2a6d5 Mon Sep 17 00:00:00 2001 From: Jean-Philippe Lang Date: Sat, 3 Dec 2011 08:47:40 +0000 Subject: [PATCH] Adds functional tests for repository creation/update. git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@8036 e93f8b46-1217-0410-a6f0-8f06a7374b81 --- ...repositories_subversion_controller_test.rb | 36 +++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/test/functional/repositories_subversion_controller_test.rb b/test/functional/repositories_subversion_controller_test.rb index ba6c6bfc6..2feeb7a24 100644 --- a/test/functional/repositories_subversion_controller_test.rb +++ b/test/functional/repositories_subversion_controller_test.rb @@ -43,6 +43,42 @@ class RepositoriesSubversionControllerTest < ActionController::TestCase end if repository_configured?('subversion') + def test_get_edit + @request.session[:user_id] = 1 + @project.repository.destroy + xhr :get, :edit, :id => 'subproject1', :repository_scm => 'Subversion' + assert_response :success + assert_equal 'text/javascript', @response.content_type + assert_kind_of Repository::Subversion, assigns(:repository) + assert assigns(:repository).new_record? + assert_select_rjs :replace_html, 'tab-content-repository' + end + + def test_post_edit + @request.session[:user_id] = 1 + @project.repository.destroy + assert_difference 'Repository.count' do + xhr :post, :edit, :id => 'subproject1', :repository_scm => 'Subversion', :repository => {:url => 'file:///svn/path'} + end + assert_response :success + assert_equal 'text/javascript', @response.content_type + assert_kind_of Repository::Subversion, assigns(:repository) + assert !assigns(:repository).new_record? + assert_select_rjs :replace_html, 'tab-content-repository' + end + + def test_post_edit_existing_repository + @request.session[:user_id] = 1 + assert_no_difference 'Repository.count' do + xhr :post, :edit, :id => 'subproject1', :repository_scm => 'Subversion', :repository => {:password => 'newpassword'} + end + assert_response :success + assert_equal 'text/javascript', @response.content_type + assert_kind_of Repository::Subversion, assigns(:repository) + assert_select_rjs :replace_html, 'tab-content-repository' + assert_equal 'newpassword', Project.find('subproject1').repository.password + end + def test_show assert_equal 0, @repository.changesets.count @repository.fetch_changesets