assert_equal [3, 7], result.sort_by(&:id).pluck(:id)
end
+ def test_filter_watched_issues_by_group_should_include_only_projects_with_permission
+ user = User.find(2)
+ group = Group.find(10)
+
+ Issue.find(4).add_watcher(group)
+ Issue.find(2).add_watcher(group)
+
+ developer = Role.find(2)
+ developer.remove_permission! :view_issue_watchers
+
+ User.current = user
+
+ query =
+ IssueQuery.new(
+ :name => '_',
+ :filters => {
+ 'watcher_id' => {
+ :operator => '=',
+ :values => [group.id]
+ }
+ }
+ )
+ result = find_issues_with_query(query)
+
+ assert_not_nil result
+
+ # "Developer" role doesn't have the view_issue_watchers permission of issue's #4 project (OnlineStore).
+ assert_equal [2], result.pluck(:id)
+ end
+
def test_filter_unwatched_issues
User.current = User.find(1)
query =