Official Go implementation of the Ethereum protocol
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
go-ethereum/tests/transaction_test.go

50 lines
1.3 KiB

package tests
import (
"testing"
)
func TestTransactions(t *testing.T) {
notWorking := make(map[string]bool, 100)
// TODO: all these tests should work! remove them from the array when they work
snafus := []string{
"TransactionWithHihghNonce", // fails due to testing upper bound of 256 bit nonce
"TransactionWithSvalueHigh", // fails due to C++ wrong ECDSA r,s ranges. see https://github.com/ethereum/yellowpaper/pull/112
"TransactionWithSvalue0", // Invalid, 0 < s according to YP eq 205. probably typo/copy-paste error
}
for _, name := range snafus {
notWorking[name] = true
}
var err error
err = RunTransactionTests("./files/TransactionTests/ttTransactionTest.json",
notWorking)
if err != nil {
t.Fatal(err)
}
}
func TestWrongRLPTransactions(t *testing.T) {
notWorking := make(map[string]bool, 100)
var err error
err = RunTransactionTests("./files/TransactionTests/ttWrongRLPTransaction.json",
notWorking)
if err != nil {
t.Fatal(err)
}
}
//Not working until it's fields are in HEX
func Test10MBtx(t *testing.T) {
t.Skip("Skipped in lieu of HEX encoding fix in this file.")
notWorking := make(map[string]bool, 100)
var err error
err = RunTransactionTests("./files/TransactionTests/tt10mbDataField.json",
notWorking)
if err != nil {
t.Fatal(err)
}
}