arnaucube
arnaucube/ark-r1cs-stdPublic Self-hosted repository
ark-r1cs-std/r1cs-std/src/groups/curves/twisted_edwards/edwards_sw6.rs
r1cs-std/src/groups/curves/twisted_edwards/edwards_sw6.rsRaw
 1use crate::groups::curves::twisted_edwards::AffineGadget;
 2use algebra::curves::edwards_sw6::EdwardsParameters;
 3use algebra::fields::edwards_sw6::fq::Fq;
 4
 5use crate::fields::edwards_sw6::FqGadget;
 6
 7pub type EdwardsSWGadget = AffineGadget<EdwardsParameters, Fq, FqGadget>;
 8
 9#[cfg(test)]
10mod test {
11    use super::EdwardsSWGadget as EdwardsG;
12    use crate::{
13        groups::curves::twisted_edwards::test::{edwards_constraint_costs, edwards_test},
14        test_constraint_system::TestConstraintSystem,
15    };
16    use algebra::curves::edwards_sw6::EdwardsParameters;
17    use algebra::fields::edwards_sw6::fq::Fq;
18
19    #[test]
20    fn edwards_constraint_costs_test() {
21        let mut cs = TestConstraintSystem::<Fq>::new();
22        edwards_constraint_costs::<_, EdwardsParameters, EdwardsG, _>(&mut cs);
23        assert!(cs.is_satisfied());
24    }
25
26    #[test]
27    fn edwards_sw6_gadget_test() {
28        let mut cs = TestConstraintSystem::<Fq>::new();
29        edwards_test::<_, EdwardsParameters, EdwardsG, _>(&mut cs);
30        assert!(cs.is_satisfied());
31    }
32}