//go:build cgo

package p256k_test

// func TestVerify(t *testing.T) {
// 	evs := make([]*event.E, 0, 10000)
// 	scanner := bufio.NewScanner(bytes.NewBuffer(examples.Cache))
// 	buf := make([]byte, 1_000_000)
// 	scanner.Buffer(buf, len(buf))
// 	var err error
// 	for scanner.Scan() {
// 		var valid bool
// 		b := scanner.Bytes()
// 		ev := event.New()
// 		if _, err = ev.Unmarshal(b); chk.E(err) {
// 			t.Errorf("failed to marshal\n%s", b)
// 		} else {
// 			if valid, err = ev.Verify(); chk.E(err) || !valid {
// 				t.Errorf("btcec: invalid signature\n%s", b)
// 				continue
// 			}
// 		}
// 		id := ev.GetIDBytes()
// 		if len(id) != sha256.Size {
// 			t.Errorf("id should be 32 bytes, got %d", len(id))
// 			continue
// 		}
// 		if err = p256k.VerifyFromBytes(id, ev.Sig, ev.Pubkey); chk.E(err) {
// 			t.Error(err)
// 			continue
// 		}
// 		evs = append(evs, ev)
// 	}
// }

// func TestSign(t *testing.T) {
// 	evs := make([]*event.E, 0, 10000)
// 	scanner := bufio.NewScanner(bytes.NewBuffer(examples.Cache))
// 	buf := make([]byte, 1_000_000)
// 	scanner.Buffer(buf, len(buf))
// 	var err error
// 	var sec1 *p256k.Sec
// 	var pub1 *p256k.XPublicKey
// 	var pb []byte
// 	if _, pb, sec1, pub1, err = p256k.Generate(); chk.E(err) {
// 		t.Fatal(err)
// 	}
// 	for scanner.Scan() {
// 		b := scanner.Bytes()
// 		ev := event.New()
// 		if _, err = ev.Unmarshal(b); chk.E(err) {
// 			t.Errorf("failed to marshal\n%s", b)
// 		}
// 		evs = append(evs, ev)
// 	}
// 	sig := make([]byte, schnorr.SignatureSize)
// 	for _, ev := range evs {
// 		ev.Pubkey = pb
// 		var uid *p256k.Uchar
// 		if uid, err = p256k.Msg(ev.GetIDBytes()); chk.E(err) {
// 			t.Fatal(err)
// 		}
// 		if sig, err = p256k.Sign(uid, sec1.Sec()); chk.E(err) {
// 			t.Fatal(err)
// 		}
// 		ev.Sig = sig
// 		var usig *p256k.Uchar
// 		if usig, err = p256k.Sig(sig); chk.E(err) {
// 			t.Fatal(err)
// 		}
// 		if !p256k.Verify(uid, usig, pub1.Key) {
// 			t.Errorf("invalid signature")
// 		}
// 	}
// 	p256k.Zero(&sec1.Key)
// }
