From 61a49afaf7268346d78c8d2f062a15d72d2eb2c3 Mon Sep 17 00:00:00 2001 From: Simon Bruder Date: Thu, 25 Jul 2024 20:00:58 +0200 Subject: [PATCH] Make item (class) delete fail on invalid ID --- ...2e735de7230a596fa2f2ba472bed6a9b4a75c.json | 14 ------------ ...48ca0da2204c64200ffa77a51f0c580f9ab87.json | 14 ------------ ...1b4554a536b93a24db7401f5a88a0cf60ef4d.json | 22 +++++++++++++++++++ ...665437291f11e2796db9ec7711fc07c39090b.json | 22 +++++++++++++++++++ src/database/item_classes/delete.rs | 4 ++-- src/database/items/delete.rs | 4 ++-- 6 files changed, 48 insertions(+), 32 deletions(-) delete mode 100644 .sqlx/query-08cce122c8eb9b390e5411cc08d2e735de7230a596fa2f2ba472bed6a9b4a75c.json delete mode 100644 .sqlx/query-7a811ef54e617ed88ef9c7be88b48ca0da2204c64200ffa77a51f0c580f9ab87.json create mode 100644 .sqlx/query-87067a7bda5e82c793d4e03cf041b4554a536b93a24db7401f5a88a0cf60ef4d.json create mode 100644 .sqlx/query-9dabae553c2a843ed1a96233954665437291f11e2796db9ec7711fc07c39090b.json diff --git a/.sqlx/query-08cce122c8eb9b390e5411cc08d2e735de7230a596fa2f2ba472bed6a9b4a75c.json b/.sqlx/query-08cce122c8eb9b390e5411cc08d2e735de7230a596fa2f2ba472bed6a9b4a75c.json deleted file mode 100644 index 7132e02..0000000 --- a/.sqlx/query-08cce122c8eb9b390e5411cc08d2e735de7230a596fa2f2ba472bed6a9b4a75c.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "db_name": "PostgreSQL", - "query": "DELETE FROM items WHERE id = $1", - "describe": { - "columns": [], - "parameters": { - "Left": [ - "Uuid" - ] - }, - "nullable": [] - }, - "hash": "08cce122c8eb9b390e5411cc08d2e735de7230a596fa2f2ba472bed6a9b4a75c" -} diff --git a/.sqlx/query-7a811ef54e617ed88ef9c7be88b48ca0da2204c64200ffa77a51f0c580f9ab87.json b/.sqlx/query-7a811ef54e617ed88ef9c7be88b48ca0da2204c64200ffa77a51f0c580f9ab87.json deleted file mode 100644 index f1d4f96..0000000 --- a/.sqlx/query-7a811ef54e617ed88ef9c7be88b48ca0da2204c64200ffa77a51f0c580f9ab87.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "db_name": "PostgreSQL", - "query": "DELETE FROM item_classes WHERE id = $1", - "describe": { - "columns": [], - "parameters": { - "Left": [ - "Uuid" - ] - }, - "nullable": [] - }, - "hash": "7a811ef54e617ed88ef9c7be88b48ca0da2204c64200ffa77a51f0c580f9ab87" -} diff --git a/.sqlx/query-87067a7bda5e82c793d4e03cf041b4554a536b93a24db7401f5a88a0cf60ef4d.json b/.sqlx/query-87067a7bda5e82c793d4e03cf041b4554a536b93a24db7401f5a88a0cf60ef4d.json new file mode 100644 index 0000000..008fb72 --- /dev/null +++ b/.sqlx/query-87067a7bda5e82c793d4e03cf041b4554a536b93a24db7401f5a88a0cf60ef4d.json @@ -0,0 +1,22 @@ +{ + "db_name": "PostgreSQL", + "query": "DELETE FROM item_classes WHERE id = $1 RETURNING id", + "describe": { + "columns": [ + { + "ordinal": 0, + "name": "id", + "type_info": "Uuid" + } + ], + "parameters": { + "Left": [ + "Uuid" + ] + }, + "nullable": [ + false + ] + }, + "hash": "87067a7bda5e82c793d4e03cf041b4554a536b93a24db7401f5a88a0cf60ef4d" +} diff --git a/.sqlx/query-9dabae553c2a843ed1a96233954665437291f11e2796db9ec7711fc07c39090b.json b/.sqlx/query-9dabae553c2a843ed1a96233954665437291f11e2796db9ec7711fc07c39090b.json new file mode 100644 index 0000000..8228f92 --- /dev/null +++ b/.sqlx/query-9dabae553c2a843ed1a96233954665437291f11e2796db9ec7711fc07c39090b.json @@ -0,0 +1,22 @@ +{ + "db_name": "PostgreSQL", + "query": "DELETE FROM items WHERE id = $1 RETURNING id", + "describe": { + "columns": [ + { + "ordinal": 0, + "name": "id", + "type_info": "Uuid" + } + ], + "parameters": { + "Left": [ + "Uuid" + ] + }, + "nullable": [ + false + ] + }, + "hash": "9dabae553c2a843ed1a96233954665437291f11e2796db9ec7711fc07c39090b" +} diff --git a/src/database/item_classes/delete.rs b/src/database/item_classes/delete.rs index a88126d..1136949 100644 --- a/src/database/item_classes/delete.rs +++ b/src/database/item_classes/delete.rs @@ -9,8 +9,8 @@ use super::ItemClassRepository; impl ItemClassRepository { pub async fn delete(&self, id: Uuid) -> sqlx::Result<()> { - query!("DELETE FROM item_classes WHERE id = $1", id) - .execute(&self.pool) + query!("DELETE FROM item_classes WHERE id = $1 RETURNING id", id) + .fetch_one(&self.pool) .await?; Ok(()) diff --git a/src/database/items/delete.rs b/src/database/items/delete.rs index 5ad5649..758a8d4 100644 --- a/src/database/items/delete.rs +++ b/src/database/items/delete.rs @@ -9,8 +9,8 @@ use super::ItemRepository; impl ItemRepository { pub async fn delete(&self, id: Uuid) -> sqlx::Result<()> { - query!("DELETE FROM items WHERE id = $1", id) - .execute(&self.pool) + query!("DELETE FROM items WHERE id = $1 RETURNING id", id) + .fetch_one(&self.pool) .await?; Ok(())