diff options
Diffstat (limited to 'tvix/nix-compat/src/narinfo')
-rw-r--r-- | tvix/nix-compat/src/narinfo/mod.rs | 28 | ||||
-rw-r--r-- | tvix/nix-compat/src/narinfo/signature.rs | 22 |
2 files changed, 20 insertions, 30 deletions
diff --git a/tvix/nix-compat/src/narinfo/mod.rs b/tvix/nix-compat/src/narinfo/mod.rs index 21aecf80b5a2..35146a927b39 100644 --- a/tvix/nix-compat/src/narinfo/mod.rs +++ b/tvix/nix-compat/src/narinfo/mod.rs @@ -417,8 +417,8 @@ const DUMMY_VERIFYING_KEY: &str = #[cfg(test)] mod test { use hex_literal::hex; - use lazy_static::lazy_static; use pretty_assertions::assert_eq; + use std::sync::LazyLock; use std::{io, str}; use crate::{ @@ -428,20 +428,18 @@ mod test { use super::{Flags, NarInfo}; - lazy_static! { - static ref CASES: &'static [&'static str] = { - let data = zstd::decode_all(io::Cursor::new(include_bytes!( - "../../testdata/narinfo.zst" - ))) - .unwrap(); - let data = str::from_utf8(Vec::leak(data)).unwrap(); - Vec::leak( - data.split_inclusive("\n\n") - .map(|s| s.strip_suffix('\n').unwrap()) - .collect::<Vec<_>>(), - ) - }; - } + static CASES: LazyLock<&'static [&'static str]> = LazyLock::new(|| { + let data = zstd::decode_all(io::Cursor::new(include_bytes!( + "../../testdata/narinfo.zst" + ))) + .unwrap(); + let data = str::from_utf8(Vec::leak(data)).unwrap(); + Vec::leak( + data.split_inclusive("\n\n") + .map(|s| s.strip_suffix('\n').unwrap()) + .collect::<Vec<_>>(), + ) + }); #[test] fn roundtrip() { diff --git a/tvix/nix-compat/src/narinfo/signature.rs b/tvix/nix-compat/src/narinfo/signature.rs index 37a7b0a30605..8df77019cd8f 100644 --- a/tvix/nix-compat/src/narinfo/signature.rs +++ b/tvix/nix-compat/src/narinfo/signature.rs @@ -150,32 +150,24 @@ mod test { use data_encoding::BASE64; use ed25519_dalek::VerifyingKey; use hex_literal::hex; - use lazy_static::lazy_static; + use std::sync::LazyLock; use super::Signature; use rstest::rstest; const FINGERPRINT: &str = "1;/nix/store/syd87l2rxw8cbsxmxl853h0r6pdwhwjr-curl-7.82.0-bin;sha256:1b4sb93wp679q4zx9k1ignby1yna3z7c4c2ri3wphylbc2dwsys0;196040;/nix/store/0jqd0rlxzra1rs38rdxl43yh6rxchgc6-curl-7.82.0,/nix/store/6w8g7njm4mck5dmjxws0z1xnrxvl81xa-glibc-2.34-115,/nix/store/j5jxw3iy7bbz4a57fh9g2xm2gxmyal8h-zlib-1.2.12,/nix/store/yxvjs9drzsphm9pcf42a4byzj1kb9m7k-openssl-1.1.1n"; - // The signing key labelled as `cache.nixos.org-1`, - lazy_static! { - static ref PUB_CACHE_NIXOS_ORG_1: VerifyingKey = ed25519_dalek::VerifyingKey::from_bytes( + /// The signing key labelled as `cache.nixos.org-1`, + static PUB_CACHE_NIXOS_ORG_1: LazyLock<VerifyingKey> = LazyLock::new(|| { + ed25519_dalek::VerifyingKey::from_bytes( BASE64 .decode(b"6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=") .unwrap()[..] .try_into() - .unwrap() + .unwrap(), ) - .unwrap(); - static ref PUB_TEST_1: VerifyingKey = ed25519_dalek::VerifyingKey::from_bytes( - BASE64 - .decode(b"tLAEn+EeaBUJYqEpTd2yeerr7Ic6+0vWe+aXL/vYUpE=") - .unwrap()[..] - .try_into() - .unwrap() - ) - .unwrap(); - } + .expect("embedded public key is valid") + }); #[rstest] #[case::valid_cache_nixos_org_1(&PUB_CACHE_NIXOS_ORG_1, &"cache.nixos.org-1:TsTTb3WGTZKphvYdBHXwo6weVILmTytUjLB+vcX89fOjjRicCHmKA4RCPMVLkj6TMJ4GMX3HPVWRdD1hkeKZBQ==", FINGERPRINT, true)] |