Merge remote-tracking branch 'origin/bugfix/engine-hook-test' into merge/geth-v1.13.6

This commit is contained in:
philip-morlier 2023-12-20 08:15:09 -08:00
commit d0d5d38a59
3 changed files with 30 additions and 0 deletions

View File

@ -17,6 +17,7 @@ var (
backend restricted.Backend
log core.Logger
events core.Feed
createEngineCalled bool
)
var httpApiFlagName = "http.api"
@ -107,6 +108,7 @@ func (e *engine) Close() error {
}
func CreateEngine(chainConfig *params.ChainConfig, db restricted.Database) consensus.Engine {
createEngineCalled = true
return &engine{}
}

View File

@ -6,6 +6,7 @@ import (
"sync"
"github.com/openrelayxyz/plugeth-utils/core"
"github.com/openrelayxyz/plugeth-utils/restricted"
)
@ -37,6 +38,15 @@ func GetAPIs(stack core.Node, backend core.Backend) []core.API {
return apis
}
func InitializeNode(stack core.Node, b restricted.Backend) {
go func() {
m := map[string]struct{}{
"InitializeNode":struct{}{},
}
hookChan <- m
}()
}
// func OnShutdown(){
// this injection is covered by another test in this package. See documentation for details.
// }
@ -187,6 +197,17 @@ func OpCodeSelect() []int {
return nil
}
// eth/ethconfig
func pseudoCreateEngine() {
if createEngineCalled {
m := map[string]struct{}{
"CreateEngine":struct{}{},
}
hookChan <- m
}
}
// rpc/
@ -239,6 +260,8 @@ func Is160(num *big.Int) bool {
}
var plugins map[string]struct{} = map[string]struct{}{
"InitializeNode":struct{}{},
"CreateEngine":struct{}{},
"OnShutdown": struct{}{},
"SetTrieFlushIntervalClone":struct{}{},
"StateUpdate": struct{}{},

View File

@ -53,6 +53,10 @@ func BlockChain() {
var ok bool
f := func(key string) bool {_, ok = m[key]; return ok}
switch {
case f("InitializeNode"):
delete(plugins, "InitializeNode")
case f("CreateEngine"):
delete(plugins, "CreateEngine")
case f("OnShutdown"):
delete(plugins, "OnShutdown")
case f("StateUpdate"):
@ -139,6 +143,7 @@ func BlockChain() {
}
}()
pseudoCreateEngine()
txFactory()
txTracer()
}