pub async fn wait_for_tx(&self, tx_hash: H256) -> Result<TransactionReceipt, ClientError> {
        let mut poller = tokio::time::interval(self.polling_interval);

        let start = Instant::now();
        loop {
            if let Some(receipt) = self
                .query_client()
                .tx_receipt(tx_hash)
                .await
                .map_err(|err| ClientError::NetworkError(err.to_string()))?
            {
                return Ok(receipt);
            }

            if start.elapsed() > self.confirmation_timeout {
                return Err(ClientError::OperationTimeout);
            }
            poller.tick().await;
        }
    }
Waits until the transaction is confirmed by the Ethereum blockchain.
core/tests/loadnext/src/sdk/ethereum/mod.rs