refac: hardening pass with multiple overhauls
This commit is contained in:
1 parent
b0f7b7892b
commit
da36c78bc0
28 files changed
+1375
-39
No files matched your search
@@ -0,0 +1,40 @@
|
||||
package test
|
||||
|
||||
import (
|
||||
"RenewCMS/internal/domain/user"
|
||||
"RenewCMS/internal/infrastructure/persistence/models"
|
||||
persistence "RenewCMS/internal/infrastructure/persistence/repositories"
|
||||
"errors"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestUserRepositoryDelete(t *testing.T) {
|
||||
t.Run("Deleting a user removes only that row", func(t *testing.T) {
|
||||
db := openRealSqlite(t)
|
||||
for _, name := range []string{"one", "two", "three"} {
|
||||
seedRealUser(t, db, models.User{Username: name, Password: "x", Email: name + "@renew.example"})
|
||||
}
|
||||
repo := persistence.NewUserRepository(db)
|
||||
|
||||
if err := repo.Delete(2); err != nil {
|
||||
t.Fatalf("delete: %v", err)
|
||||
}
|
||||
|
||||
if _, err := repo.Get(2); !errors.Is(err, user.ErrUserNotFound) {
|
||||
t.Errorf("user 2 must be gone, got %v", err)
|
||||
}
|
||||
for _, id := range []uint32{1, 3} {
|
||||
if _, err := repo.Get(id); err != nil {
|
||||
t.Errorf("user %d must remain, got %v", id, err)
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
t.Run("Deleting a missing user reports not found", func(t *testing.T) {
|
||||
repo := persistence.NewUserRepository(openRealSqlite(t))
|
||||
|
||||
if err := repo.Delete(99); !errors.Is(err, user.ErrUserNotFound) {
|
||||
t.Errorf("expected ErrUserNotFound, got %v", err)
|
||||
}
|
||||
})
|
||||
}
|
||||
Reference in new issue
Block a user