52 lines
1.1 KiB
Go
52 lines
1.1 KiB
Go
package integration_tests
|
|
|
|
import (
|
|
"fmt"
|
|
"io"
|
|
"os"
|
|
"strings"
|
|
"testing"
|
|
|
|
"github.com/ethereum-optimism/optimism/proxyd"
|
|
"github.com/ethereum/go-ethereum/log"
|
|
"github.com/stretchr/testify/require"
|
|
)
|
|
|
|
func TestInitProxyd(t *testing.T) {
|
|
goodBackend := NewMockBackend(BatchedResponseHandler(200, goodResponse))
|
|
defer goodBackend.Close()
|
|
|
|
require.NoError(t, os.Setenv("GOOD_BACKEND_RPC_URL", goodBackend.URL()))
|
|
|
|
config := ReadConfig("smoke")
|
|
|
|
sysStdOut := os.Stdout
|
|
r, w, err := os.Pipe()
|
|
require.NoError(t, err)
|
|
os.Stdout = w
|
|
|
|
proxyd.SetLogLevel(log.LevelInfo)
|
|
|
|
defer func() {
|
|
w.Close()
|
|
out, _ := io.ReadAll(r)
|
|
require.True(t, strings.Contains(string(out), "started proxyd"))
|
|
require.True(t, strings.Contains(string(out), "shutting down proxyd"))
|
|
fmt.Println(string(out))
|
|
os.Stdout = sysStdOut
|
|
}()
|
|
|
|
_, shutdown, err := proxyd.Start(config)
|
|
require.NoError(t, err)
|
|
defer shutdown()
|
|
|
|
t.Run("initialization", func(t *testing.T) {
|
|
client := NewProxydClient("http://127.0.0.1:8545")
|
|
res, code, err := client.SendRPC(ethChainID, nil)
|
|
require.NoError(t, err)
|
|
require.Equal(t, 200, code)
|
|
require.NotNil(t, res)
|
|
})
|
|
|
|
}
|