Skip to content

Commit aa2afc9

Browse files
committed
do not filter map resulting accounts (#59)
1 parent 1dd4692 commit aa2afc9

File tree

1 file changed

+7
-14
lines changed

1 file changed

+7
-14
lines changed

harness/src/lib.rs

Lines changed: 7 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -189,13 +189,15 @@ impl Mollusk {
189189

190190
let resulting_accounts: Vec<(Pubkey, AccountSharedData)> = accounts
191191
.iter()
192-
.filter_map(|(pubkey, _)| {
192+
.map(|(pubkey, account)| {
193193
transaction_context
194194
.find_index_of_account(pubkey)
195195
.map(|index| {
196-
let account = transaction_context.get_account_at_index(index).unwrap();
197-
(*pubkey, account.take())
196+
let resulting_account =
197+
transaction_context.get_account_at_index(index).unwrap();
198+
(*pubkey, resulting_account.take())
198199
})
200+
.unwrap_or((*pubkey, account.clone()))
199201
})
200202
.collect();
201203

@@ -234,17 +236,8 @@ impl Mollusk {
234236
result.compute_units_consumed += this_result.compute_units_consumed;
235237
result.execution_time += this_result.execution_time;
236238
result.program_result = this_result.program_result;
237-
for resulting_account in this_result.resulting_accounts.into_iter() {
238-
if let Some(pos) = result
239-
.resulting_accounts
240-
.iter()
241-
.position(|(key, _)| key == &resulting_account.0)
242-
{
243-
result.resulting_accounts[pos].1 = resulting_account.1;
244-
} else {
245-
result.resulting_accounts.push(resulting_account);
246-
}
247-
}
239+
result.raw_result = this_result.raw_result;
240+
result.resulting_accounts = this_result.resulting_accounts;
248241

249242
if result.program_result.is_err() {
250243
break;

0 commit comments

Comments
 (0)