Skip to content

Commit 0ebecdd

Browse files
test(starknet_os): add small fft regression test
1 parent ac22bc5 commit 0ebecdd

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
@@ -23,6 +23,19 @@ fn generate(generator: &BigInt) -> Vec<BigInt> {
2323
array
2424
}
2525

26+
#[rstest]
27+
fn test_small_fft_regression(#[values(true, false)] bit_reversed: bool) {
28+
let prime = BigInt::from(17);
29+
let generator = BigInt::from(3);
30+
let coeffs: Vec<BigInt> = [0, 1, 2, 3].into_iter().map(BigInt::from).collect();
31+
let expected_eval: Vec<BigInt> = (if bit_reversed { [6, 15, 9, 4] } else { [6, 9, 15, 4] })
32+
.into_iter()
33+
.map(BigInt::from)
34+
.collect();
35+
let actual_eval = fft(&coeffs, &generator, &prime, bit_reversed).unwrap();
36+
assert_eq!(actual_eval, expected_eval);
37+
}
38+
2639
#[rstest]
2740
fn test_fft(#[values(true, false)] bit_reversed: bool) {
2841
let prime = BigInt::from_str_radix(BLS_PRIME, 10).unwrap();

0 commit comments

Comments
 (0)