gnark-plonky2-verifier/plonky2_verifier/verifier_test.go
plonky2_verifier/verifier_test.goRaw
1package plonky2_verifier
2
3import (
4 . "gnark-ed25519/field"
5 . "gnark-ed25519/poseidon"
6 "testing"
7
8 "github.com/consensys/gnark/frontend"
9 "github.com/consensys/gnark/test"
10)
11
12type TestVerifierCircuit struct{}
13
14func (circuit *TestVerifierCircuit) Define(api frontend.API) error {
15 field := NewFieldAPI(api)
16 poseidonChip := NewPoseidonChip(api, field)
17 verifierChip := VerifierChip{api: api, field: field, poseidonChip: *poseidonChip}
18 proofWithPis := DeserializeProofWithPublicInputs("./data/proof_with_public_inputs.json")
19 commonCircuitData := DeserializeCommonCircuitData("./data/common_circuit_data.json")
20 verfierOnlyCircuitData := DeserializeVerifierOnlyCircuitData("./data/verifier_only_circuit_data.json")
21 verifierChip.Verify(proofWithPis, verfierOnlyCircuitData, commonCircuitData)
22 panic("look at stdout")
23 return nil
24}
25
26func TestVerifierWitness(t *testing.T) {
27 assert := test.NewAssert(t)
28
29 testCase := func() {
30 circuit := TestVerifierCircuit{}
31 witness := TestVerifierCircuit{}
32 err := test.IsSolved(&circuit, &witness, TEST_CURVE.ScalarField())
33 assert.NoError(err)
34 }
35
36 testCase()
37}