summaryrefslogtreecommitdiff
path: root/rust/schist_core/tests/models
diff options
context:
space:
mode:
authorJoe Carstairs <me@joeac.net>2024-11-17 12:16:19 +0000
committerJoe Carstairs <me@joeac.net>2024-11-17 12:20:48 +0000
commit99fa72e2b9d572e00cd232bd55a3fa24722c3134 (patch)
tree6b50ce600fffa07a0c21b7f14d2447fe5ac3c2ed /rust/schist_core/tests/models
parent10f071447594f2bdcec84a461df9ad648f71f44b (diff)
Refactors workspace
Diffstat (limited to 'rust/schist_core/tests/models')
-rw-r--r--rust/schist_core/tests/models/date_utc.rs60
-rw-r--r--rust/schist_core/tests/models/datetime_utc.rs60
-rw-r--r--rust/schist_core/tests/models/mod.rs2
3 files changed, 0 insertions, 122 deletions
diff --git a/rust/schist_core/tests/models/date_utc.rs b/rust/schist_core/tests/models/date_utc.rs
deleted file mode 100644
index d379a05..0000000
--- a/rust/schist_core/tests/models/date_utc.rs
+++ /dev/null
@@ -1,60 +0,0 @@
-use anyhow::Result;
-use schist_core::models::date_utc::DateUtc;
-use schist_core::traits::nowlike::Nowlike;
-use diesel::{sql_query, Connection, ExpressionMethods, QueryDsl, RunQueryDsl, Selectable, SelectableHelper, SqliteConnection};
-use diesel::prelude::{Insertable, Queryable};
-
-use crate::common::test_context::TestContext;
-
-diesel::table! {
- date_utc_test (id) {
- id -> Integer,
- date_utc -> Text,
- }
-}
-
-#[derive(Insertable, Queryable, Selectable, Clone)]
-#[diesel(table_name = date_utc_test)]
-pub struct DateUtcTest {
- pub id: i32,
- pub date_utc: DateUtc,
-}
-
-fn new_test_context() -> Result<TestContext> {
- let test_context = TestContext::new();
- let connection = &mut SqliteConnection::establish(&test_context.db_url)?;
- let query = "CREATE TABLE date_utc_test(id INTEGER PRIMARY KEY, date_utc TEXT);";
- sql_query(query).execute(connection)?;
- Ok(test_context)
-}
-
-fn insert_date_utc(id: i32, date_utc: &DateUtc, connection: &mut SqliteConnection) -> Result<usize> {
- let model = DateUtcTest {
- id,
- date_utc: date_utc.clone(),
- };
- let num_rows_inserted = diesel::insert_into(date_utc_test::dsl::date_utc_test)
- .values(&[model])
- .execute(connection)?;
- Ok(num_rows_inserted)
-}
-
-fn get_date_utc(id: i32, connection: &mut SqliteConnection) -> Result<DateUtcTest> {
- let date_utc: Vec<DateUtcTest> = date_utc_test::dsl::date_utc_test
- .select(DateUtcTest::as_select())
- .filter(date_utc_test::id.eq(id))
- .load(connection)?;
- Ok(date_utc[0].clone())
-}
-
-#[test]
-fn when_insert_date_utc_and_select_then_returns_original_value() -> Result<()> {
- let date_utc = DateUtc::now();
- let test_context = new_test_context()?;
- let connection = &mut SqliteConnection::establish(&test_context.db_url)?;
- let num_rows_inserted = insert_date_utc(0, &date_utc, connection)?;
- assert_eq!(num_rows_inserted, 1);
- let date_utc_returned = get_date_utc(0, connection)?;
- assert_eq!(date_utc_returned.date_utc, date_utc);
- Ok(())
-}
diff --git a/rust/schist_core/tests/models/datetime_utc.rs b/rust/schist_core/tests/models/datetime_utc.rs
deleted file mode 100644
index 5bb51c0..0000000
--- a/rust/schist_core/tests/models/datetime_utc.rs
+++ /dev/null
@@ -1,60 +0,0 @@
-use anyhow::Result;
-use schist_core::models::datetime_utc::DatetimeUtc;
-use schist_core::traits::nowlike::Nowlike;
-use diesel::{sql_query, Connection, ExpressionMethods, QueryDsl, RunQueryDsl, Selectable, SelectableHelper, SqliteConnection};
-use diesel::prelude::{Insertable, Queryable};
-
-use crate::common::test_context::TestContext;
-
-diesel::table! {
- datetime_utc_test (id) {
- id -> Integer,
- datetime_utc -> Text,
- }
-}
-
-#[derive(Insertable, Queryable, Selectable, Clone)]
-#[diesel(table_name = datetime_utc_test)]
-pub struct DatetimeUtcTest {
- pub id: i32,
- pub datetime_utc: DatetimeUtc,
-}
-
-fn new_test_context() -> Result<TestContext> {
- let test_context = TestContext::new();
- let connection = &mut SqliteConnection::establish(&test_context.db_url)?;
- let query = "CREATE TABLE datetime_utc_test(id INTEGER PRIMARY KEY, datetime_utc TEXT);";
- sql_query(query).execute(connection)?;
- Ok(test_context)
-}
-
-fn insert_datetime_utc(id: i32, datetime_utc: &DatetimeUtc, connection: &mut SqliteConnection) -> Result<usize> {
- let model = DatetimeUtcTest {
- id,
- datetime_utc: datetime_utc.clone(),
- };
- let num_rows_inserted = diesel::insert_into(datetime_utc_test::dsl::datetime_utc_test)
- .values(&[model])
- .execute(connection)?;
- Ok(num_rows_inserted)
-}
-
-fn get_datetime_utc(id: i32, connection: &mut SqliteConnection) -> Result<DatetimeUtcTest> {
- let datetime_utc: Vec<DatetimeUtcTest> = datetime_utc_test::dsl::datetime_utc_test
- .select(DatetimeUtcTest::as_select())
- .filter(datetime_utc_test::id.eq(id))
- .load(connection)?;
- Ok(datetime_utc[0].clone())
-}
-
-#[test]
-fn when_insert_datetime_utc_and_select_then_returns_original_value() -> Result<()> {
- let datetime_utc = DatetimeUtc::now();
- let test_context = new_test_context()?;
- let connection = &mut SqliteConnection::establish(&test_context.db_url)?;
- let num_rows_inserted = insert_datetime_utc(0, &datetime_utc, connection)?;
- assert_eq!(num_rows_inserted, 1);
- let datetime_utc_returned = get_datetime_utc(0, connection)?;
- assert_eq!(datetime_utc_returned.datetime_utc, datetime_utc);
- Ok(())
-}
diff --git a/rust/schist_core/tests/models/mod.rs b/rust/schist_core/tests/models/mod.rs
deleted file mode 100644
index d0d0e4a..0000000
--- a/rust/schist_core/tests/models/mod.rs
+++ /dev/null
@@ -1,2 +0,0 @@
-mod date_utc;
-mod datetime_utc;