mirror of
https://github.com/ethereum/go-ethereum.git
synced 2026-07-28 07:36:44 +00:00
* initial commit * safe latest error * remove json listener * fix: debug block unit test * remove jsonrpc listener from server * fix: consume network's find port in heimdall client test * update key in log while startup * linters * fix Co-authored-by: Manav Darji <manavdarji.india@gmail.com>
43 lines
876 B
Go
43 lines
876 B
Go
package server
|
|
|
|
import (
|
|
"fmt"
|
|
"os"
|
|
|
|
"github.com/ethereum/go-ethereum/common/network"
|
|
)
|
|
|
|
func CreateMockServer(config *Config) (*Server, error) {
|
|
if config == nil {
|
|
config = DefaultConfig()
|
|
}
|
|
|
|
// get grpc port and listener
|
|
grpcPort, gRPCListener, err := network.FindAvailablePort()
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
// The test uses grpc port from config so setting it here.
|
|
config.GRPC.Addr = fmt.Sprintf(":%d", grpcPort)
|
|
|
|
// datadir
|
|
datadir, err := os.MkdirTemp("", "bor-cli-test")
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
config.DataDir = datadir
|
|
config.JsonRPC.Http.Port = 0 // It will choose a free/available port
|
|
|
|
// start the server
|
|
return NewServer(config, WithGRPCListener(gRPCListener))
|
|
}
|
|
|
|
func CloseMockServer(server *Server) {
|
|
// remove the contents of temp data dir
|
|
os.RemoveAll(server.config.DataDir)
|
|
|
|
// close the server
|
|
server.Stop()
|
|
}
|