Skip to content

Commit 3f8ed52

Browse files
test: expand cross-adapter interop tests for signing and TLS (#63)
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
1 parent c989af6 commit 3f8ed52

File tree

5 files changed

+634
-0
lines changed

5 files changed

+634
-0
lines changed

Cargo.lock

Lines changed: 9 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

crates/uselesskey-interop-tests/Cargo.toml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,16 @@ edition.workspace = true
66
license.workspace = true
77
rust-version.workspace = true
88

9+
[dependencies]
10+
# Adapter crates — optional, gated behind features
11+
uselesskey-ring = { path = "../uselesskey-ring", features = ["all"], optional = true }
12+
uselesskey-rustcrypto = { path = "../uselesskey-rustcrypto", features = ["all"], optional = true }
13+
uselesskey-aws-lc-rs = { path = "../uselesskey-aws-lc-rs", features = ["all"], optional = true }
14+
uselesskey-rustls = { path = "../uselesskey-rustls", features = ["tls-config", "all", "rustls-ring"], optional = true }
15+
uselesskey-x509 = { path = "../uselesskey-x509", optional = true }
16+
uselesskey-hmac = { path = "../uselesskey-hmac", optional = true }
17+
aws-lc-rs = { workspace = true, optional = true }
18+
919
[dev-dependencies]
1020
uselesskey-core = { path = "../uselesskey-core" }
1121
uselesskey-rsa = { path = "../uselesskey-rsa" }
@@ -19,3 +29,12 @@ ed25519-dalek = { workspace = true }
1929
rsa = { workspace = true }
2030
sha2 = { version = "0.10", features = ["oid"] }
2131
signature = "2"
32+
hmac = "0.12"
33+
rustls = { workspace = true }
34+
35+
[features]
36+
default = []
37+
cross-signing = ["dep:uselesskey-ring", "dep:uselesskey-rustcrypto", "dep:uselesskey-hmac"]
38+
cross-tls = ["dep:uselesskey-x509", "dep:uselesskey-rustls"]
39+
aws-lc-rs-interop = ["dep:uselesskey-aws-lc-rs", "dep:aws-lc-rs", "uselesskey-rustls?/rustls-aws-lc-rs"]
40+
all = ["cross-signing", "cross-tls", "aws-lc-rs-interop"]
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
//! Build script for uselesskey-interop-tests.
2+
//!
3+
//! Checks for NASM availability so aws-lc-rs interop tests can be gated
4+
//! gracefully on Windows.
5+
6+
use std::process::Command;
7+
8+
fn main() {
9+
println!("cargo::rustc-check-cfg=cfg(has_nasm)");
10+
println!("cargo::rerun-if-changed=build.rs");
11+
println!("cargo::rerun-if-env-changed=PATH");
12+
13+
let nasm_available = Command::new("nasm")
14+
.arg("-v")
15+
.output()
16+
.map(|output| output.status.success())
17+
.unwrap_or(false);
18+
19+
if nasm_available {
20+
println!("cargo::rustc-cfg=has_nasm");
21+
}
22+
}

0 commit comments

Comments
 (0)