treewide: address all clippy lints
Signed-off-by: NotAShelf <raf@notashelf.dev> Change-Id: I5cf55cc4cb558c3f9f764c71224e87176a6a6964
This commit is contained in:
parent
967d51e867
commit
0ca92f2710
63 changed files with 1788 additions and 1087 deletions
|
|
@ -21,8 +21,7 @@ async fn test_database_connection() -> anyhow::Result<()> {
|
|||
Err(e) => {
|
||||
println!(
|
||||
"Skipping test_database_connection: no PostgreSQL instance available \
|
||||
- {}",
|
||||
e
|
||||
- {e}"
|
||||
);
|
||||
return Ok(());
|
||||
},
|
||||
|
|
@ -38,7 +37,7 @@ async fn test_database_connection() -> anyhow::Result<()> {
|
|||
assert!(!info.version.is_empty());
|
||||
|
||||
// Test pool stats
|
||||
let stats = db.get_pool_stats().await;
|
||||
let stats = db.get_pool_stats();
|
||||
assert!(stats.size >= 1);
|
||||
|
||||
db.close().await;
|
||||
|
|
@ -58,8 +57,7 @@ async fn test_database_health_check() -> anyhow::Result<()> {
|
|||
Err(e) => {
|
||||
println!(
|
||||
"Skipping test_database_health_check: no PostgreSQL instance \
|
||||
available - {}",
|
||||
e
|
||||
available - {e}"
|
||||
);
|
||||
return Ok(());
|
||||
},
|
||||
|
|
@ -83,8 +81,7 @@ async fn test_connection_info() -> anyhow::Result<()> {
|
|||
Ok(pool) => pool,
|
||||
Err(e) => {
|
||||
println!(
|
||||
"Skipping test_connection_info: no PostgreSQL instance available - {}",
|
||||
e
|
||||
"Skipping test_connection_info: no PostgreSQL instance available - {e}"
|
||||
);
|
||||
return Ok(());
|
||||
},
|
||||
|
|
@ -104,8 +101,7 @@ async fn test_connection_info() -> anyhow::Result<()> {
|
|||
Ok(db) => db,
|
||||
Err(e) => {
|
||||
println!(
|
||||
"Skipping test_connection_info: database connection failed - {}",
|
||||
e
|
||||
"Skipping test_connection_info: database connection failed - {e}"
|
||||
);
|
||||
pool.close().await;
|
||||
return Ok(());
|
||||
|
|
@ -141,14 +137,13 @@ async fn test_pool_stats() -> anyhow::Result<()> {
|
|||
Ok(db) => db,
|
||||
Err(e) => {
|
||||
println!(
|
||||
"Skipping test_pool_stats: no PostgreSQL instance available - {}",
|
||||
e
|
||||
"Skipping test_pool_stats: no PostgreSQL instance available - {e}"
|
||||
);
|
||||
return Ok(());
|
||||
},
|
||||
};
|
||||
|
||||
let stats = db.get_pool_stats().await;
|
||||
let stats = db.get_pool_stats();
|
||||
|
||||
assert!(stats.size >= 1);
|
||||
assert!(stats.idle >= 1);
|
||||
|
|
@ -173,12 +168,12 @@ async fn test_database_config_validation() -> anyhow::Result<()> {
|
|||
assert!(config.validate().is_ok());
|
||||
|
||||
// Invalid URL
|
||||
let mut config = config.clone();
|
||||
let mut config = config;
|
||||
config.url = "invalid://url".to_string();
|
||||
assert!(config.validate().is_err());
|
||||
|
||||
// Empty URL
|
||||
config.url = "".to_string();
|
||||
config.url = String::new();
|
||||
assert!(config.validate().is_err());
|
||||
|
||||
// Zero max connections
|
||||
|
|
|
|||
|
|
@ -20,12 +20,9 @@ async fn test_database_connection_full() -> anyhow::Result<()> {
|
|||
};
|
||||
|
||||
// Try to connect, skip test if database is not available
|
||||
let db = match Database::new(config).await {
|
||||
Ok(db) => db,
|
||||
Err(_) => {
|
||||
println!("Skipping database test: no PostgreSQL instance available");
|
||||
return Ok(());
|
||||
},
|
||||
let Ok(db) = Database::new(config).await else {
|
||||
println!("Skipping database test: no PostgreSQL instance available");
|
||||
return Ok(());
|
||||
};
|
||||
|
||||
// Test health check
|
||||
|
|
@ -38,7 +35,7 @@ async fn test_database_connection_full() -> anyhow::Result<()> {
|
|||
assert!(!info.version.is_empty());
|
||||
|
||||
// Test pool stats
|
||||
let stats = db.get_pool_stats().await;
|
||||
let stats = db.get_pool_stats();
|
||||
assert!(stats.size >= 1);
|
||||
assert!(stats.idle >= 1);
|
||||
assert_eq!(stats.size, stats.idle + stats.active);
|
||||
|
|
@ -67,21 +64,21 @@ fn test_config_loading() -> anyhow::Result<()> {
|
|||
#[test]
|
||||
fn test_config_validation() -> anyhow::Result<()> {
|
||||
// Test valid config
|
||||
let config = Config::default();
|
||||
assert!(config.validate().is_ok());
|
||||
let base_config = Config::default();
|
||||
assert!(base_config.validate().is_ok());
|
||||
|
||||
// Test invalid database URL
|
||||
let mut config = config.clone();
|
||||
let mut config = base_config.clone();
|
||||
config.database.url = "invalid://url".to_string();
|
||||
assert!(config.validate().is_err());
|
||||
|
||||
// Test invalid port
|
||||
let mut config = config.clone();
|
||||
let mut config = base_config.clone();
|
||||
config.server.port = 0;
|
||||
assert!(config.validate().is_err());
|
||||
|
||||
// Test invalid connections
|
||||
let mut config = config.clone();
|
||||
let mut config = base_config.clone();
|
||||
config.database.max_connections = 0;
|
||||
assert!(config.validate().is_err());
|
||||
|
||||
|
|
@ -90,12 +87,12 @@ fn test_config_validation() -> anyhow::Result<()> {
|
|||
assert!(config.validate().is_err());
|
||||
|
||||
// Test invalid evaluator settings
|
||||
let mut config = config.clone();
|
||||
let mut config = base_config.clone();
|
||||
config.evaluator.poll_interval = 0;
|
||||
assert!(config.validate().is_err());
|
||||
|
||||
// Test invalid queue runner settings
|
||||
let mut config = config.clone();
|
||||
let mut config = base_config;
|
||||
config.queue_runner.workers = 0;
|
||||
assert!(config.validate().is_err());
|
||||
|
||||
|
|
@ -109,12 +106,12 @@ fn test_database_config_validation() -> anyhow::Result<()> {
|
|||
assert!(config.validate().is_ok());
|
||||
|
||||
// Test invalid URL
|
||||
let mut config = config.clone();
|
||||
let mut config = config;
|
||||
config.url = "invalid://url".to_string();
|
||||
assert!(config.validate().is_err());
|
||||
|
||||
// Test empty URL
|
||||
config.url = "".to_string();
|
||||
config.url = String::new();
|
||||
assert!(config.validate().is_err());
|
||||
|
||||
// Test zero max connections
|
||||
|
|
|
|||
|
|
@ -1,15 +1,12 @@
|
|||
//! Integration tests for repository CRUD operations.
|
||||
//! Requires TEST_DATABASE_URL to be set to a PostgreSQL connection string.
|
||||
//! Requires `TEST_DATABASE_URL` to be set to a `PostgreSQL` connection string.
|
||||
|
||||
use fc_common::{models::*, repo};
|
||||
|
||||
async fn get_pool() -> Option<sqlx::PgPool> {
|
||||
let url = match std::env::var("TEST_DATABASE_URL") {
|
||||
Ok(url) => url,
|
||||
Err(_) => {
|
||||
println!("Skipping repo test: TEST_DATABASE_URL not set");
|
||||
return None;
|
||||
},
|
||||
let Ok(url) = std::env::var("TEST_DATABASE_URL") else {
|
||||
println!("Skipping repo test: TEST_DATABASE_URL not set");
|
||||
return None;
|
||||
};
|
||||
|
||||
let pool = sqlx::postgres::PgPoolOptions::new()
|
||||
|
|
@ -85,7 +82,7 @@ async fn create_test_build(
|
|||
evaluation_id: eval_id,
|
||||
job_name: job_name.to_string(),
|
||||
drv_path: drv_path.to_string(),
|
||||
system: system.map(|s| s.to_string()),
|
||||
system: system.map(std::string::ToString::to_string),
|
||||
outputs: None,
|
||||
is_aggregate: None,
|
||||
constituents: None,
|
||||
|
|
@ -98,9 +95,8 @@ async fn create_test_build(
|
|||
|
||||
#[tokio::test]
|
||||
async fn test_project_crud() {
|
||||
let pool = match get_pool().await {
|
||||
Some(p) => p,
|
||||
None => return,
|
||||
let Some(pool) = get_pool().await else {
|
||||
return;
|
||||
};
|
||||
|
||||
// Create
|
||||
|
|
@ -148,9 +144,8 @@ async fn test_project_crud() {
|
|||
|
||||
#[tokio::test]
|
||||
async fn test_project_unique_constraint() {
|
||||
let pool = match get_pool().await {
|
||||
Some(p) => p,
|
||||
None => return,
|
||||
let Some(pool) = get_pool().await else {
|
||||
return;
|
||||
};
|
||||
|
||||
let name = format!("unique-test-{}", uuid::Uuid::new_v4());
|
||||
|
|
@ -176,9 +171,8 @@ async fn test_project_unique_constraint() {
|
|||
|
||||
#[tokio::test]
|
||||
async fn test_jobset_crud() {
|
||||
let pool = match get_pool().await {
|
||||
Some(p) => p,
|
||||
None => return,
|
||||
let Some(pool) = get_pool().await else {
|
||||
return;
|
||||
};
|
||||
|
||||
let project = create_test_project(&pool, "jobset").await;
|
||||
|
|
@ -242,9 +236,8 @@ async fn test_jobset_crud() {
|
|||
|
||||
#[tokio::test]
|
||||
async fn test_evaluation_and_build_lifecycle() {
|
||||
let pool = match get_pool().await {
|
||||
Some(p) => p,
|
||||
None => return,
|
||||
let Some(pool) = get_pool().await else {
|
||||
return;
|
||||
};
|
||||
|
||||
// Set up project and jobset
|
||||
|
|
@ -391,9 +384,8 @@ async fn test_evaluation_and_build_lifecycle() {
|
|||
|
||||
#[tokio::test]
|
||||
async fn test_not_found_errors() {
|
||||
let pool = match get_pool().await {
|
||||
Some(p) => p,
|
||||
None => return,
|
||||
let Some(pool) = get_pool().await else {
|
||||
return;
|
||||
};
|
||||
|
||||
let fake_id = uuid::Uuid::new_v4();
|
||||
|
|
@ -423,9 +415,8 @@ async fn test_not_found_errors() {
|
|||
|
||||
#[tokio::test]
|
||||
async fn test_batch_get_completed_by_drv_paths() {
|
||||
let pool = match get_pool().await {
|
||||
Some(p) => p,
|
||||
None => return,
|
||||
let Some(pool) = get_pool().await else {
|
||||
return;
|
||||
};
|
||||
|
||||
let project = create_test_project(&pool, "batch-drv").await;
|
||||
|
|
@ -493,9 +484,8 @@ async fn test_batch_get_completed_by_drv_paths() {
|
|||
|
||||
#[tokio::test]
|
||||
async fn test_batch_check_deps_for_builds() {
|
||||
let pool = match get_pool().await {
|
||||
Some(p) => p,
|
||||
None => return,
|
||||
let Some(pool) = get_pool().await else {
|
||||
return;
|
||||
};
|
||||
|
||||
let project = create_test_project(&pool, "batch-deps").await;
|
||||
|
|
@ -568,9 +558,8 @@ async fn test_batch_check_deps_for_builds() {
|
|||
|
||||
#[tokio::test]
|
||||
async fn test_list_filtered_with_system_filter() {
|
||||
let pool = match get_pool().await {
|
||||
Some(p) => p,
|
||||
None => return,
|
||||
let Some(pool) = get_pool().await else {
|
||||
return;
|
||||
};
|
||||
|
||||
let project = create_test_project(&pool, "filter-sys").await;
|
||||
|
|
@ -641,9 +630,8 @@ async fn test_list_filtered_with_system_filter() {
|
|||
|
||||
#[tokio::test]
|
||||
async fn test_list_filtered_with_job_name_filter() {
|
||||
let pool = match get_pool().await {
|
||||
Some(p) => p,
|
||||
None => return,
|
||||
let Some(pool) = get_pool().await else {
|
||||
return;
|
||||
};
|
||||
|
||||
let project = create_test_project(&pool, "filter-job").await;
|
||||
|
|
@ -705,9 +693,8 @@ async fn test_list_filtered_with_job_name_filter() {
|
|||
|
||||
#[tokio::test]
|
||||
async fn test_reset_orphaned_batch_limit() {
|
||||
let pool = match get_pool().await {
|
||||
Some(p) => p,
|
||||
None => return,
|
||||
let Some(pool) = get_pool().await else {
|
||||
return;
|
||||
};
|
||||
|
||||
let project = create_test_project(&pool, "orphan").await;
|
||||
|
|
@ -747,9 +734,8 @@ async fn test_reset_orphaned_batch_limit() {
|
|||
|
||||
#[tokio::test]
|
||||
async fn test_build_cancel_cascade() {
|
||||
let pool = match get_pool().await {
|
||||
Some(p) => p,
|
||||
None => return,
|
||||
let Some(pool) = get_pool().await else {
|
||||
return;
|
||||
};
|
||||
|
||||
let project = create_test_project(&pool, "cancel-cascade").await;
|
||||
|
|
@ -786,9 +772,8 @@ async fn test_build_cancel_cascade() {
|
|||
|
||||
#[tokio::test]
|
||||
async fn test_dedup_by_drv_path() {
|
||||
let pool = match get_pool().await {
|
||||
Some(p) => p,
|
||||
None => return,
|
||||
let Some(pool) = get_pool().await else {
|
||||
return;
|
||||
};
|
||||
|
||||
let project = create_test_project(&pool, "dedup").await;
|
||||
|
|
|
|||
|
|
@ -1,16 +1,13 @@
|
|||
//! Integration tests for advanced search functionality
|
||||
//! Requires TEST_DATABASE_URL to be set to a PostgreSQL connection string.
|
||||
//! Requires `TEST_DATABASE_URL` to be set to a `PostgreSQL` connection string.
|
||||
|
||||
use fc_common::{BuildStatus, models::*, repo, repo::search::*};
|
||||
use uuid::Uuid;
|
||||
|
||||
async fn get_pool() -> Option<sqlx::PgPool> {
|
||||
let url = match std::env::var("TEST_DATABASE_URL") {
|
||||
Ok(url) => url,
|
||||
Err(_) => {
|
||||
println!("Skipping search test: TEST_DATABASE_URL not set");
|
||||
return None;
|
||||
},
|
||||
let Ok(url) = std::env::var("TEST_DATABASE_URL") else {
|
||||
println!("Skipping search test: TEST_DATABASE_URL not set");
|
||||
return None;
|
||||
};
|
||||
|
||||
let pool = sqlx::postgres::PgPoolOptions::new()
|
||||
|
|
@ -27,9 +24,8 @@ async fn get_pool() -> Option<sqlx::PgPool> {
|
|||
|
||||
#[tokio::test]
|
||||
async fn test_project_search() {
|
||||
let pool = match get_pool().await {
|
||||
Some(p) => p,
|
||||
None => return,
|
||||
let Some(pool) = get_pool().await else {
|
||||
return;
|
||||
};
|
||||
|
||||
// Create test projects
|
||||
|
|
@ -93,9 +89,8 @@ async fn test_project_search() {
|
|||
|
||||
#[tokio::test]
|
||||
async fn test_build_search_with_filters() {
|
||||
let pool = match get_pool().await {
|
||||
Some(p) => p,
|
||||
None => return,
|
||||
let Some(pool) = get_pool().await else {
|
||||
return;
|
||||
};
|
||||
|
||||
// Setup: project -> jobset -> evaluation -> builds
|
||||
|
|
@ -209,7 +204,7 @@ async fn test_build_search_with_filters() {
|
|||
|
||||
// Search with status filter (succeeded)
|
||||
let params = SearchParams {
|
||||
query: "".to_string(),
|
||||
query: String::new(),
|
||||
entities: vec![SearchEntity::Builds],
|
||||
limit: 10,
|
||||
offset: 0,
|
||||
|
|
@ -240,9 +235,8 @@ async fn test_build_search_with_filters() {
|
|||
|
||||
#[tokio::test]
|
||||
async fn test_multi_entity_search() {
|
||||
let pool = match get_pool().await {
|
||||
Some(p) => p,
|
||||
None => return,
|
||||
let Some(pool) = get_pool().await else {
|
||||
return;
|
||||
};
|
||||
|
||||
// Create project with jobset, evaluation, and build
|
||||
|
|
@ -324,9 +318,8 @@ async fn test_multi_entity_search() {
|
|||
|
||||
#[tokio::test]
|
||||
async fn test_search_pagination() {
|
||||
let pool = match get_pool().await {
|
||||
Some(p) => p,
|
||||
None => return,
|
||||
let Some(pool) = get_pool().await else {
|
||||
return;
|
||||
};
|
||||
|
||||
// Create multiple projects
|
||||
|
|
@ -334,7 +327,7 @@ async fn test_search_pagination() {
|
|||
for i in 0..5 {
|
||||
let project = repo::projects::create(&pool, CreateProject {
|
||||
name: format!("page-test-{}-{}", i, Uuid::new_v4().simple()),
|
||||
description: Some(format!("Page test project {}", i)),
|
||||
description: Some(format!("Page test project {i}")),
|
||||
repository_url: "https://github.com/test/page".to_string(),
|
||||
})
|
||||
.await
|
||||
|
|
@ -385,9 +378,8 @@ async fn test_search_pagination() {
|
|||
|
||||
#[tokio::test]
|
||||
async fn test_search_sorting() {
|
||||
let pool = match get_pool().await {
|
||||
Some(p) => p,
|
||||
None => return,
|
||||
let Some(pool) = get_pool().await else {
|
||||
return;
|
||||
};
|
||||
|
||||
// Create projects in reverse alphabetical order
|
||||
|
|
@ -433,14 +425,13 @@ async fn test_search_sorting() {
|
|||
|
||||
#[tokio::test]
|
||||
async fn test_empty_search() {
|
||||
let pool = match get_pool().await {
|
||||
Some(p) => p,
|
||||
None => return,
|
||||
let Some(pool) = get_pool().await else {
|
||||
return;
|
||||
};
|
||||
|
||||
// Empty query should return all entities (up to limit)
|
||||
let params = SearchParams {
|
||||
query: "".to_string(),
|
||||
query: String::new(),
|
||||
entities: vec![SearchEntity::Projects],
|
||||
limit: 10,
|
||||
offset: 0,
|
||||
|
|
@ -459,9 +450,8 @@ async fn test_empty_search() {
|
|||
|
||||
#[tokio::test]
|
||||
async fn test_quick_search() {
|
||||
let pool = match get_pool().await {
|
||||
Some(p) => p,
|
||||
None => return,
|
||||
let Some(pool) = get_pool().await else {
|
||||
return;
|
||||
};
|
||||
|
||||
// Create test data: project -> jobset -> evaluation -> build
|
||||
|
|
|
|||
|
|
@ -1,17 +1,14 @@
|
|||
//! Integration tests for user management - CRUD, authentication, and
|
||||
//! relationships. Requires TEST_DATABASE_URL to be set to a PostgreSQL
|
||||
//! relationships. Requires `TEST_DATABASE_URL` to be set to a `PostgreSQL`
|
||||
//! connection string.
|
||||
|
||||
use fc_common::{models::*, repo};
|
||||
use uuid::Uuid;
|
||||
|
||||
async fn get_pool() -> Option<sqlx::PgPool> {
|
||||
let url = match std::env::var("TEST_DATABASE_URL") {
|
||||
Ok(url) => url,
|
||||
Err(_) => {
|
||||
println!("Skipping repo test: TEST_DATABASE_URL not set");
|
||||
return None;
|
||||
},
|
||||
let Ok(url) = std::env::var("TEST_DATABASE_URL") else {
|
||||
println!("Skipping repo test: TEST_DATABASE_URL not set");
|
||||
return None;
|
||||
};
|
||||
|
||||
let pool = sqlx::postgres::PgPoolOptions::new()
|
||||
|
|
@ -28,13 +25,12 @@ async fn get_pool() -> Option<sqlx::PgPool> {
|
|||
|
||||
#[tokio::test]
|
||||
async fn test_user_crud() {
|
||||
let pool = match get_pool().await {
|
||||
Some(p) => p,
|
||||
None => return,
|
||||
let Some(pool) = get_pool().await else {
|
||||
return;
|
||||
};
|
||||
|
||||
let username = format!("test-user-{}", Uuid::new_v4().simple());
|
||||
let email = format!("{}@example.com", username);
|
||||
let email = format!("{username}@example.com");
|
||||
|
||||
// Create user
|
||||
let user = repo::users::create(&pool, &CreateUser {
|
||||
|
|
@ -82,7 +78,7 @@ async fn test_user_crud() {
|
|||
assert!(count > 0);
|
||||
|
||||
// Update email
|
||||
let new_email = format!("updated-{}", email);
|
||||
let new_email = format!("updated-{email}");
|
||||
let updated = repo::users::update_email(&pool, user.id, &new_email)
|
||||
.await
|
||||
.expect("update email");
|
||||
|
|
@ -135,9 +131,8 @@ async fn test_user_crud() {
|
|||
|
||||
#[tokio::test]
|
||||
async fn test_user_authentication() {
|
||||
let pool = match get_pool().await {
|
||||
Some(p) => p,
|
||||
None => return,
|
||||
let Some(pool) = get_pool().await else {
|
||||
return;
|
||||
};
|
||||
|
||||
let username = format!("auth-test-{}", Uuid::new_v4().simple());
|
||||
|
|
@ -146,7 +141,7 @@ async fn test_user_authentication() {
|
|||
// Create user
|
||||
let user = repo::users::create(&pool, &CreateUser {
|
||||
username: username.clone(),
|
||||
email: format!("{}@example.com", username),
|
||||
email: format!("{username}@example.com"),
|
||||
full_name: None,
|
||||
password: password.to_string(),
|
||||
role: None,
|
||||
|
|
@ -234,13 +229,12 @@ async fn test_password_hashing() {
|
|||
|
||||
#[tokio::test]
|
||||
async fn test_user_unique_constraints() {
|
||||
let pool = match get_pool().await {
|
||||
Some(p) => p,
|
||||
None => return,
|
||||
let Some(pool) = get_pool().await else {
|
||||
return;
|
||||
};
|
||||
|
||||
let username = format!("unique-{}", Uuid::new_v4().simple());
|
||||
let email = format!("{}@example.com", username);
|
||||
let email = format!("{username}@example.com");
|
||||
|
||||
// Create first user
|
||||
let _ = repo::users::create(&pool, &CreateUser {
|
||||
|
|
@ -256,7 +250,7 @@ async fn test_user_unique_constraints() {
|
|||
// Try to create with same username
|
||||
let result = repo::users::create(&pool, &CreateUser {
|
||||
username: username.clone(),
|
||||
email: format!("other-{}", email),
|
||||
email: format!("other-{email}"),
|
||||
full_name: None,
|
||||
password: "password".to_string(),
|
||||
role: None,
|
||||
|
|
@ -266,7 +260,7 @@ async fn test_user_unique_constraints() {
|
|||
|
||||
// Try to create with same email
|
||||
let result = repo::users::create(&pool, &CreateUser {
|
||||
username: format!("other-{}", username),
|
||||
username: format!("other-{username}"),
|
||||
email: email.clone(),
|
||||
full_name: None,
|
||||
password: "password".to_string(),
|
||||
|
|
@ -285,13 +279,12 @@ async fn test_user_unique_constraints() {
|
|||
|
||||
#[tokio::test]
|
||||
async fn test_oauth_user_creation() {
|
||||
let pool = match get_pool().await {
|
||||
Some(p) => p,
|
||||
None => return,
|
||||
let Some(pool) = get_pool().await else {
|
||||
return;
|
||||
};
|
||||
|
||||
let username = format!("oauth-user-{}", Uuid::new_v4().simple());
|
||||
let email = format!("{}@github.com", username);
|
||||
let email = format!("{username}@github.com");
|
||||
let oauth_provider_id = format!("github_{}", Uuid::new_v4().simple());
|
||||
|
||||
// Create OAuth user
|
||||
|
|
@ -330,9 +323,8 @@ async fn test_oauth_user_creation() {
|
|||
|
||||
#[tokio::test]
|
||||
async fn test_starred_jobs_crud() {
|
||||
let pool = match get_pool().await {
|
||||
Some(p) => p,
|
||||
None => return,
|
||||
let Some(pool) = get_pool().await else {
|
||||
return;
|
||||
};
|
||||
|
||||
// Create prerequisite data
|
||||
|
|
@ -442,9 +434,8 @@ async fn test_starred_jobs_crud() {
|
|||
|
||||
#[tokio::test]
|
||||
async fn test_starred_jobs_delete_by_job() {
|
||||
let pool = match get_pool().await {
|
||||
Some(p) => p,
|
||||
None => return,
|
||||
let Some(pool) = get_pool().await else {
|
||||
return;
|
||||
};
|
||||
|
||||
// Setup
|
||||
|
|
@ -516,9 +507,8 @@ async fn test_starred_jobs_delete_by_job() {
|
|||
|
||||
#[tokio::test]
|
||||
async fn test_project_members_crud() {
|
||||
let pool = match get_pool().await {
|
||||
Some(p) => p,
|
||||
None => return,
|
||||
let Some(pool) = get_pool().await else {
|
||||
return;
|
||||
};
|
||||
|
||||
// Setup
|
||||
|
|
@ -615,9 +605,8 @@ async fn test_project_members_crud() {
|
|||
|
||||
#[tokio::test]
|
||||
async fn test_project_members_permissions() {
|
||||
let pool = match get_pool().await {
|
||||
Some(p) => p,
|
||||
None => return,
|
||||
let Some(pool) = get_pool().await else {
|
||||
return;
|
||||
};
|
||||
|
||||
// Setup
|
||||
|
|
@ -809,9 +798,8 @@ async fn test_project_members_permissions() {
|
|||
|
||||
#[tokio::test]
|
||||
async fn test_user_not_found_errors() {
|
||||
let pool = match get_pool().await {
|
||||
Some(p) => p,
|
||||
None => return,
|
||||
let Some(pool) = get_pool().await else {
|
||||
return;
|
||||
};
|
||||
|
||||
let fake_id = Uuid::new_v4();
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue