| 1825 | } |
| 1826 | |
| 1827 | pub async fn assert_final(&mut self, client: &AsyncClient) -> Result<Transaction, Error> { |
| 1828 | verify_if_not_mined(client, self.assert_final_transaction.tx().compute_txid()).await?; |
| 1829 | |
| 1830 | let assert_initial_txid = self.assert_initial_transaction.tx().compute_txid(); |
| 1831 | let assert_initial_status = client.get_tx_status(&assert_initial_txid).await; |
| 1832 | |
| 1833 | match assert_initial_status { |
| 1834 | Ok(status) => match status.confirmed { |
| 1835 | true => Ok(self.assert_final_transaction.finalize()), |
| 1836 | false => Err(Error::Graph(GraphError::PrecedingTxNotConfirmed(vec![ |
| 1837 | NamedTx::for_tx(&self.assert_initial_transaction, status.confirmed), |
| 1838 | ]))), |
| 1839 | }, |
| 1840 | Err(e) => Err(Error::Esplora(e)), |
| 1841 | } |
| 1842 | } |
| 1843 | |
| 1844 | pub async fn disprove( |
| 1845 | &mut self, |