Revision 38f854cd
Added by Tomer Brisker almost 6 years ago
test/models/usergroup_test.rb | ||
---|---|---|
|
||
test 'should audit when a child-usergroup is assigned to a parent-usergroup' do
|
||
recent_audit = @usergroup.audits.last
|
||
audited_changes = recent_audit.audited_changes[:usergroups]
|
||
audited_changes = recent_audit.audited_changes[:usergroup_ids]
|
||
assert audited_changes, 'No audits found for usergroups'
|
||
assert_empty audited_changes.first
|
||
assert_equal @child_usergroup.name, audited_changes.last
|
||
assert_equal [@child_usergroup.id], audited_changes.last
|
||
end
|
||
|
||
test 'should audit when a child-usergroup is removed/de-assigned from a parent-usergroup' do
|
||
@usergroup.usergroup_ids = []
|
||
@usergroup.save
|
||
recent_audit = @usergroup.audits.last
|
||
audited_changes = recent_audit.audited_changes[:usergroups]
|
||
audited_changes = recent_audit.audited_changes[:usergroup_ids]
|
||
assert audited_changes, 'No audits found for usergroups'
|
||
assert_equal @child_usergroup.name, audited_changes.first
|
||
assert_equal [@child_usergroup.id], audited_changes.first
|
||
assert_empty audited_changes.last
|
||
end
|
||
end
|
||
... | ... | |
|
||
test 'should audit when a role is assigned to a usergroup' do
|
||
recent_audit = @usergroup.audits.last
|
||
audited_changes = recent_audit.audited_changes[:roles]
|
||
audited_changes = recent_audit.audited_changes[:role_ids]
|
||
assert audited_changes, 'No audits found for user-roles'
|
||
assert_empty audited_changes.first
|
||
assert_equal @role.name, audited_changes.last
|
||
assert_equal [@role.id], audited_changes.last
|
||
end
|
||
|
||
test 'should audit when a role is removed/de-assigned from a usergroup' do
|
||
@usergroup.role_ids = []
|
||
@usergroup.save
|
||
recent_audit = @usergroup.audits.last
|
||
audited_changes = recent_audit.audited_changes[:roles]
|
||
audited_changes = recent_audit.audited_changes[:role_ids]
|
||
assert audited_changes, 'No audits found for usergroup-roles'
|
||
assert_equal @role.name, audited_changes.first
|
||
assert_equal [@role.id], audited_changes.first
|
||
assert_empty audited_changes.last
|
||
end
|
||
end
|
||
... | ... | |
|
||
test 'should audit when a user is assigned to a usergroup' do
|
||
recent_audit = @usergroup.audits.last
|
||
audited_changes = recent_audit.audited_changes[:users]
|
||
audited_changes = recent_audit.audited_changes[:user_ids]
|
||
assert audited_changes, 'No audits found for users'
|
||
assert_empty audited_changes.first
|
||
assert_equal @user.name, audited_changes.last
|
||
assert_equal [@user.id], audited_changes.last
|
||
end
|
||
|
||
test 'should audit when a user is removed/de-assigned from a usergroup' do
|
||
@usergroup.user_ids = []
|
||
@usergroup.save
|
||
recent_audit = @usergroup.audits.last
|
||
audited_changes = recent_audit.audited_changes[:users]
|
||
audited_changes = recent_audit.audited_changes[:user_ids]
|
||
assert audited_changes, 'No audits found for users'
|
||
assert_equal @user.name, audited_changes.first
|
||
assert_equal [@user.id], audited_changes.first
|
||
assert_empty audited_changes.last
|
||
end
|
||
end
|
Also available in: Unified diff
Fixes #23965 - Only save ids for association audits (#5753)
Otherwise, we have issues when trying to check revisions of the audit
since it will fail trying to assign a string to an attribute that
expects an object id.