Skip to content

Commit ebb35c0

Browse files
test(starknet_os): add small fft regression test
1 parent 8eb8647 commit ebb35c0

File tree

1 file changed

+13
-0
lines changed
  • crates/starknet_os/src/hints/hint_implementation/kzg

1 file changed

+13
-0
lines changed

crates/starknet_os/src/hints/hint_implementation/kzg/test.rs

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,19 @@ fn generate(generator: &BigInt) -> Vec<BigInt> {
2828
array
2929
}
3030

31+
#[rstest]
32+
fn test_small_fft_regression(#[values(true, false)] bit_reversed: bool) {
33+
let prime = BigInt::from(17);
34+
let generator = BigInt::from(3);
35+
let coeffs: Vec<BigInt> = [0, 1, 2, 3].into_iter().map(BigInt::from).collect();
36+
let expected_eval: Vec<BigInt> = (if bit_reversed { [6, 15, 9, 4] } else { [6, 9, 15, 4] })
37+
.into_iter()
38+
.map(BigInt::from)
39+
.collect();
40+
let actual_eval = fft(&coeffs, &generator, &prime, bit_reversed).unwrap();
41+
assert_eq!(actual_eval, expected_eval);
42+
}
43+
3144
#[rstest]
3245
fn test_fft(#[values(true, false)] bit_reversed: bool) {
3346
let prime = BigInt::from_str_radix(BLS_PRIME, 10).unwrap();

0 commit comments

Comments
 (0)