]> source.dussan.org Git - redmine.git/commitdiff
Adds functional tests for repository creation/update.
authorJean-Philippe Lang <jp_lang@yahoo.fr>
Sat, 3 Dec 2011 08:47:40 +0000 (08:47 +0000)
committerJean-Philippe Lang <jp_lang@yahoo.fr>
Sat, 3 Dec 2011 08:47:40 +0000 (08:47 +0000)
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@8036 e93f8b46-1217-0410-a6f0-8f06a7374b81

test/functional/repositories_subversion_controller_test.rb

index ba6c6bfc6df13b1ee32c6d0c07c9d4103d50c89d..2feeb7a24b7b883ce36cadf221f1f6fa34a7c5ec 100644 (file)
@@ -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