summaryrefslogtreecommitdiff
path: root/src/message/handlers
diff options
context:
space:
mode:
authorOwen Jacobson <owen@grimoire.ca>2025-10-27 18:03:36 -0400
committerOwen Jacobson <owen@grimoire.ca>2025-10-28 01:43:09 -0400
commitc2a3a010c67776b9a459d7ba0930630ff25a3a51 (patch)
tree446a7598080f23eec28fab01c7d2d0fc5f30f47d /src/message/handlers
parent38ac83aef9667f1a4fe86e03e53565376081179f (diff)
Convert the `Messages` component to a freestanding struct.
Diffstat (limited to 'src/message/handlers')
-rw-r--r--src/message/handlers/delete/mod.rs10
-rw-r--r--src/message/handlers/delete/test.rs12
2 files changed, 12 insertions, 10 deletions
diff --git a/src/message/handlers/delete/mod.rs b/src/message/handlers/delete/mod.rs
index 3e9a212..c09a752 100644
--- a/src/message/handlers/delete/mod.rs
+++ b/src/message/handlers/delete/mod.rs
@@ -5,10 +5,12 @@ use axum::{
};
use crate::{
- app::App,
clock::RequestedAt,
error::{Internal, NotFound},
- message::{self, app::DeleteError},
+ message::{
+ self,
+ app::{DeleteError, Messages},
+ },
token::extract::Identity,
};
@@ -16,12 +18,12 @@ use crate::{
mod test;
pub async fn handler(
- State(app): State<App>,
+ State(messages): State<Messages>,
Path(message): Path<message::Id>,
RequestedAt(deleted_at): RequestedAt,
identity: Identity,
) -> Result<Response, Error> {
- app.messages()
+ messages
.delete(&identity.login, &message, &deleted_at)
.await?;
diff --git a/src/message/handlers/delete/test.rs b/src/message/handlers/delete/test.rs
index 05d9344..198728b 100644
--- a/src/message/handlers/delete/test.rs
+++ b/src/message/handlers/delete/test.rs
@@ -16,7 +16,7 @@ pub async fn delete_message() {
// Send the request
let response = super::handler(
- State(app.clone()),
+ State(app.messages()),
Path(message.id.clone()),
fixtures::now(),
sender,
@@ -52,7 +52,7 @@ pub async fn delete_invalid_message_id() {
let deleter = fixtures::identity::create(&app, &fixtures::now()).await;
let message = fixtures::message::fictitious();
let super::Error(error) = super::handler(
- State(app.clone()),
+ State(app.messages()),
Path(message.clone()),
fixtures::now(),
deleter,
@@ -83,7 +83,7 @@ pub async fn delete_deleted() {
// Send the request
let super::Error(error) = super::handler(
- State(app.clone()),
+ State(app.messages()),
Path(message.id.clone()),
fixtures::now(),
sender,
@@ -114,7 +114,7 @@ pub async fn delete_expired() {
// Send the request
let super::Error(error) = super::handler(
- State(app.clone()),
+ State(app.messages()),
Path(message.id.clone()),
fixtures::now(),
sender,
@@ -150,7 +150,7 @@ pub async fn delete_purged() {
let deleter = fixtures::identity::create(&app, &fixtures::now()).await;
let super::Error(error) = super::handler(
- State(app.clone()),
+ State(app.messages()),
Path(message.id.clone()),
fixtures::now(),
deleter,
@@ -176,7 +176,7 @@ pub async fn delete_not_sender() {
let deleter = fixtures::identity::create(&app, &fixtures::now()).await;
let super::Error(error) = super::handler(
- State(app.clone()),
+ State(app.messages()),
Path(message.id.clone()),
fixtures::now(),
deleter.clone(),