refac: DELETE /v1/user/{id}?expected_role_id=N, user.remove audit event, 409 target_role_not_found, GetAll returns its error, Own-scope visibility filter moved into repos, JSON tags removed from use-case types

This commit is contained in:
Florian Sylvain committed 2026-10-29 16:28:25 +01:00
1 parent 5d6f378fce
commit b39a41be88
124 files changed
+8816 -523

No files matched your search

+23
View File
@@ -53,6 +53,8 @@ type mockUserRepo struct {
updateRoleCalls int
transferCalls int
beforeUpdateRole func()
deleteIfRoleCalls int
beforeDeleteIfRole func()
beforeTransfer func()
beforeClearVerification func()
knownRoles *mockRoleRepo
@@ -162,6 +164,27 @@ func (m *mockUserRepo) Delete(id uint32) error {
return nil
}
func (m *mockUserRepo) DeleteIfRole(id uint32, roleID uint32) error {
m.deleteIfRoleCalls++
if err := m.fail.trigger("DeleteIfRole"); err != nil {
return err
}
if m.beforeDeleteIfRole != nil {
hook := m.beforeDeleteIfRole
m.beforeDeleteIfRole = nil
hook()
}
stored, ok := m.users[id]
if !ok {
return user.ErrUserNotFound
}
if stored.RoleID != roleID {
return user.ErrRoleChanged
}
delete(m.users, id)
return nil
}
func (m *mockUserRepo) UpdateVerificationStatus(userId uint32, isVerified bool) (user.User, error) {
if err := m.fail.trigger("UpdateVerificationStatus"); err != nil {
return user.User{}, err