test: shared factories and command builders

This commit is contained in:
2026-10-25 22:08:17 +01:00
parent 2ac1d4e0cf
commit 51d92e08a7
58 changed files with 784 additions and 1344 deletions

View File

@@ -1,6 +1,5 @@
use super::*;
use domain::models::UserRole;
use domain::value_objects::{Email, PasswordHash, Username};
use domain::testing::test_user;
use sqlx::SqlitePool;
async fn setup() -> (SqlitePool, SqliteUserRepository) {
@@ -55,12 +54,7 @@ async fn find_by_id_returns_user_when_found() {
#[tokio::test]
async fn update_profile_persists_bio_and_avatar() {
let (_, repo) = setup().await;
let user = domain::models::User::new(
Email::new("test@example.com".to_string()).unwrap(),
Username::new("testuser".to_string()).unwrap(),
PasswordHash::new("hash".to_string()).unwrap(),
UserRole::Standard,
);
let user = test_user("testuser");
repo.save(&user).await.unwrap();
repo.update_profile(
@@ -82,12 +76,7 @@ async fn update_profile_persists_bio_and_avatar() {
#[tokio::test]
async fn update_profile_clears_fields_with_none() {
let (_, repo) = setup().await;
let user = domain::models::User::new(
Email::new("test2@example.com".to_string()).unwrap(),
Username::new("testuser2".to_string()).unwrap(),
PasswordHash::new("hash".to_string()).unwrap(),
UserRole::Standard,
);
let user = test_user("testuser2");
repo.save(&user).await.unwrap();
repo.update_profile(
user.id(),