Merge pull request #15577 from karalabe/common-hexconvert-singlebyte

common: fix hex utils to handle 1 byte address conversions
This commit is contained in:
Péter Szilágyi 2017-11-29 11:27:24 +02:00 committed by GitHub
commit e37f7be97e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 15 additions and 7 deletions

@ -35,12 +35,11 @@ func FromHex(s string) []byte {
if s[0:2] == "0x" || s[0:2] == "0X" {
s = s[2:]
}
if len(s)%2 == 1 {
s = "0" + s
}
return Hex2Bytes(s)
}
return nil
if len(s)%2 == 1 {
s = "0" + s
}
return Hex2Bytes(s)
}
// Copy bytes

@ -74,7 +74,7 @@ func TestFromHex(t *testing.T) {
expected := []byte{1}
result := FromHex(input)
if !bytes.Equal(expected, result) {
t.Errorf("Expected % x got % x", expected, result)
t.Errorf("Expected %x got %x", expected, result)
}
}
@ -83,6 +83,15 @@ func TestFromHexOddLength(t *testing.T) {
expected := []byte{1}
result := FromHex(input)
if !bytes.Equal(expected, result) {
t.Errorf("Expected % x got % x", expected, result)
t.Errorf("Expected %x got %x", expected, result)
}
}
func TestNoPrefixShortHexOddLength(t *testing.T) {
input := "1"
expected := []byte{1}
result := FromHex(input)
if !bytes.Equal(expected, result) {
t.Errorf("Expected %x got %x", expected, result)
}
}