##// END OF EJS Templates
Speeds up rendering of the project list for users who belong to hundreds of projects....
Speeds up rendering of the project list for users who belong to hundreds of projects. git-svn-id: http://svn.redmine.org/redmine/trunk@16123 e93f8b46-1217-0410-a6f0-8f06a7374b81

File last commit:

r15343:00f709ad4d5f
r15741:f8df935dcada
Show More
repositories_darcs_controller_test.rb
157 lines | 5.4 KiB | text/x-ruby | RubyLexer
/ test / functional / repositories_darcs_controller_test.rb
Toshi MARUYAMA
scm: darcs: remove trailing white-spaces from functional test....
r5789 # Redmine - project management software
Jean-Philippe Lang
Updates copyright for 2016....
r14856 # Copyright (C) 2006-2016 Jean-Philippe Lang
Jean-Philippe Lang
Merged Git support branch (r1200 to r1226)....
r1222 #
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
Toshi MARUYAMA
scm: darcs: remove trailing white-spaces from functional test....
r5789 #
Jean-Philippe Lang
Merged Git support branch (r1200 to r1226)....
r1222 # This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
Toshi MARUYAMA
scm: darcs: remove trailing white-spaces from functional test....
r5789 #
Jean-Philippe Lang
Merged Git support branch (r1200 to r1226)....
r1222 # You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
Jean-Baptiste Barth
Use absolute paths in test/**/* requires for Ruby 1.9.2 compatibility. #4050...
r4395 require File.expand_path('../../test_helper', __FILE__)
Jean-Philippe Lang
Merged Git support branch (r1200 to r1226)....
r1222
Jean-Philippe Lang
Adds our own class for controller tests....
r15279 class RepositoriesDarcsControllerTest < Redmine::ControllerTest
Jean-Philippe Lang
Test for repository edit and cleanup....
r7932 tests RepositoriesController
Jean-Philippe Lang
Add support for multiple email addresses per user (#4244)....
r13504 fixtures :projects, :users, :email_addresses, :roles, :members, :member_roles,
Toshi MARUYAMA
scm: darcs: replace RAILS_ROOT to Rails.root in functional test....
r5929 :repositories, :enabled_modules
Jean-Philippe Lang
Merged Git support branch (r1200 to r1226)....
r1222
Toshi MARUYAMA
scm: darcs: replace RAILS_ROOT to Rails.root in functional test....
r5929 REPOSITORY_PATH = Rails.root.join('tmp/test/darcs_repository').to_s
Toshi MARUYAMA
scm: darcs: refactor functional test....
r4859 PRJ_ID = 3
Toshi MARUYAMA
scm: darcs: define NUM_REV as the number of test repository revisions at functional test...
r7027 NUM_REV = 6
Jean-Philippe Lang
Merged Git support branch (r1200 to r1226)....
r1222
def setup
User.current = nil
Toshi MARUYAMA
scm: darcs: refactor functional test....
r4859 @project = Project.find(PRJ_ID)
Toshi MARUYAMA
scm: add feature of per project repository log encoding setting (#1735)....
r4862 @repository = Repository::Darcs.create(
Toshi MARUYAMA
scm: darcs: code clean up functional test....
r6112 :project => @project,
:url => REPOSITORY_PATH,
:log_encoding => 'UTF-8'
)
Toshi MARUYAMA
scm: darcs: refactor functional test....
r4859 assert @repository
Jean-Philippe Lang
Merged Git support branch (r1200 to r1226)....
r1222 end
Toshi MARUYAMA
scm: darcs: refactor functional test....
r4859
Jean-Philippe Lang
Merged Git support branch (r1200 to r1226)....
r1222 if File.directory?(REPOSITORY_PATH)
Jean-Philippe Lang
Resourcified repositories for CRUD operations to prepare for multiple SCM per project (#779)....
r8528 def test_get_new
Jean-Philippe Lang
Test for repository edit and cleanup....
r7932 @request.session[:user_id] = 1
@project.repository.destroy
Jean-Philippe Lang
Resourcified repositories for CRUD operations to prepare for multiple SCM per project (#779)....
r8528 get :new, :project_id => 'subproject1', :repository_scm => 'Darcs'
Jean-Philippe Lang
Test for repository edit and cleanup....
r7932 assert_response :success
Jean-Philippe Lang
Removes calls to #assert_template and #assigns in functional tests....
r15343 assert_select 'select[name=?]', 'repository_scm' do
assert_select 'option[value=?][selected=selected]', 'Darcs'
end
Jean-Philippe Lang
Test for repository edit and cleanup....
r7932 end
Jean-Philippe Lang
Merged Git support branch (r1200 to r1226)....
r1222 def test_browse_root
Toshi MARUYAMA
Rails3: scm: darcs: fix error of test_browse_root at functional test...
r7028 assert_equal 0, @repository.changesets.count
Toshi MARUYAMA
scm: darcs: refactor functional test....
r4859 @repository.fetch_changesets
Toshi MARUYAMA
Rails3: scm: darcs: fix error of test_browse_root at functional test...
r7028 @project.reload
assert_equal NUM_REV, @repository.changesets.count
Toshi MARUYAMA
scm: darcs: refactor functional test....
r4859 get :show, :id => PRJ_ID
Jean-Philippe Lang
Removes calls to #assert_template and #assigns in functional tests....
r15343 assert_select 'table.entries tbody' do
assert_select 'tr', 3
assert_select 'tr.dir td.filename a', :text => 'images'
assert_select 'tr.dir td.filename a', :text => 'sources'
assert_select 'tr.file td.filename a', :text => 'README'
end
Jean-Philippe Lang
Merged Git support branch (r1200 to r1226)....
r1222 end
Toshi MARUYAMA
scm: darcs: refactor functional test....
r4859
Jean-Philippe Lang
Merged Git support branch (r1200 to r1226)....
r1222 def test_browse_directory
Toshi MARUYAMA
Rails3: scm: darcs: fix error of test_browse_directory at functional test...
r7036 assert_equal 0, @repository.changesets.count
Toshi MARUYAMA
scm: darcs: refactor functional test....
r4859 @repository.fetch_changesets
Toshi MARUYAMA
Rails3: scm: darcs: fix error of test_browse_directory at functional test...
r7036 @project.reload
assert_equal NUM_REV, @repository.changesets.count
Toshi MARUYAMA
Rails3: test: scm: darcs: use "repository_path_hash" for path param...
r8815 get :show, :id => PRJ_ID, :path => repository_path_hash(['images'])[:param]
Jean-Philippe Lang
Merged Git support branch (r1200 to r1226)....
r1222 assert_response :success
Jean-Philippe Lang
Removes calls to #assert_template and #assigns in functional tests....
r15343 assert_select 'table.entries tbody' do
assert_select 'tr', 2
assert_select 'tr.file td.filename a', :text => 'delete.png'
assert_select 'tr.file td.filename a', :text => 'edit.png'
end
Jean-Philippe Lang
Merged Git support branch (r1200 to r1226)....
r1222 end
Toshi MARUYAMA
scm: darcs: refactor functional test....
r4859
Jean-Philippe Lang
Fix repository browsing at given revision for various scm and add tests for this....
r1314 def test_browse_at_given_revision
Toshi MARUYAMA
Rails3: scm: darcs: fix error of test_browse_at_given_revision at functional test...
r7037 assert_equal 0, @repository.changesets.count
Toshi MARUYAMA
scm: darcs: refactor functional test....
r4859 @repository.fetch_changesets
Toshi MARUYAMA
Rails3: scm: darcs: fix error of test_browse_at_given_revision at functional test...
r7037 @project.reload
assert_equal NUM_REV, @repository.changesets.count
Toshi MARUYAMA
Rails3: test: scm: darcs: use "repository_path_hash" for path param...
r8815 get :show, :id => PRJ_ID, :path => repository_path_hash(['images'])[:param],
:rev => 1
Jean-Philippe Lang
Fix repository browsing at given revision for various scm and add tests for this....
r1314 assert_response :success
Jean-Philippe Lang
Removes calls to #assert_template and #assigns in functional tests....
r15343 assert_select 'table.entries tbody' do
assert_select 'tr', 1
assert_select 'tr.file td.filename a', :text => 'delete.png'
end
Jean-Philippe Lang
Fix repository browsing at given revision for various scm and add tests for this....
r1314 end
Toshi MARUYAMA
scm: darcs: refactor functional test....
r4859
Jean-Philippe Lang
Merged Git support branch (r1200 to r1226)....
r1222 def test_changes
Toshi MARUYAMA
Rails3: scm: darcs: fix error of test_changes at functional test...
r7038 assert_equal 0, @repository.changesets.count
Toshi MARUYAMA
scm: darcs: refactor functional test....
r4859 @repository.fetch_changesets
Toshi MARUYAMA
Rails3: scm: darcs: fix error of test_changes at functional test...
r7038 @project.reload
assert_equal NUM_REV, @repository.changesets.count
Toshi MARUYAMA
Rails3: test: scm: darcs: use "repository_path_hash" for path param...
r8815 get :changes, :id => PRJ_ID,
:path => repository_path_hash(['images', 'edit.png'])[:param]
Jean-Philippe Lang
Merged Git support branch (r1200 to r1226)....
r1222 assert_response :success
Jean-Philippe Lang
Replaced remaining #assert_tag with #assert_select....
r13242 assert_select 'h2', :text => /edit.png/
Jean-Philippe Lang
Merged Git support branch (r1200 to r1226)....
r1222 end
Toshi MARUYAMA
scm: darcs: refactor functional test....
r4859
Jean-Philippe Lang
Merged Git support branch (r1200 to r1226)....
r1222 def test_diff
Toshi MARUYAMA
Rails3: scm: darcs: fix error of test_diff at functional test...
r7039 assert_equal 0, @repository.changesets.count
Toshi MARUYAMA
scm: darcs: refactor functional test....
r4859 @repository.fetch_changesets
Toshi MARUYAMA
Rails3: scm: darcs: fix error of test_diff at functional test...
r7039 @project.reload
assert_equal NUM_REV, @repository.changesets.count
Jean-Philippe Lang
Merged Git support branch (r1200 to r1226)....
r1222 # Full diff of changeset 5
Toshi MARUYAMA
scm: darcs: run both of "inline" and "side by side" diff in functional test_diff test....
r5856 ['inline', 'sbs'].each do |dt|
get :diff, :id => PRJ_ID, :rev => 5, :type => dt
assert_response :success
# Line 22 removed
Jean-Philippe Lang
Upgrade to Rails 4.2.0 (#14534)....
r13510 assert_select 'th.line-num:contains(22) ~ td.diff_out', :text => /def remove/
Toshi MARUYAMA
scm: darcs: run both of "inline" and "side by side" diff in functional test_diff test....
r5856 end
Jean-Philippe Lang
Merged Git support branch (r1200 to r1226)....
r1222 end
Toshi MARUYAMA
scm: darcs: add functional test of destroying valid repository (#6713, #4725)....
r6113
def test_destroy_valid_repository
@request.session[:user_id] = 1 # admin
Toshi MARUYAMA
Rails3: scm: darcs: fix error of test_destroy_valid_repository at functional test...
r7040 assert_equal 0, @repository.changesets.count
Toshi MARUYAMA
scm: darcs: add functional test of destroying valid repository (#6713, #4725)....
r6113 @repository.fetch_changesets
Toshi MARUYAMA
Rails3: scm: darcs: fix error of test_destroy_valid_repository at functional test...
r7040 @project.reload
assert_equal NUM_REV, @repository.changesets.count
Toshi MARUYAMA
scm: darcs: add functional test of destroying valid repository (#6713, #4725)....
r6113
Jean-Philippe Lang
Resourcified repositories for CRUD operations to prepare for multiple SCM per project (#779)....
r8528 assert_difference 'Repository.count', -1 do
delete :destroy, :id => @repository.id
end
Toshi MARUYAMA
scm: darcs: add functional test of destroying valid repository (#6713, #4725)....
r6113 assert_response 302
@project.reload
assert_nil @project.repository
end
Toshi MARUYAMA
scm: darcs: add functional test of destroying invalid repository (#6713, #4725)....
r6114
def test_destroy_invalid_repository
@request.session[:user_id] = 1 # admin
Jean-Philippe Lang
Resourcified repositories for CRUD operations to prepare for multiple SCM per project (#779)....
r8528 @project.repository.destroy
@repository = Repository::Darcs.create!(
Toshi MARUYAMA
scm: darcs: add functional test of destroying invalid repository (#6713, #4725)....
r6114 :project => @project,
:url => "/invalid",
:log_encoding => 'UTF-8'
)
@repository.fetch_changesets
Toshi MARUYAMA
Rails3: scm: darcs: fix error of test_destroy_invalid_repository at functional test...
r7041 @project.reload
Toshi MARUYAMA
scm: darcs: add functional test of destroying invalid repository (#6713, #4725)....
r6114 assert_equal 0, @repository.changesets.count
Jean-Philippe Lang
Resourcified repositories for CRUD operations to prepare for multiple SCM per project (#779)....
r8528 assert_difference 'Repository.count', -1 do
delete :destroy, :id => @repository.id
end
Toshi MARUYAMA
scm: darcs: add functional test of destroying invalid repository (#6713, #4725)....
r6114 assert_response 302
@project.reload
assert_nil @project.repository
end
Jean-Philippe Lang
Merged Git support branch (r1200 to r1226)....
r1222 else
puts "Darcs test repository NOT FOUND. Skipping functional tests !!!"
def test_fake; assert true end
end
end