package backend import ( "math/big" "os" "path/filepath" "testing" "github.com/ethereum-optimism/optimism/op-supervisor/supervisor/types" "github.com/stretchr/testify/require" ) func TestLogDBPath(t *testing.T) { base := t.TempDir() chainIDStr := "42984928492928428424243444" chainIDBig, ok := new(big.Int).SetString(chainIDStr, 10) require.True(t, ok) chainID := types.ChainIDFromBig(chainIDBig) expected := filepath.Join(base, "subdir", chainIDStr, "log.db") path, err := prepLogDBPath(chainID, filepath.Join(base, "subdir")) require.NoError(t, err) require.Equal(t, expected, path) // Check it still works when directories exist require.NoError(t, os.WriteFile(path, []byte("test"), 0o644)) path, err = prepLogDBPath(chainID, filepath.Join(base, "subdir")) require.NoError(t, err) require.Equal(t, expected, path) }