gnark-plonky2-verifier/plonky2_verifier/fri_test.go
plonky2_verifier/fri_test.goRaw
1package plonky2_verifier
2
3import (
4 . "gnark-ed25519/field"
5 "testing"
6
7 "github.com/consensys/gnark/frontend"
8 "github.com/consensys/gnark/test"
9)
10
11type TestFriCircuit struct{}
12
13func (circuit *TestFriCircuit) Define(api frontend.API) error {
14 proofWithPis := DeserializeProofWithPublicInputs("./data/fibonacci/proof_with_public_inputs.json")
15 commonCircuitData := DeserializeCommonCircuitData("./data/fibonacci/common_circuit_data.json")
16
17 field := NewFieldAPI(api)
18
19 friChip := NewFriChip(api, field, commonCircuitData.Config.FriConfig)
20 friChip.VerifyFriProof(&proofWithPis.Proof.OpeningProof)
21 return nil
22}
23
24func TestFriProof(t *testing.T) {
25 assert := test.NewAssert(t)
26
27 testCase := func() {
28 circuit := TestFriCircuit{}
29 witness := TestFriCircuit{}
30 err := test.IsSolved(&circuit, &witness, TEST_CURVE.ScalarField())
31 assert.NoError(err)
32 }
33
34 testCase()
35}