Add a test seeder behind the unsafe_test_mode feature

For the end-to-end tests: with the feature, /test/seeder answers the calls the
SDK's live tests make to a seeder API (POST /seed with SingleUserScene or
TestVectorUserScene, DELETE /seed/<playId>), behind HTTP basic auth from
TEST_SEEDER_USERNAME and TEST_SEEDER_PASSWORD, and 404 without them.

It creates accounts without any checks, so no release build has the feature.
CI builds and tests it with sqlite.
This commit is contained in:
Daniel García committed 2026-11-12 22:48:49 +01:00
1 parent 7c82fbed0c
commit 2e0c8b6213
9 files changed
+656 -1

No files matched your search

+6
View File
@@ -57,6 +57,10 @@ oidc-accept-string-booleans = ["openidconnect/accept-string-booleans"]
# Currently only used to enable rusts official ip support
unstable = []
# Test builds only, never in a release or a deployment: adds a seeder API that creates accounts without any checks,
# for the end-to-end tests (`tools/sdk-live-tests/`)
unsafe_test_mode = ["dep:serde_cbor_2"]
[target."cfg(unix)".dependencies]
nix = { version = "0.31.3", features = ["fs"] }
# Logging
@@ -157,6 +161,8 @@ yubico_ng = { version = "1.0.0", default-features = false }
webauthn-rs = { version = "0.5.5", features = ["danger-allow-state-serialisation", "danger-credential-internals"] }
webauthn-rs-proto = "0.5.5"
webauthn-rs-core = "0.5.5"
# Only for `unsafe_test_mode`, to read the algorithm of a COSE key; already used by webauthn-rs
serde_cbor_2 = { version = "0.13.0", optional = true }
# Handling of URL's for WebAuthn and favicons
url = "2.5.8"