()
| 24 | |
| 25 | #[tokio::test] |
| 26 | async fn test_assert_commits_tx_success() { |
| 27 | let config = setup_test_full().await; |
| 28 | let faucet = Faucet::new(FaucetType::EsploraRegtest); |
| 29 | |
| 30 | let reward_amount = get_reward_amount(ONE_HUNDRED); |
| 31 | let assert_commit1_dust_amount = |
| 32 | config.assert_commit_connectors_e_1.connectors_num() as u64 * DUST_AMOUNT; |
| 33 | let assert_commit2_dust_amount = |
| 34 | config.assert_commit_connectors_e_2.connectors_num() as u64 * DUST_AMOUNT; |
| 35 | let amount = Amount::from_sat( |
| 36 | reward_amount |
| 37 | + assert_commit1_dust_amount |
| 38 | + assert_commit2_dust_amount |
| 39 | + MIN_RELAY_FEE_ASSERT_INITIAL |
| 40 | + MIN_RELAY_FEE_ASSERT_COMMIT1 |
| 41 | + MIN_RELAY_FEE_ASSERT_COMMIT2 |
| 42 | + MIN_RELAY_FEE_ASSERT_FINAL, |
| 43 | ); |
| 44 | let assert_inital_tx = fund_create_and_mine_assert_initial_tx(&config, &faucet, amount).await; |
| 45 | |
| 46 | let mut vout_base = 1; |
| 47 | let mut assert_commit1 = AssertCommit1Transaction::new( |
| 48 | &config.assert_commit_connectors_e_1, |
| 49 | &config.assert_commit_connectors_f.connector_f_1, |
| 50 | (0..config.assert_commit_connectors_e_1.connectors_num()) |
| 51 | .map(|idx| Input { |
| 52 | outpoint: OutPoint { |
| 53 | txid: assert_inital_tx.compute_txid(), |
| 54 | vout: (idx + vout_base).to_u32().unwrap(), |
| 55 | }, |
| 56 | amount: assert_inital_tx.output[idx + vout_base].value, |
| 57 | }) |
| 58 | .collect(), |
| 59 | ); |
| 60 | |
| 61 | vout_base += config.assert_commit_connectors_e_1.connectors_num(); |
| 62 | |
| 63 | let mut assert_commit2 = AssertCommit2Transaction::new( |
| 64 | &config.assert_commit_connectors_e_2, |
| 65 | &config.assert_commit_connectors_f.connector_f_2, |
| 66 | (0..config.assert_commit_connectors_e_2.connectors_num()) |
| 67 | .map(|idx| Input { |
| 68 | outpoint: OutPoint { |
| 69 | txid: assert_inital_tx.compute_txid(), |
| 70 | vout: (idx + vout_base).to_u32().unwrap(), |
| 71 | }, |
| 72 | amount: assert_inital_tx.output[idx + vout_base].value, |
| 73 | }) |
| 74 | .collect(), |
| 75 | ); |
| 76 | |
| 77 | let (witness_for_commit1, witness_for_commit2) = |
| 78 | sign_assert_tx_with_groth16_proof(&config.commitment_secrets, &config.valid_proof); |
| 79 | assert_commit1.sign( |
| 80 | &config.assert_commit_connectors_e_1, |
| 81 | witness_for_commit1.clone(), |
| 82 | ); |
| 83 | assert_commit2.sign( |
nothing calls this directly
no test coverage detected