Use #assert_select instead of #assert_tag.
git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@11066 e93f8b46-1217-0410-a6f0-8f06a7374b81
This commit is contained in:
@@ -38,34 +38,21 @@ class ContextMenusControllerTest < ActionController::TestCase
|
||||
get :issues, :ids => [1]
|
||||
assert_response :success
|
||||
assert_template 'context_menu'
|
||||
assert_tag :tag => 'a', :content => 'Edit',
|
||||
:attributes => { :href => '/issues/1/edit',
|
||||
:class => 'icon-edit' }
|
||||
assert_tag :tag => 'a', :content => 'Closed',
|
||||
:attributes => { :href => '/issues/bulk_update?ids%5B%5D=1&issue%5Bstatus_id%5D=5',
|
||||
:class => '' }
|
||||
assert_tag :tag => 'a', :content => 'Immediate',
|
||||
:attributes => { :href => '/issues/bulk_update?ids%5B%5D=1&issue%5Bpriority_id%5D=8',
|
||||
:class => '' }
|
||||
assert_no_tag :tag => 'a', :content => 'Inactive Priority'
|
||||
# Versions
|
||||
assert_tag :tag => 'a', :content => '2.0',
|
||||
:attributes => { :href => '/issues/bulk_update?ids%5B%5D=1&issue%5Bfixed_version_id%5D=3',
|
||||
:class => '' }
|
||||
assert_tag :tag => 'a', :content => 'eCookbook Subproject 1 - 2.0',
|
||||
:attributes => { :href => '/issues/bulk_update?ids%5B%5D=1&issue%5Bfixed_version_id%5D=4',
|
||||
:class => '' }
|
||||
|
||||
assert_tag :tag => 'a', :content => 'Dave Lopper',
|
||||
:attributes => { :href => '/issues/bulk_update?ids%5B%5D=1&issue%5Bassigned_to_id%5D=3',
|
||||
:class => '' }
|
||||
assert_tag :tag => 'a', :content => 'Copy',
|
||||
:attributes => { :href => '/projects/ecookbook/issues/1/copy',
|
||||
:class => 'icon-copy' }
|
||||
assert_no_tag :tag => 'a', :content => 'Move'
|
||||
assert_tag :tag => 'a', :content => 'Delete',
|
||||
:attributes => { :href => '/issues?ids%5B%5D=1',
|
||||
:class => 'icon-del' }
|
||||
assert_select 'a.icon-edit[href=?]', '/issues/1/edit', :text => 'Edit'
|
||||
assert_select 'a.icon-copy[href=?]', '/projects/ecookbook/issues/1/copy', :text => 'Copy'
|
||||
assert_select 'a.icon-del[href=?]', '/issues?ids%5B%5D=1', :text => 'Delete'
|
||||
|
||||
# Statuses
|
||||
assert_select 'a[href=?]', '/issues/bulk_update?ids%5B%5D=1&issue%5Bstatus_id%5D=5', :text => 'Closed'
|
||||
assert_select 'a[href=?]', '/issues/bulk_update?ids%5B%5D=1&issue%5Bpriority_id%5D=8', :text => 'Immediate'
|
||||
# No inactive priorities
|
||||
assert_select 'a', :text => /Inactive Priority/, :count => 0
|
||||
# Versions
|
||||
assert_select 'a[href=?]', '/issues/bulk_update?ids%5B%5D=1&issue%5Bfixed_version_id%5D=3', :text => '2.0'
|
||||
assert_select 'a[href=?]', '/issues/bulk_update?ids%5B%5D=1&issue%5Bfixed_version_id%5D=4', :text => 'eCookbook Subproject 1 - 2.0'
|
||||
# Assignees
|
||||
assert_select 'a[href=?]', '/issues/bulk_update?ids%5B%5D=1&issue%5Bassigned_to_id%5D=3', :text => 'Dave Lopper'
|
||||
end
|
||||
|
||||
def test_context_menu_one_issue_by_anonymous
|
||||
@@ -86,25 +73,14 @@ class ContextMenusControllerTest < ActionController::TestCase
|
||||
assert_equal [1, 2], assigns(:issues).map(&:id).sort
|
||||
|
||||
ids = assigns(:issues).map(&:id).sort.map {|i| "ids%5B%5D=#{i}"}.join('&')
|
||||
assert_tag :tag => 'a', :content => 'Edit',
|
||||
:attributes => { :href => "/issues/bulk_edit?#{ids}",
|
||||
:class => 'icon-edit' }
|
||||
assert_tag :tag => 'a', :content => 'Closed',
|
||||
:attributes => { :href => "/issues/bulk_update?#{ids}&issue%5Bstatus_id%5D=5",
|
||||
:class => '' }
|
||||
assert_tag :tag => 'a', :content => 'Immediate',
|
||||
:attributes => { :href => "/issues/bulk_update?#{ids}&issue%5Bpriority_id%5D=8",
|
||||
:class => '' }
|
||||
assert_tag :tag => 'a', :content => 'Dave Lopper',
|
||||
:attributes => { :href => "/issues/bulk_update?#{ids}&issue%5Bassigned_to_id%5D=3",
|
||||
:class => '' }
|
||||
assert_tag :tag => 'a', :content => 'Copy',
|
||||
:attributes => { :href => "/issues/bulk_edit?copy=1&#{ids}",
|
||||
:class => 'icon-copy' }
|
||||
assert_no_tag :tag => 'a', :content => 'Move'
|
||||
assert_tag :tag => 'a', :content => 'Delete',
|
||||
:attributes => { :href => "/issues?#{ids}",
|
||||
:class => 'icon-del' }
|
||||
|
||||
assert_select 'a.icon-edit[href=?]', "/issues/bulk_edit?#{ids}", :text => 'Edit'
|
||||
assert_select 'a.icon-copy[href=?]', "/issues/bulk_edit?copy=1&#{ids}", :text => 'Copy'
|
||||
assert_select 'a.icon-del[href=?]', "/issues?#{ids}", :text => 'Delete'
|
||||
|
||||
assert_select 'a[href=?]', "/issues/bulk_update?#{ids}&issue%5Bstatus_id%5D=5", :text => 'Closed'
|
||||
assert_select 'a[href=?]', "/issues/bulk_update?#{ids}&issue%5Bpriority_id%5D=8", :text => 'Immediate'
|
||||
assert_select 'a[href=?]', "/issues/bulk_update?#{ids}&issue%5Bassigned_to_id%5D=3", :text => 'Dave Lopper'
|
||||
end
|
||||
|
||||
def test_context_menu_multiple_issues_of_different_projects
|
||||
@@ -116,21 +92,13 @@ class ContextMenusControllerTest < ActionController::TestCase
|
||||
assert_equal [1, 2, 6], assigns(:issues).map(&:id).sort
|
||||
|
||||
ids = assigns(:issues).map(&:id).sort.map {|i| "ids%5B%5D=#{i}"}.join('&')
|
||||
assert_tag :tag => 'a', :content => 'Edit',
|
||||
:attributes => { :href => "/issues/bulk_edit?#{ids}",
|
||||
:class => 'icon-edit' }
|
||||
assert_tag :tag => 'a', :content => 'Closed',
|
||||
:attributes => { :href => "/issues/bulk_update?#{ids}&issue%5Bstatus_id%5D=5",
|
||||
:class => '' }
|
||||
assert_tag :tag => 'a', :content => 'Immediate',
|
||||
:attributes => { :href => "/issues/bulk_update?#{ids}&issue%5Bpriority_id%5D=8",
|
||||
:class => '' }
|
||||
assert_tag :tag => 'a', :content => 'John Smith',
|
||||
:attributes => { :href => "/issues/bulk_update?#{ids}&issue%5Bassigned_to_id%5D=2",
|
||||
:class => '' }
|
||||
assert_tag :tag => 'a', :content => 'Delete',
|
||||
:attributes => { :href => "/issues?#{ids}",
|
||||
:class => 'icon-del' }
|
||||
|
||||
assert_select 'a.icon-edit[href=?]', "/issues/bulk_edit?#{ids}", :text => 'Edit'
|
||||
assert_select 'a.icon-del[href=?]', "/issues?#{ids}", :text => 'Delete'
|
||||
|
||||
assert_select 'a[href=?]', "/issues/bulk_update?#{ids}&issue%5Bstatus_id%5D=5", :text => 'Closed'
|
||||
assert_select 'a[href=?]', "/issues/bulk_update?#{ids}&issue%5Bpriority_id%5D=8", :text => 'Immediate'
|
||||
assert_select 'a[href=?]', "/issues/bulk_update?#{ids}&issue%5Bassigned_to_id%5D=2", :text => 'John Smith'
|
||||
end
|
||||
|
||||
def test_context_menu_should_include_list_custom_fields
|
||||
@@ -139,17 +107,14 @@ class ContextMenusControllerTest < ActionController::TestCase
|
||||
@request.session[:user_id] = 2
|
||||
get :issues, :ids => [1]
|
||||
|
||||
assert_tag 'a',
|
||||
:content => 'List',
|
||||
:attributes => {:href => '#'},
|
||||
:sibling => {:tag => 'ul', :children => {:count => 3}}
|
||||
|
||||
assert_tag 'a',
|
||||
:content => 'Foo',
|
||||
:attributes => {:href => "/issues/bulk_update?ids%5B%5D=1&issue%5Bcustom_field_values%5D%5B#{field.id}%5D=Foo"}
|
||||
assert_tag 'a',
|
||||
:content => 'none',
|
||||
:attributes => {:href => "/issues/bulk_update?ids%5B%5D=1&issue%5Bcustom_field_values%5D%5B#{field.id}%5D="}
|
||||
assert_select "li.cf_#{field.id}" do
|
||||
assert_select 'a[href=#]', :text => 'List'
|
||||
assert_select 'ul' do
|
||||
assert_select 'a', 3
|
||||
assert_select 'a[href=?]', "/issues/bulk_update?ids%5B%5D=1&issue%5Bcustom_field_values%5D%5B#{field.id}%5D=Foo", :text => 'Foo'
|
||||
assert_select 'a[href=?]', "/issues/bulk_update?ids%5B%5D=1&issue%5Bcustom_field_values%5D%5B#{field.id}%5D=", :text => 'none'
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def test_context_menu_should_not_include_null_value_for_required_custom_fields
|
||||
@@ -158,10 +123,13 @@ class ContextMenusControllerTest < ActionController::TestCase
|
||||
@request.session[:user_id] = 2
|
||||
get :issues, :ids => [1, 2]
|
||||
|
||||
assert_tag 'a',
|
||||
:content => 'List',
|
||||
:attributes => {:href => '#'},
|
||||
:sibling => {:tag => 'ul', :children => {:count => 2}}
|
||||
assert_select "li.cf_#{field.id}" do
|
||||
assert_select 'a[href=#]', :text => 'List'
|
||||
assert_select 'ul' do
|
||||
assert_select 'a', 2
|
||||
assert_select 'a', :text => 'none', :count => 0
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def test_context_menu_on_single_issue_should_select_current_custom_field_value
|
||||
@@ -173,13 +141,13 @@ class ContextMenusControllerTest < ActionController::TestCase
|
||||
@request.session[:user_id] = 2
|
||||
get :issues, :ids => [1]
|
||||
|
||||
assert_tag 'a',
|
||||
:content => 'List',
|
||||
:attributes => {:href => '#'},
|
||||
:sibling => {:tag => 'ul', :children => {:count => 3}}
|
||||
assert_tag 'a',
|
||||
:content => 'Bar',
|
||||
:attributes => {:class => /icon-checked/}
|
||||
assert_select "li.cf_#{field.id}" do
|
||||
assert_select 'a[href=#]', :text => 'List'
|
||||
assert_select 'ul' do
|
||||
assert_select 'a', 3
|
||||
assert_select 'a.icon-checked', :text => 'Bar'
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def test_context_menu_should_include_bool_custom_fields
|
||||
@@ -188,14 +156,15 @@ class ContextMenusControllerTest < ActionController::TestCase
|
||||
@request.session[:user_id] = 2
|
||||
get :issues, :ids => [1]
|
||||
|
||||
assert_tag 'a',
|
||||
:content => 'Bool',
|
||||
:attributes => {:href => '#'},
|
||||
:sibling => {:tag => 'ul', :children => {:count => 3}}
|
||||
|
||||
assert_tag 'a',
|
||||
:content => 'Yes',
|
||||
:attributes => {:href => "/issues/bulk_update?ids%5B%5D=1&issue%5Bcustom_field_values%5D%5B#{field.id}%5D=1"}
|
||||
assert_select "li.cf_#{field.id}" do
|
||||
assert_select 'a[href=#]', :text => 'Bool'
|
||||
assert_select 'ul' do
|
||||
assert_select 'a', 3
|
||||
assert_select 'a[href=?]', "/issues/bulk_update?ids%5B%5D=1&issue%5Bcustom_field_values%5D%5B#{field.id}%5D=0", :text => 'No'
|
||||
assert_select 'a[href=?]', "/issues/bulk_update?ids%5B%5D=1&issue%5Bcustom_field_values%5D%5B#{field.id}%5D=1", :text => 'Yes'
|
||||
assert_select 'a[href=?]', "/issues/bulk_update?ids%5B%5D=1&issue%5Bcustom_field_values%5D%5B#{field.id}%5D=", :text => 'none'
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def test_context_menu_should_include_user_custom_fields
|
||||
@@ -204,14 +173,14 @@ class ContextMenusControllerTest < ActionController::TestCase
|
||||
@request.session[:user_id] = 2
|
||||
get :issues, :ids => [1]
|
||||
|
||||
assert_tag 'a',
|
||||
:content => 'User',
|
||||
:attributes => {:href => '#'},
|
||||
:sibling => {:tag => 'ul', :children => {:count => Project.find(1).members.count + 1}}
|
||||
|
||||
assert_tag 'a',
|
||||
:content => 'John Smith',
|
||||
:attributes => {:href => "/issues/bulk_update?ids%5B%5D=1&issue%5Bcustom_field_values%5D%5B#{field.id}%5D=2"}
|
||||
assert_select "li.cf_#{field.id}" do
|
||||
assert_select 'a[href=#]', :text => 'User'
|
||||
assert_select 'ul' do
|
||||
assert_select 'a', Project.find(1).members.count + 1
|
||||
assert_select 'a[href=?]', "/issues/bulk_update?ids%5B%5D=1&issue%5Bcustom_field_values%5D%5B#{field.id}%5D=2", :text => 'John Smith'
|
||||
assert_select 'a[href=?]', "/issues/bulk_update?ids%5B%5D=1&issue%5Bcustom_field_values%5D%5B#{field.id}%5D=", :text => 'none'
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def test_context_menu_should_include_version_custom_fields
|
||||
@@ -219,14 +188,14 @@ class ContextMenusControllerTest < ActionController::TestCase
|
||||
@request.session[:user_id] = 2
|
||||
get :issues, :ids => [1]
|
||||
|
||||
assert_tag 'a',
|
||||
:content => 'Version',
|
||||
:attributes => {:href => '#'},
|
||||
:sibling => {:tag => 'ul', :children => {:count => Project.find(1).shared_versions.count + 1}}
|
||||
|
||||
assert_tag 'a',
|
||||
:content => '2.0',
|
||||
:attributes => {:href => "/issues/bulk_update?ids%5B%5D=1&issue%5Bcustom_field_values%5D%5B#{field.id}%5D=3"}
|
||||
assert_select "li.cf_#{field.id}" do
|
||||
assert_select 'a[href=#]', :text => 'Version'
|
||||
assert_select 'ul' do
|
||||
assert_select 'a', Project.find(1).shared_versions.count + 1
|
||||
assert_select 'a[href=?]', "/issues/bulk_update?ids%5B%5D=1&issue%5Bcustom_field_values%5D%5B#{field.id}%5D=3", :text => '2.0'
|
||||
assert_select 'a[href=?]', "/issues/bulk_update?ids%5B%5D=1&issue%5Bcustom_field_values%5D%5B#{field.id}%5D=", :text => 'none'
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def test_context_menu_by_assignable_user_should_include_assigned_to_me_link
|
||||
@@ -235,9 +204,7 @@ class ContextMenusControllerTest < ActionController::TestCase
|
||||
assert_response :success
|
||||
assert_template 'context_menu'
|
||||
|
||||
assert_tag :tag => 'a', :content => / me /,
|
||||
:attributes => { :href => '/issues/bulk_update?ids%5B%5D=1&issue%5Bassigned_to_id%5D=2',
|
||||
:class => '' }
|
||||
assert_select 'a[href=?]', '/issues/bulk_update?ids%5B%5D=1&issue%5Bassigned_to_id%5D=2', :text => / me /
|
||||
end
|
||||
|
||||
def test_context_menu_should_propose_shared_versions_for_issues_from_different_projects
|
||||
@@ -249,7 +216,7 @@ class ContextMenusControllerTest < ActionController::TestCase
|
||||
assert_template 'context_menu'
|
||||
|
||||
assert_include version, assigns(:versions)
|
||||
assert_tag :tag => 'a', :content => 'eCookbook - Shared'
|
||||
assert_select 'a', :text => 'eCookbook - Shared'
|
||||
end
|
||||
|
||||
def test_context_menu_issue_visibility
|
||||
@@ -258,16 +225,16 @@ class ContextMenusControllerTest < ActionController::TestCase
|
||||
assert_template 'context_menu'
|
||||
assert_equal [1], assigns(:issues).collect(&:id)
|
||||
end
|
||||
|
||||
|
||||
def test_time_entries_context_menu
|
||||
@request.session[:user_id] = 2
|
||||
get :time_entries, :ids => [1, 2]
|
||||
assert_response :success
|
||||
assert_template 'time_entries'
|
||||
assert_tag 'a', :content => 'Edit'
|
||||
assert_no_tag 'a', :content => 'Edit', :attributes => {:class => /disabled/}
|
||||
|
||||
assert_select 'a:not(.disabled)', :text => 'Edit'
|
||||
end
|
||||
|
||||
|
||||
def test_time_entries_context_menu_without_edit_permission
|
||||
@request.session[:user_id] = 2
|
||||
Role.find_by_name('Manager').remove_permission! :edit_time_entries
|
||||
@@ -275,6 +242,6 @@ class ContextMenusControllerTest < ActionController::TestCase
|
||||
get :time_entries, :ids => [1, 2]
|
||||
assert_response :success
|
||||
assert_template 'time_entries'
|
||||
assert_tag 'a', :content => 'Edit', :attributes => {:class => /disabled/}
|
||||
assert_select 'a.disabled', :text => 'Edit'
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user