feat: move 'get_sqlite_conn' to util.rs

This commit is contained in:
Sebastian Pravda 2022-11-14 23:14:55 +01:00
parent f1692df760
commit 8579cc9987
No known key found for this signature in database
GPG key ID: F3BC84F08EFA3F57
6 changed files with 35 additions and 86 deletions

View file

@ -19,19 +19,7 @@ mod tests {
use sea_orm::{ActiveModelTrait, DbConn, Set};
use crate::Query;
#[cfg(test)]
async fn get_memory_sqlite_connection() -> DbConn {
let base_url = "sqlite::memory:";
let db: DbConn = Database::connect(base_url).await.unwrap();
let schema = Schema::new(DbBackend::Sqlite);
let stmt: TableCreateStatement = schema.create_table_from_entity(candidate::Entity);
db.execute(db.get_database_backend().build(&stmt))
.await
.unwrap();
db
}
use crate::util::get_memory_sqlite_connection;
#[tokio::test]
async fn test_find_candidate_by_id() {

View file

@ -24,24 +24,4 @@ impl Query {
.all(db)
.await
}
}
#[cfg(test)]
mod tests {
use entity::candidate;
use sea_orm::DbConn;
use sea_orm::{sea_query::TableCreateStatement, ConnectionTrait, Database, DbBackend, Schema};
#[cfg(test)]
async fn get_memory_sqlite_connection() -> DbConn {
let base_url = "sqlite::memory:";
let db: DbConn = Database::connect(base_url).await.unwrap();
let schema = Schema::new(DbBackend::Sqlite);
let stmt: TableCreateStatement = schema.create_table_from_entity(candidate::Entity);
db.execute(db.get_database_backend().build(&stmt))
.await
.unwrap();
db
}
}
}

View file

@ -4,6 +4,7 @@ pub mod filetype;
pub mod services;
pub mod error;
pub mod candidate_details;
pub mod util;
pub use database::mutation::*;
pub use database::query::*;

View file

@ -270,6 +270,7 @@ impl CandidateService {
mod tests {
use sea_orm::{Database, DbConn};
use crate::util::get_memory_sqlite_connection;
use crate::{crypto, services::candidate_service::CandidateService, Mutation};
use super::EncryptedApplicationDetails;
@ -290,32 +291,6 @@ mod tests {
assert!(!CandidateService::is_application_id_valid(101));
}
#[cfg(test)]
async fn get_memory_sqlite_connection() -> DbConn {
use entity::{admin, candidate, parent};
use sea_orm::Schema;
use sea_orm::{sea_query::TableCreateStatement, ConnectionTrait, DbBackend};
let base_url = "sqlite::memory:";
let db: DbConn = Database::connect(base_url).await.unwrap();
let schema = Schema::new(DbBackend::Sqlite);
let stmt: TableCreateStatement = schema.create_table_from_entity(candidate::Entity);
let stmt2: TableCreateStatement = schema.create_table_from_entity(admin::Entity);
let stmt3: TableCreateStatement = schema.create_table_from_entity(parent::Entity);
db.execute(db.get_database_backend().build(&stmt))
.await
.unwrap();
db.execute(db.get_database_backend().build(&stmt2))
.await
.unwrap();
db.execute(db.get_database_backend().build(&stmt3))
.await
.unwrap();
db
}
#[tokio::test]
async fn test_encrypt_decrypt_private_key_with_passphrase() {
let db = get_memory_sqlite_connection().await;

View file

@ -171,34 +171,9 @@ mod tests {
use crate::{
crypto,
services::{session_service::SessionService, application_service::ApplicationService},
services::{session_service::SessionService, application_service::ApplicationService}, util::get_memory_sqlite_connection,
};
#[cfg(test)]
async fn get_memory_sqlite_connection() -> DbConn {
let base_url = "sqlite::memory:";
let db: DbConn = Database::connect(base_url).await.unwrap();
let schema = Schema::new(DbBackend::Sqlite);
let stmt: TableCreateStatement = schema.create_table_from_entity(candidate::Entity);
let stmt2: TableCreateStatement = schema.create_table_from_entity(admin::Entity);
let stmt3: TableCreateStatement = schema.create_table_from_entity(session::Entity);
let stmt4: TableCreateStatement = schema.create_table_from_entity(parent::Entity);
db.execute(db.get_database_backend().build(&stmt))
.await
.unwrap();
db.execute(db.get_database_backend().build(&stmt2))
.await
.unwrap();
db.execute(db.get_database_backend().build(&stmt3))
.await
.unwrap();
db.execute(db.get_database_backend().build(&stmt4))
.await
.unwrap();
db
}
#[tokio::test]
async fn test_create_candidate() {
const SECRET: &str = "Tajny_kod";

30
core/src/util.rs Normal file
View file

@ -0,0 +1,30 @@
use crate::sea_orm::DbConn;
#[cfg(test)]
pub async fn get_memory_sqlite_connection() -> DbConn {
use entity::{admin, candidate, parent, session};
use sea_orm::{Schema, Database};
use sea_orm::{sea_query::TableCreateStatement, ConnectionTrait, DbBackend};
let base_url = "sqlite::memory:";
let db: DbConn = Database::connect(base_url).await.unwrap();
let schema = Schema::new(DbBackend::Sqlite);
let stmt: TableCreateStatement = schema.create_table_from_entity(candidate::Entity);
let stmt2: TableCreateStatement = schema.create_table_from_entity(admin::Entity);
let stmt3: TableCreateStatement = schema.create_table_from_entity(session::Entity);
let stmt4: TableCreateStatement = schema.create_table_from_entity(parent::Entity);
db.execute(db.get_database_backend().build(&stmt))
.await
.unwrap();
db.execute(db.get_database_backend().build(&stmt2))
.await
.unwrap();
db.execute(db.get_database_backend().build(&stmt3))
.await
.unwrap();
db.execute(db.get_database_backend().build(&stmt4))
.await
.unwrap();
db
}