commit inicial do projeto
This commit is contained in:
48
internal/transactions/validation_test.go
Normal file
48
internal/transactions/validation_test.go
Normal file
@ -0,0 +1,48 @@
|
||||
package transactions_test
|
||||
|
||||
import (
|
||||
"crypto/ecdsa"
|
||||
"crypto/elliptic"
|
||||
"crypto/rand"
|
||||
"dejo_node/internal/transactions"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestTransaction_IsValid(t *testing.T) {
|
||||
priv, _ := ecdsa.GenerateKey(elliptic.P256(), rand.Reader)
|
||||
pub := &priv.PublicKey
|
||||
|
||||
tx := transactions.Transaction{
|
||||
From: "0xabc",
|
||||
To: "0xdef",
|
||||
Value: 50,
|
||||
Gas: 10,
|
||||
Nonce: 1,
|
||||
}
|
||||
tx.Signature = tx.GenerateSignature(priv)
|
||||
|
||||
err := tx.IsValid(pub, 100, 1)
|
||||
if err != nil {
|
||||
t.Errorf("esperava transação válida, mas falhou: %v", err)
|
||||
}
|
||||
}
|
||||
|
||||
func TestTransaction_IsValid_InvalidSignature(t *testing.T) {
|
||||
priv, _ := ecdsa.GenerateKey(elliptic.P256(), rand.Reader)
|
||||
wrongPriv, _ := ecdsa.GenerateKey(elliptic.P256(), rand.Reader)
|
||||
pub := &priv.PublicKey
|
||||
|
||||
tx := transactions.Transaction{
|
||||
From: "0xabc",
|
||||
To: "0xdef",
|
||||
Value: 50,
|
||||
Gas: 10,
|
||||
Nonce: 1,
|
||||
}
|
||||
tx.Signature = tx.GenerateSignature(wrongPriv)
|
||||
|
||||
err := tx.IsValid(pub, 100, 1)
|
||||
if err == nil {
|
||||
t.Error("esperava falha na assinatura, mas foi aceita")
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user