Expand CPI returning error test (#13672)

This commit is contained in:
Jack May 2020-11-18 14:18:49 -08:00 committed by GitHub
parent f25c969ad8
commit 15057b087c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 19 additions and 1 deletions

View File

@ -133,15 +133,25 @@ fn process_instruction(
info!("Test return error");
{
assert_eq!(
10,
**accounts[INVOKED_ARGUMENT_INDEX].try_borrow_lamports()?
);
assert_eq!(0, accounts[INVOKED_ARGUMENT_INDEX].try_borrow_data()?[0]);
let instruction = create_instruction(
*accounts[INVOKED_PROGRAM_INDEX].key,
&[(accounts[ARGUMENT_INDEX].key, true, true)],
&[(accounts[INVOKED_ARGUMENT_INDEX].key, false, true)],
vec![TEST_RETURN_ERROR],
);
assert_eq!(
invoke(&instruction, accounts),
Err(ProgramError::Custom(42))
);
assert_eq!(
10,
**accounts[INVOKED_ARGUMENT_INDEX].try_borrow_lamports()?
);
assert_eq!(0, accounts[INVOKED_ARGUMENT_INDEX].try_borrow_data()?[0]);
}
info!("Test refcell usage");

View File

@ -107,6 +107,14 @@ fn process_instruction(
}
TEST_RETURN_ERROR => {
info!("return error");
const ARGUMENT_INDEX: usize = 0;
// modify lamports that should be dropped
assert_eq!(10, **accounts[ARGUMENT_INDEX].try_borrow_lamports()?);
**accounts[ARGUMENT_INDEX].try_borrow_mut_lamports()? += 1;
// modify data that should be dropped
assert_eq!(0, accounts[ARGUMENT_INDEX].try_borrow_mut_data()?[0]);
accounts[ARGUMENT_INDEX].try_borrow_mut_data()?[0] = 1;
return Err(ProgramError::Custom(42));
}
TEST_DERIVED_SIGNERS => {