|
|
@@ -1376,7 +1376,7 @@ class QueryTest < ActiveSupport::TestCase |
|
|
|
assert_equal Project.where(parent_id: bookmarks).ids.sort, result.map(&:id).sort |
|
|
|
end |
|
|
|
|
|
|
|
def test_filter_watched_issues |
|
|
|
def test_filter_watched_issues_by_user |
|
|
|
User.current = User.find(1) |
|
|
|
query = |
|
|
|
IssueQuery.new( |
|
|
@@ -1384,7 +1384,7 @@ class QueryTest < ActiveSupport::TestCase |
|
|
|
:filters => { |
|
|
|
'watcher_id' => { |
|
|
|
:operator => '=', |
|
|
|
:values => ['me'] |
|
|
|
:values => [User.current.id] |
|
|
|
} |
|
|
|
} |
|
|
|
) |
|
|
@@ -1394,13 +1394,17 @@ class QueryTest < ActiveSupport::TestCase |
|
|
|
assert_equal Issue.visible.watched_by(User.current).sort_by(&:id), result.sort_by(&:id) |
|
|
|
end |
|
|
|
|
|
|
|
def test_filter_watched_issues_with_groups_also |
|
|
|
def test_filter_watched_issues_by_me_should_include_user_groups |
|
|
|
user = User.find(2) |
|
|
|
group = Group.find(10) |
|
|
|
group.users << user |
|
|
|
Issue.find(3).add_watcher(user) |
|
|
|
Issue.find(7).add_watcher(group) |
|
|
|
manager = Role.find(1) |
|
|
|
# view_issue_watchers permission is not required to see watched issues by current user or user groups |
|
|
|
manager.remove_permission! :view_issue_watchers |
|
|
|
User.current = user |
|
|
|
|
|
|
|
query = |
|
|
|
IssueQuery.new( |
|
|
|
:name => '_', |
|
|
@@ -1412,6 +1416,7 @@ class QueryTest < ActiveSupport::TestCase |
|
|
|
} |
|
|
|
) |
|
|
|
result = find_issues_with_query(query) |
|
|
|
|
|
|
|
assert_not_nil result |
|
|
|
assert !result.empty? |
|
|
|
assert_equal [3, 7], result.sort_by(&:id).pluck(:id) |