Left-pad odd length hex inputs and tests

This commit is contained in:
Taylor Gerring 2015-03-10 18:08:31 -05:00
parent 35841e5190
commit fda4d02f94
2 changed files with 28 additions and 0 deletions

View File

@ -132,6 +132,9 @@ func fromHex(s string) []byte {
if s[0:2] == "0x" {
s = s[2:]
}
if len(s)%2 == 1 {
s = "0" + s
}
return ethutil.Hex2Bytes(s)
}
return nil

25
rpc/util_test.go Normal file
View File

@ -0,0 +1,25 @@
package rpc
import (
"bytes"
"testing"
)
//fromHex
func TestFromHex(t *testing.T) {
input := "0x01"
expected := []byte{1}
result := fromHex(input)
if bytes.Compare(expected, result) != 0 {
t.Errorf("Expected % x got % x", expected, result)
}
}
func TestFromHexOddLength(t *testing.T) {
input := "0x1"
expected := []byte{1}
result := fromHex(input)
if bytes.Compare(expected, result) != 0 {
t.Errorf("Expected % x got % x", expected, result)
}
}