feat(backend): scope files to users with FK user_id, rename storage_path to storage_key for clarity

This commit is contained in:
2026-05-28 21:24:12 +03:00
parent 70f839698a
commit 2501f6ca67
5 changed files with 51 additions and 24 deletions

View File

@@ -5,11 +5,10 @@ use argon2::{
use axum::{Json, Router, extract::State, http::StatusCode, routing::post};
use rand::RngExt;
use serde::Deserialize;
use sqlx::PgPool;
use tower_cookies::{Cookie, Cookies};
use crate::{error::LoftError, model::UserRepository, web::AUTH_TOKEN};
pub fn routes_auth(user_repository: UserRepository) -> Router {
Router::new()
.route("/login", post(login))
@@ -118,7 +117,7 @@ mod tests {
web::{AUTH_TOKEN, routes_login::routes_auth},
};
async fn truncate_users(pool: &PgPool) {
async fn truncate_users(pool: &PgPool) {
sqlx::query!("TRUNCATE TABLE users CASCADE")
.execute(pool)
.await
@@ -153,6 +152,9 @@ mod tests {
#[tokio::test]
#[serial_test::serial]
async fn test_routes_login_wrong_credentials() {
let user_repository = user_repository().await;
truncate_sessions(&user_repository.pool).await;
truncate_users(&user_repository.pool).await;
let server = test_server().await;
let response = server
.post("/api/auth/login")
@@ -162,6 +164,8 @@ mod tests {
}))
.await;
response.assert_status_unauthorized();
truncate_sessions(&user_repository.pool).await;
truncate_users(&user_repository.pool).await;
}
#[tokio::test]
@@ -186,6 +190,8 @@ mod tests {
.await;
response.assert_status_ok();
truncate_sessions(&user_repository.pool).await;
truncate_users(&user_repository.pool).await;
}
#[tokio::test]
@@ -218,6 +224,8 @@ mod tests {
let logout_response = server.post("/api/auth/logout").add_cookie(cookie).await;
logout_response.assert_status_ok();
truncate_sessions(&user_repository.pool).await;
truncate_users(&user_repository.pool).await;
}
#[tokio::test]
@@ -234,5 +242,7 @@ mod tests {
.await;
register_response.assert_status(StatusCode::CREATED);
truncate_sessions(&user_repository.pool).await;
truncate_users(&user_repository.pool).await;
}
}