Documentation ¶
Overview ¶
Package tenderly handles interacting with tenderly for easier debugging. This currently exports transactions, but does not properly handle source maps. For this to work we're going to have to correctly handle combined json outputs here: https://ethereum.stackexchange.com/a/26216 We can't export this functionality because it doesn't exist in go. tenderly piggybacks off the underlying provider. This can be accomplished by overriding the abigen to include the combined-json source map. While we're at it we should be able to copy the solidity source code into traceutil and generate direct stack traces in the console for geth/ganache based tests. This is stubbed in backends/base right now
Index ¶
- Constants
- type LocalTXDeploymentProvider
- func (p *LocalTXDeploymentProvider) CheckIfProviderStructure(directory string) bool
- func (p *LocalTXDeploymentProvider) GetConfig(configName string, configDir string) (*providers.Config, error)
- func (p *LocalTXDeploymentProvider) GetContracts(buildDir string, networkIDs []string, objects ...*model.StateObject) ([]providers.Contract, int, error)
- func (*LocalTXDeploymentProvider) GetProviderName() providers.DeploymentProviderName
- func (p *LocalTXDeploymentProvider) MustGetConfig() (*providers.Config, error)
- type Tenderly
Constants ¶
const LocalTXDeploymentProviderName providers.DeploymentProviderName = "LocalTXDeploymentProvider"
LocalTXDeploymentProviderName is the custom synapse deployment provider.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type LocalTXDeploymentProvider ¶
type LocalTXDeploymentProvider struct {
*truffle.DeploymentProvider
}
LocalTXDeploymentProvider provides the development provider for synapse.
func NewDeploymentProvider ¶
func NewDeploymentProvider() *LocalTXDeploymentProvider
NewDeploymentProvider creates a provider for this project.
func (*LocalTXDeploymentProvider) CheckIfProviderStructure ¶
func (p *LocalTXDeploymentProvider) CheckIfProviderStructure(directory string) bool
CheckIfProviderStructure checks if the provider is currently this provider, which it always is note: there may be some issues here if multiple providers answer true (idk what happens)
func (*LocalTXDeploymentProvider) GetConfig ¶
func (p *LocalTXDeploymentProvider) GetConfig(configName string, configDir string) (*providers.Config, error)
GetConfig gets the config for the synapse deployment TODO the rest of this probably needs to be configured somehow.
func (*LocalTXDeploymentProvider) GetContracts ¶
func (p *LocalTXDeploymentProvider) GetContracts(buildDir string, networkIDs []string, objects ...*model.StateObject) ([]providers.Contract, int, error)
GetContracts gets contracts currently deployed on the provider. Since this is for unit tests, this is none always since this method is only called on initialization.
func (*LocalTXDeploymentProvider) GetProviderName ¶
func (*LocalTXDeploymentProvider) GetProviderName() providers.DeploymentProviderName
GetProviderName of the LocalTXDeploymentProvider.
func (*LocalTXDeploymentProvider) MustGetConfig ¶
func (p *LocalTXDeploymentProvider) MustGetConfig() (*providers.Config, error)
MustGetConfig does nothing but conform to the interface. nolint: wrapcheck
type Tenderly ¶
type Tenderly struct { *debug.ContractSource // contains filtered or unexported fields }
Tenderly provides utilities for using tenderly for debugging local tests using tenderly http://tenderly.co/
func NewTenderly ¶
NewTenderly creates a new tenderly object and sets up the basic config.
func (*Tenderly) StartListener ¶
StartListener starts listening for events on all chains and exports them to tenderly. nolint: staticcheck
func (*Tenderly) VerifyContract ¶
func (t *Tenderly) VerifyContract(ctx context.Context, chn chain.Chain, contractType contracts.ContractType, contract contracts.DeployedContract) error
VerifyContract verifies a contract on tenderly. nolint: staticcheck