From b31f753c11b49c889eb0af41220693336d639e93 Mon Sep 17 00:00:00 2001 From: Rostyslav Tyshko Date: Thu, 26 Jun 2025 23:18:18 -0400 Subject: [PATCH] add test_prove_send_utxo_multiple_assets_one_receiver --- zkvm/src/lib.rs | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/zkvm/src/lib.rs b/zkvm/src/lib.rs index 5481724c..a967bd3b 100644 --- a/zkvm/src/lib.rs +++ b/zkvm/src/lib.rs @@ -528,7 +528,7 @@ mod tests { assert!(result.is_ok()); } -#[test] + #[test] fn test_gas_limits_check_insufficient_funds() { let message = 1; let message_2 = 2; @@ -550,7 +550,7 @@ mod tests { assert_eq!(utxo_exec.owner, owner); } -#[test] + #[test] fn test_prove_mint_utxo() { let owner = AccountAddress::default(); let amount = 123456789; @@ -560,7 +560,7 @@ mod tests { assert_eq!(utxo.owner, owner); } -#[test] + #[test] fn test_prove_send_utxo() { let owner = AccountAddress::default(); let amount = 100; @@ -574,7 +574,7 @@ mod tests { assert_eq!(outputs.len(), 2); } -#[test] + #[test] fn test_prove_send_utxo_deshielded() { let owner = AccountAddress::default(); let amount = 100; @@ -601,4 +601,20 @@ mod tests { assert_eq!(outputs.len(), 2); } + #[test] + fn test_prove_send_utxo_multiple_assets_one_receiver() { + let owner = AccountAddress::default(); + let receiver = AccountAddress::default(); + + let utxos = vec![ + prove_mint_utxo(100, owner).unwrap().0, + prove_mint_utxo(50, owner).unwrap().0, + ]; + + let (to_receiver, to_change, _receipt) = prove_send_utxo_multiple_assets_one_receiver(utxos, 1, receiver).unwrap(); + let total_to_receiver: u128 = to_receiver.iter().map(|u| u.amount).sum(); + + assert!(total_to_receiver > 0); + assert_eq!(to_receiver.len() + to_change.len(), 2); + } }