Defect #28243 » 28243.patch
app/models/principal.rb | ||
---|---|---|
103 | 103 |
end) |
104 | 104 |
# Principals that are not members of projects |
105 | 105 |
scope :not_member_of, (lambda do |projects| |
106 |
projects = [projects] unless projects.is_a?(Array)
|
|
107 |
if projects.empty?
|
|
106 |
projects = [projects] if projects.is_a?(Project)
|
|
107 |
if projects.blank?
|
|
108 | 108 |
where("1=0") |
109 | 109 |
else |
110 | 110 |
ids = projects.map(&:id) |
test/unit/principal_test.rb | ||
---|---|---|
76 | 76 |
end |
77 | 77 |
end |
78 | 78 | |
79 |
def test_not_member_of_scope_should_accept_active_record_relation |
|
80 |
projects = Project.where(id: [1, 2]) |
|
81 |
expected = (Principal.all - projects.map(&:memberships).flatten.map(&:principal)).sort |
|
82 |
assert_equal expected, Principal.not_member_of(projects).sort |
|
83 |
end |
|
84 | ||
79 | 85 |
def test_not_member_of_scope_should_be_empty_for_no_projects |
80 | 86 |
assert_equal [], Principal.not_member_of([]).sort |
81 | 87 |
end |
- « Previous
- 1
- 2
- Next »