Cleanup program's ProcessInstruction (#5828)

This commit is contained in:
Jack May
2019-09-06 14:44:41 -07:00
committed by GitHub
parent e8d88f3237
commit 4c4b7d39b8
4 changed files with 21 additions and 18 deletions

View File

@ -3,9 +3,10 @@
extern crate solana_sdk;
use solana_sdk::entrypoint;
use solana_sdk::entrypoint::*;
use solana_sdk::pubkey::Pubkey;
entrypoint!(process_instruction);
fn process_instruction(ka: &mut [SolKeyedAccount], _info: &SolClusterInfo, _data: &[u8]) -> bool {
fn process_instruction(_program_id: &Pubkey, ka: &mut [SolKeyedAccount], _data: &[u8]) -> bool {
// account 0 is the mint and not owned by this program, any debit of its lamports
// should result in a failed program execution. Test to ensure that this debit
// is seen by the runtime and fails as expected

View File

@ -5,6 +5,7 @@
extern crate solana_sdk;
use solana_sdk::entrypoint::*;
use solana_sdk::log::*;
use solana_sdk::pubkey::Pubkey;
use solana_sdk::{entrypoint, info};
#[derive(Debug, PartialEq)]
@ -20,9 +21,9 @@ fn return_sstruct() -> SStruct {
}
entrypoint!(process_instruction);
fn process_instruction(ka: &mut [SolKeyedAccount], info: &SolClusterInfo, data: &[u8]) -> bool {
fn process_instruction(program_id: &Pubkey, ka: &mut [SolKeyedAccount], data: &[u8]) -> bool {
info!("Program identifier:");
info.program_id.log();
program_id.log();
// Log the provided account keys and instruction input data. In the case of
// the no-op program, no account keys or input data are expected but real

View File

@ -3,10 +3,11 @@
extern crate solana_sdk;
use byteorder::{ByteOrder, LittleEndian};
use solana_sdk::entrypoint::*;
use solana_sdk::pubkey::Pubkey;
use solana_sdk::{entrypoint, info};
entrypoint!(process_instruction);
fn process_instruction(ka: &mut [SolKeyedAccount], _info: &SolClusterInfo, _data: &[u8]) -> bool {
fn process_instruction(_program_id: &Pubkey, ka: &mut [SolKeyedAccount], _data: &[u8]) -> bool {
let tick_height = LittleEndian::read_u64(ka[2].data);
assert_eq!(10u64, tick_height);