add public transfer method to mocked client

This commit is contained in:
Sergio Chouhy 2025-07-18 11:24:15 -03:00
parent 097bf54782
commit f93c481be3
2 changed files with 13 additions and 9 deletions

View File

@ -21,11 +21,7 @@ fn main() {
sequencer.print();
// A public execution of the Transfer Program
let sender_addr = addresses[1];
let receiver_addr = addresses[2];
sequencer
.process_public_execution::<TransferProgram>(&[sender_addr, receiver_addr], 10)
.unwrap();
MockedClient::transfer_public(&addresses[1], &addresses[2], 10, &mut sequencer).unwrap();
println!("🚀 Balances after transfer");
sequencer.print();

View File

@ -1,11 +1,19 @@
use core::types::Address;
use crate::mocked_components::client::MockedClient;
use nssa::program::TransferProgram;
use crate::mocked_components::{client::MockedClient, sequencer::MockedSequencer};
impl MockedClient {
fn transfer_public(receiver_address: &Address, amount_to_transfer: u128) -> Result<(), ()> {
todo!()
pub fn transfer_public(
sender_address: &Address,
receiver_address: &Address,
amount_to_transfer: u128,
sequencer: &mut MockedSequencer,
) -> Result<(), ()> {
sequencer.process_public_execution::<TransferProgram>(
&[*sender_address, *receiver_address],
amount_to_transfer,
)
}
}