cmd/clef, signer: make fourbyte its own package, break dep cycle (#19450)
* cmd/clef, signer: make fourbytes its own package, break dep cycle * signer/fourbyte: pull in a sanitized 4byte database
This commit is contained in:
@ -14,7 +14,7 @@
|
||||
// You should have received a copy of the GNU General Public License
|
||||
// along with go-ethereum. If not, see <http://www.gnu.org/licenses/>.
|
||||
//
|
||||
package core
|
||||
package core_test
|
||||
|
||||
import (
|
||||
"context"
|
||||
@ -26,9 +26,10 @@ import (
|
||||
"github.com/ethereum/go-ethereum/accounts/keystore"
|
||||
"github.com/ethereum/go-ethereum/common"
|
||||
"github.com/ethereum/go-ethereum/common/hexutil"
|
||||
"github.com/ethereum/go-ethereum/signer/core"
|
||||
)
|
||||
|
||||
var typesStandard = Types{
|
||||
var typesStandard = core.Types{
|
||||
"EIP712Domain": {
|
||||
{
|
||||
Name: "name",
|
||||
@ -147,7 +148,7 @@ var jsonTypedData = `
|
||||
|
||||
const primaryType = "Mail"
|
||||
|
||||
var domainStandard = TypedDataDomain{
|
||||
var domainStandard = core.TypedDataDomain{
|
||||
"Ether Mail",
|
||||
"1",
|
||||
big.NewInt(1),
|
||||
@ -167,7 +168,7 @@ var messageStandard = map[string]interface{}{
|
||||
"contents": "Hello, Bob!",
|
||||
}
|
||||
|
||||
var typedData = TypedData{
|
||||
var typedData = core.TypedData{
|
||||
Types: typesStandard,
|
||||
PrimaryType: primaryType,
|
||||
Domain: domainStandard,
|
||||
@ -188,7 +189,7 @@ func TestSignData(t *testing.T) {
|
||||
|
||||
control.approveCh <- "Y"
|
||||
control.inputCh <- "wrongpassword"
|
||||
signature, err := api.SignData(context.Background(), TextPlain.Mime, a, hexutil.Encode([]byte("EHLO world")))
|
||||
signature, err := api.SignData(context.Background(), core.TextPlain.Mime, a, hexutil.Encode([]byte("EHLO world")))
|
||||
if signature != nil {
|
||||
t.Errorf("Expected nil-data, got %x", signature)
|
||||
}
|
||||
@ -196,17 +197,17 @@ func TestSignData(t *testing.T) {
|
||||
t.Errorf("Expected ErrLocked! '%v'", err)
|
||||
}
|
||||
control.approveCh <- "No way"
|
||||
signature, err = api.SignData(context.Background(), TextPlain.Mime, a, hexutil.Encode([]byte("EHLO world")))
|
||||
signature, err = api.SignData(context.Background(), core.TextPlain.Mime, a, hexutil.Encode([]byte("EHLO world")))
|
||||
if signature != nil {
|
||||
t.Errorf("Expected nil-data, got %x", signature)
|
||||
}
|
||||
if err != ErrRequestDenied {
|
||||
if err != core.ErrRequestDenied {
|
||||
t.Errorf("Expected ErrRequestDenied! '%v'", err)
|
||||
}
|
||||
// text/plain
|
||||
control.approveCh <- "Y"
|
||||
control.inputCh <- "a_long_password"
|
||||
signature, err = api.SignData(context.Background(), TextPlain.Mime, a, hexutil.Encode([]byte("EHLO world")))
|
||||
signature, err = api.SignData(context.Background(), core.TextPlain.Mime, a, hexutil.Encode([]byte("EHLO world")))
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
@ -226,13 +227,13 @@ func TestSignData(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestDomainChainId(t *testing.T) {
|
||||
withoutChainID := TypedData{
|
||||
Types: Types{
|
||||
"EIP712Domain": []Type{
|
||||
withoutChainID := core.TypedData{
|
||||
Types: core.Types{
|
||||
"EIP712Domain": []core.Type{
|
||||
{Name: "name", Type: "string"},
|
||||
},
|
||||
},
|
||||
Domain: TypedDataDomain{
|
||||
Domain: core.TypedDataDomain{
|
||||
Name: "test",
|
||||
},
|
||||
}
|
||||
@ -241,14 +242,14 @@ func TestDomainChainId(t *testing.T) {
|
||||
t.Errorf("Expected the chainId key to not be present in the domain map")
|
||||
}
|
||||
|
||||
withChainID := TypedData{
|
||||
Types: Types{
|
||||
"EIP712Domain": []Type{
|
||||
withChainID := core.TypedData{
|
||||
Types: core.Types{
|
||||
"EIP712Domain": []core.Type{
|
||||
{Name: "name", Type: "string"},
|
||||
{Name: "chainId", Type: "uint256"},
|
||||
},
|
||||
},
|
||||
Domain: TypedDataDomain{
|
||||
Domain: core.TypedDataDomain{
|
||||
Name: "test",
|
||||
ChainId: big.NewInt(1),
|
||||
},
|
||||
@ -383,7 +384,7 @@ func TestMalformedDomainkeys(t *testing.T) {
|
||||
}
|
||||
}
|
||||
`
|
||||
var malformedDomainTypedData TypedData
|
||||
var malformedDomainTypedData core.TypedData
|
||||
err := json.Unmarshal([]byte(jsonTypedData), &malformedDomainTypedData)
|
||||
if err != nil {
|
||||
t.Fatalf("unmarshalling failed '%v'", err)
|
||||
@ -471,7 +472,7 @@ func TestMalformedTypesAndExtradata(t *testing.T) {
|
||||
}
|
||||
}
|
||||
`
|
||||
var malformedTypedData TypedData
|
||||
var malformedTypedData core.TypedData
|
||||
err := json.Unmarshal([]byte(jsonTypedData), &malformedTypedData)
|
||||
if err != nil {
|
||||
t.Fatalf("unmarshalling failed '%v'", err)
|
||||
@ -567,7 +568,7 @@ func TestTypeMismatch(t *testing.T) {
|
||||
}
|
||||
}
|
||||
`
|
||||
var mismatchTypedData TypedData
|
||||
var mismatchTypedData core.TypedData
|
||||
err := json.Unmarshal([]byte(jsonTypedData), &mismatchTypedData)
|
||||
if err != nil {
|
||||
t.Fatalf("unmarshalling failed '%v'", err)
|
||||
@ -589,7 +590,7 @@ func TestTypeOverflow(t *testing.T) {
|
||||
//{
|
||||
// "test": 65536 <-- test defined as uint8
|
||||
//}
|
||||
var overflowTypedData TypedData
|
||||
var overflowTypedData core.TypedData
|
||||
err := json.Unmarshal([]byte(jsonTypedData), &overflowTypedData)
|
||||
if err != nil {
|
||||
t.Fatalf("unmarshalling failed '%v'", err)
|
||||
@ -667,7 +668,7 @@ func TestArray(t *testing.T) {
|
||||
}
|
||||
}
|
||||
`
|
||||
var arrayTypedData TypedData
|
||||
var arrayTypedData core.TypedData
|
||||
err := json.Unmarshal([]byte(jsonTypedData), &arrayTypedData)
|
||||
if err != nil {
|
||||
t.Fatalf("unmarshalling failed '%v'", err)
|
||||
@ -780,7 +781,7 @@ func TestCustomTypeAsArray(t *testing.T) {
|
||||
}
|
||||
|
||||
`
|
||||
var malformedTypedData TypedData
|
||||
var malformedTypedData core.TypedData
|
||||
err := json.Unmarshal([]byte(jsonTypedData), &malformedTypedData)
|
||||
if err != nil {
|
||||
t.Fatalf("unmarshalling failed '%v'", err)
|
||||
@ -792,8 +793,7 @@ func TestCustomTypeAsArray(t *testing.T) {
|
||||
}
|
||||
|
||||
func TestFormatter(t *testing.T) {
|
||||
|
||||
var d TypedData
|
||||
var d core.TypedData
|
||||
err := json.Unmarshal([]byte(jsonTypedData), &d)
|
||||
if err != nil {
|
||||
t.Fatalf("unmarshalling failed '%v'", err)
|
||||
|
Reference in New Issue
Block a user