Cuando trabajo con web3.js, Truffle y Ganache, puedo hacer esto:
web3.currentProvider.send({method: "evm_increaseTime", params: [numOfSeconds]});
¿Cómo puedo hacer el equivalente en web3.py?
Cuando lo hago:
from web3 import HTTPProvider
for func in dir(HTTPProvider):
if not func.startswith('_'):
print(func)
Yo obtengo:
decode_rpc_response
encode_rpc_request
endpoint_uri
get_request_headers
get_request_kwargs
isConnected
logger
make_request
middlewares
request_func
¿Es posible que sea una de estas funciones a las que deba llamar?
¡Gracias!
ACTUALIZAR:
Descubrí que puedo codificar la solicitud de esta manera:
provider = Web3(HTTPProvider("http://127.0.0.1:8545")).providers[0]
request = encode_rpc_request("evm_increaseTime", [123])
Al imprimir request
me sale:
b'{"jsonrpc": "2.0", "method": "evm_increaseTime", "params": [123], "id": 0}'
Pero, ¿cómo envío esta solicitud?
OK, esto parece funcionar:
web3 = Web3(HTTPProvider("http://127.0.0.1:8545"))
provider = web3.providers[0]
provider.make_request("evm_increaseTime", [numOfSeconds])