feat&chore: impl cqrs::Querey for category and cleanup tests #35
3 changed files with 24 additions and 29 deletions
|
@ -32,6 +32,8 @@ impl CategoryIDExistsDBPort for InventoryDBPostgresAdapter {
|
||||||
mod tests {
|
mod tests {
|
||||||
use uuid::Uuid;
|
use uuid::Uuid;
|
||||||
|
|
||||||
|
use crate::inventory::adapters::output::db::postgres::category_name_exists_for_store::tests::create_dummy_category_record;
|
||||||
|
|
||||||
use super::*;
|
use super::*;
|
||||||
|
|
||||||
#[actix_rt::test]
|
#[actix_rt::test]
|
||||||
|
@ -57,19 +59,7 @@ mod tests {
|
||||||
// state doesn't exist
|
// state doesn't exist
|
||||||
assert!(!db.category_id_exists(&category).await.unwrap());
|
assert!(!db.category_id_exists(&category).await.unwrap());
|
||||||
|
|
||||||
sqlx::query!(
|
create_dummy_category_record(&category, &db).await;
|
||||||
"INSERT INTO cqrs_inventory_category_query
|
|
||||||
(version, name, description, category_id, store_id)
|
|
||||||
VALUES ($1, $2, $3, $4, $5);",
|
|
||||||
1,
|
|
||||||
category.name(),
|
|
||||||
category.description().as_ref().unwrap(),
|
|
||||||
category.category_id(),
|
|
||||||
category.store_id(),
|
|
||||||
)
|
|
||||||
.execute(&db.pool)
|
|
||||||
.await
|
|
||||||
.unwrap();
|
|
||||||
|
|
||||||
// state exists
|
// state exists
|
||||||
assert!(db.category_id_exists(&category).await.unwrap());
|
assert!(db.category_id_exists(&category).await.unwrap());
|
||||||
|
|
|
@ -34,11 +34,28 @@ impl CategoryNameExistsForStoreDBPort for InventoryDBPostgresAdapter {
|
||||||
}
|
}
|
||||||
|
|
||||||
#[cfg(test)]
|
#[cfg(test)]
|
||||||
mod tests {
|
pub mod tests {
|
||||||
|
|
||||||
use uuid::Uuid;
|
use uuid::Uuid;
|
||||||
|
|
||||||
use super::*;
|
use super::*;
|
||||||
|
|
||||||
|
pub async fn create_dummy_category_record(c: &Category, db: &InventoryDBPostgresAdapter) {
|
||||||
|
sqlx::query!(
|
||||||
|
"INSERT INTO cqrs_inventory_category_query
|
||||||
|
(version, name, description, category_id, store_id)
|
||||||
|
VALUES ($1, $2, $3, $4, $5);",
|
||||||
|
1,
|
||||||
|
c.name(),
|
||||||
|
c.description().as_ref().unwrap(),
|
||||||
|
c.category_id(),
|
||||||
|
c.store_id(),
|
||||||
|
)
|
||||||
|
.execute(&db.pool)
|
||||||
|
.await
|
||||||
|
.unwrap();
|
||||||
|
}
|
||||||
|
|
||||||
#[actix_rt::test]
|
#[actix_rt::test]
|
||||||
async fn test_postgres_category_exists() {
|
async fn test_postgres_category_exists() {
|
||||||
let category_id = Uuid::new_v4();
|
let category_id = Uuid::new_v4();
|
||||||
|
@ -62,19 +79,7 @@ mod tests {
|
||||||
// state doesn't exist
|
// state doesn't exist
|
||||||
assert!(!db.category_name_exists_for_store(&category).await.unwrap());
|
assert!(!db.category_name_exists_for_store(&category).await.unwrap());
|
||||||
|
|
||||||
sqlx::query!(
|
create_dummy_category_record(&category, &db).await;
|
||||||
"INSERT INTO cqrs_inventory_category_query
|
|
||||||
(version, name, description, category_id, store_id)
|
|
||||||
VALUES ($1, $2, $3, $4, $5);",
|
|
||||||
1,
|
|
||||||
category.name(),
|
|
||||||
category.description().as_ref().unwrap(),
|
|
||||||
category.category_id(),
|
|
||||||
category.store_id(),
|
|
||||||
)
|
|
||||||
.execute(&db.pool)
|
|
||||||
.await
|
|
||||||
.unwrap();
|
|
||||||
|
|
||||||
// state exists
|
// state exists
|
||||||
assert!(db.category_name_exists_for_store(&category).await.unwrap());
|
assert!(db.category_name_exists_for_store(&category).await.unwrap());
|
||||||
|
|
|
@ -89,7 +89,7 @@ mod aggregate_tests {
|
||||||
type CategoryTestFramework = TestFramework<Category>;
|
type CategoryTestFramework = TestFramework<Category>;
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn test_create_store() {
|
fn test_create_category() {
|
||||||
let name = "category_name";
|
let name = "category_name";
|
||||||
let description = Some("category_description".to_string());
|
let description = Some("category_description".to_string());
|
||||||
let adding_by = UUID;
|
let adding_by = UUID;
|
||||||
|
|
Loading…
Reference in a new issue