ark-curves-cherry-picked/mnt6_753/src/fields/tests.rs
mnt6_753/src/fields/tests.rsRaw
1use ark_ff::{
2 fields::{models::fp6_2over3::*, quadratic_extension::QuadExtParameters},
3 Field,
4};
5use ark_std::{rand::Rng, test_rng};
6
7use crate::*;
8
9use ark_algebra_test_templates::{fields::*, generate_field_test};
10
11use core::ops::{AddAssign, MulAssign, SubAssign};
12
13generate_field_test!(mnt6_753;);
14
15#[test]
16fn test_fq3() {
17 let mut rng = test_rng();
18 let a: Fq3 = rng.gen();
19 let b: Fq3 = rng.gen();
20 field_test(a, b);
21 sqrt_field_test(a);
22 frobenius_test::<Fq3, _>(Fq::characteristic(), 13);
23 assert_eq!(
24 a * Fq6Parameters::NONRESIDUE,
25 <Fp6ParamsWrapper<Fq6Parameters>>::mul_base_field_by_nonresidue(&a)
26 );
27}
28
29#[test]
30fn test_fq6() {
31 let mut rng = test_rng();
32 let a: Fq6 = rng.gen();
33 let b: Fq6 = rng.gen();
34 field_test(a, b);
35 frobenius_test::<Fq6, _>(Fq::characteristic(), 13);
36}