summaryrefslogtreecommitdiff
path: root/server
diff options
context:
space:
mode:
authorJoel Klinghed <the_jk@spawned.biz>2025-06-18 00:19:30 +0200
committerJoel Klinghed <the_jk@spawned.biz>2025-06-19 00:21:27 +0200
commitdfd2f78b6ebf0f1a7f3d753f2312d5cbc1a08589 (patch)
treee51698533b35103d7dac530f3cef39cfa922c5ce /server
parenta68405fecc20ac533e827835e3c0d823b4d77758 (diff)
Make integration tests run serially
Tricky to setup the docker compose env to be able to run multiple so simple fix is run the tests sharing the same docker compose setup in serial.
Diffstat (limited to 'server')
-rw-r--r--server/Cargo.lock41
-rw-r--r--server/Cargo.toml1
-rw-r--r--server/tests/integration_test.rs3
3 files changed, 45 insertions, 0 deletions
diff --git a/server/Cargo.lock b/server/Cargo.lock
index d754ee3..3c6bbf6 100644
--- a/server/Cargo.lock
+++ b/server/Cargo.lock
@@ -595,6 +595,7 @@ dependencies = [
"rocket",
"rocket_db_pools",
"serde",
+ "serial_test",
"sorted-insert",
"sqlx",
"stdext",
@@ -2294,6 +2295,15 @@ dependencies = [
]
[[package]]
+name = "scc"
+version = "2.3.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "22b2d775fb28f245817589471dd49c5edf64237f4a19d10ce9a92ff4651a27f4"
+dependencies = [
+ "sdd",
+]
+
+[[package]]
name = "schannel"
version = "0.1.27"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2325,6 +2335,12 @@ dependencies = [
]
[[package]]
+name = "sdd"
+version = "3.0.8"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "584e070911c7017da6cb2eb0788d09f43d789029b5877d3e5ecc8acf86ceee21"
+
+[[package]]
name = "security-framework"
version = "2.11.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2410,6 +2426,31 @@ dependencies = [
]
[[package]]
+name = "serial_test"
+version = "3.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1b258109f244e1d6891bf1053a55d63a5cd4f8f4c30cf9a1280989f80e7a1fa9"
+dependencies = [
+ "futures",
+ "log",
+ "once_cell",
+ "parking_lot",
+ "scc",
+ "serial_test_derive",
+]
+
+[[package]]
+name = "serial_test_derive"
+version = "3.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5d69265a08751de7844521fd15003ae0a888e035773ba05695c5c759a6f89eef"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.103",
+]
+
+[[package]]
name = "sha1"
version = "0.10.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
diff --git a/server/Cargo.toml b/server/Cargo.toml
index 01ae7d5..9cf031f 100644
--- a/server/Cargo.toml
+++ b/server/Cargo.toml
@@ -32,6 +32,7 @@ rmp-serde.workspace = true
rocket = { version = "0.5.1", features = ["json", "secrets"] }
rocket_db_pools = { version = "0.2.0", features = ["sqlx_mysql"] }
serde.workspace = true
+serial_test = "3.2.0"
sorted-insert = "0.2.6"
sqlx = { version = "0.7.0", default-features = false, features = ["macros", "migrate"] }
time = "0.3.34"
diff --git a/server/tests/integration_test.rs b/server/tests/integration_test.rs
index 6becf61..40804df 100644
--- a/server/tests/integration_test.rs
+++ b/server/tests/integration_test.rs
@@ -1,4 +1,5 @@
use pretty_assertions::assert_eq;
+use serial_test::serial;
use std::path::PathBuf;
use std::thread::sleep;
use std::time::Duration;
@@ -54,6 +55,7 @@ cTxwtk7kqwmwia2jBCSw==";
#[test_context(common::DockerComposeContext)]
#[tokio::test]
+#[serial(docker)]
async fn test_sanity(ctx: &mut common::DockerComposeContext) {
let mut client1 = common::create_client().expect("client1");
common::login(ctx, &mut client1, "user01", "password1")
@@ -134,6 +136,7 @@ async fn test_sanity(ctx: &mut common::DockerComposeContext) {
#[test_context(common::DockerComposeContext)]
#[tokio::test]
+#[serial(docker)]
async fn test_translation_review_create(ctx: &mut common::DockerComposeContext) {
let mut client1 = common::create_client().expect("client1");
common::login(ctx, &mut client1, "user01", "password1")