Skip to content

Commit 3a86584

Browse files
committed
Refactor testing context load
1 parent 4f11f9b commit 3a86584

File tree

4 files changed

+28
-27
lines changed

4 files changed

+28
-27
lines changed

src/lib.rs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -311,8 +311,9 @@ macro_rules! suite_types {
311311

312312
#[cfg(test)]
313313
mod tests {
314-
use crate::suites::testing::{Input, Secret};
315-
use crate::testing::{random_val, TEST_SEED};
314+
use super::*;
315+
use suites::testing::{Input, Secret};
316+
use testing::{random_val, TEST_SEED};
316317

317318
#[test]
318319
fn vrf_output_check() {

src/ring.rs

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -568,7 +568,21 @@ pub(crate) mod testing {
568568
CurveConfig<Self>: TECurveConfig + Clone,
569569
AffinePoint<Self>: TEMapping<CurveConfig<Self>>,
570570
{
571-
fn ring_context() -> &'static RingContext<Self>;
571+
const SRS_FILE: &str;
572+
573+
fn context() -> &'static RingContext<Self>;
574+
575+
fn load_context() -> RingContext<Self> {
576+
use ark_serialize::CanonicalDeserialize;
577+
578+
use std::{fs::File, io::Read};
579+
let mut file = File::open(crate::testing::PCS_SRS_FILE).unwrap();
580+
let mut buf = Vec::new();
581+
file.read_to_end(&mut buf).unwrap();
582+
let pcs_params =
583+
PcsParams::<Self>::deserialize_uncompressed_unchecked(&mut &buf[..]).unwrap();
584+
RingContext::from_srs(crate::ring::testing::TEST_RING_SIZE, pcs_params).unwrap()
585+
}
572586
}
573587

574588
pub struct TestVector<S: RingSuite>
@@ -617,7 +631,7 @@ pub(crate) mod testing {
617631
let input = Input::<S>::from(pedersen.base.h);
618632
let output = Output::from(pedersen.base.gamma);
619633

620-
let ring_ctx = <S as RingSuiteExt>::ring_context();
634+
let ring_ctx = <S as RingSuiteExt>::context();
621635

622636
use ark_std::rand::SeedableRng;
623637
let rng = &mut rand_chacha::ChaCha20Rng::from_seed([0x11; 32]);
@@ -681,7 +695,7 @@ pub(crate) mod testing {
681695
let public = secret.public();
682696
assert_eq!(public.0, self.pedersen.base.pk);
683697

684-
let ring_ctx = <S as RingSuiteExt>::ring_context();
698+
let ring_ctx = <S as RingSuiteExt>::context();
685699

686700
let prover_idx = self.ring_pks.iter().position(|&pk| pk == public.0).unwrap();
687701

src/suites/bandersnatch.rs

Lines changed: 4 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -126,19 +126,12 @@ pub(crate) mod tests {
126126

127127
#[cfg(feature = "ring")]
128128
impl crate::ring::testing::RingSuiteExt for ThisSuite {
129-
fn ring_context() -> &'static RingContext {
130-
use ark_serialize::CanonicalDeserialize;
129+
const SRS_FILE: &str = crate::testing::PCS_SRS_FILE;
130+
131+
fn context() -> &'static RingContext {
131132
use std::sync::OnceLock;
132133
static RING_CTX: OnceLock<RingContext> = OnceLock::new();
133-
RING_CTX.get_or_init(|| {
134-
use std::{fs::File, io::Read};
135-
let mut file = File::open(crate::testing::PCS_SRS_FILE).unwrap();
136-
let mut buf = Vec::new();
137-
file.read_to_end(&mut buf).unwrap();
138-
let pcs_params =
139-
PcsParams::deserialize_uncompressed_unchecked(&mut &buf[..]).unwrap();
140-
RingContext::from_srs(crate::ring::testing::TEST_RING_SIZE, pcs_params).unwrap()
141-
})
134+
RING_CTX.get_or_init(Self::load_context)
142135
}
143136
}
144137

src/suites/bandersnatch_sw.rs

Lines changed: 4 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -132,19 +132,12 @@ mod tests {
132132

133133
#[cfg(feature = "ring")]
134134
impl crate::ring::testing::RingSuiteExt for ThisSuite {
135-
fn ring_context() -> &'static RingContext {
136-
use ark_serialize::CanonicalDeserialize;
135+
const SRS_FILE: &str = crate::testing::PCS_SRS_FILE;
136+
137+
fn context() -> &'static RingContext {
137138
use std::sync::OnceLock;
138139
static RING_CTX: OnceLock<RingContext> = OnceLock::new();
139-
RING_CTX.get_or_init(|| {
140-
use std::{fs::File, io::Read};
141-
let mut file = File::open(crate::testing::PCS_SRS_FILE).unwrap();
142-
let mut buf = Vec::new();
143-
file.read_to_end(&mut buf).unwrap();
144-
let pcs_params =
145-
PcsParams::deserialize_uncompressed_unchecked(&mut &buf[..]).unwrap();
146-
RingContext::from_srs(crate::ring::testing::TEST_RING_SIZE, pcs_params).unwrap()
147-
})
140+
RING_CTX.get_or_init(Self::load_context)
148141
}
149142
}
150143

0 commit comments

Comments
 (0)