Fix lua_loader tests (#1665)

This commit is contained in:
jackcmay 2018-10-30 18:36:18 -07:00 committed by GitHub
parent 7cb5c0708b
commit 333f658eb6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 3 additions and 15 deletions

View File

@ -147,13 +147,12 @@ mod tests {
#[test] #[test]
fn test_move_funds_with_lua_via_process() { fn test_move_funds_with_lua_via_process() {
let bytes = r#" let userdata = r#"
local tokens, _ = string.unpack("I", data) local tokens, _ = string.unpack("I", data)
accounts[1].tokens = accounts[1].tokens - tokens accounts[1].tokens = accounts[1].tokens - tokens
accounts[2].tokens = accounts[2].tokens + tokens accounts[2].tokens = accounts[2].tokens + tokens
"#.as_bytes() "#.as_bytes()
.to_vec(); .to_vec();
let userdata = serialize(&LuaLoader::Bytes { bytes }).unwrap();
let alice_pubkey = Pubkey::default(); let alice_pubkey = Pubkey::default();
let bob_pubkey = Pubkey::default(); let bob_pubkey = Pubkey::default();
@ -194,15 +193,12 @@ mod tests {
#[test] #[test]
fn test_load_lua_library() { fn test_load_lua_library() {
let bytes = r#" let userdata = r#"
local serialize = load(accounts[2].userdata)().serialize local serialize = load(accounts[2].userdata)().serialize
accounts[3].userdata = serialize({a=1, b=2, c=3}, nil, "s") accounts[3].userdata = serialize({a=1, b=2, c=3}, nil, "s")
"#.as_bytes() "#.as_bytes()
.to_vec(); .to_vec();
let userdata = serialize(&LuaLoader::Bytes { bytes }).unwrap();
let program_id = Pubkey::default(); let program_id = Pubkey::default();
let program_account = Account { let program_account = Account {
tokens: 1, tokens: 1,
userdata, userdata,
@ -210,9 +206,7 @@ mod tests {
executable: true, executable: true,
loader_program_id: Pubkey::default(), loader_program_id: Pubkey::default(),
}; };
let alice_account = Account::new(100, 0, program_id); let alice_account = Account::new(100, 0, program_id);
let serialize_account = Account { let serialize_account = Account {
tokens: 100, tokens: 100,
userdata: read_test_file("serialize.lua"), userdata: read_test_file("serialize.lua"),
@ -220,7 +214,6 @@ mod tests {
executable: false, executable: false,
loader_program_id: Pubkey::default(), loader_program_id: Pubkey::default(),
}; };
let mut accounts = [ let mut accounts = [
(Pubkey::default(), program_account), (Pubkey::default(), program_account),
(Pubkey::default(), alice_account), (Pubkey::default(), alice_account),
@ -228,9 +221,7 @@ mod tests {
(Pubkey::default(), Account::new(1, 0, program_id)), (Pubkey::default(), Account::new(1, 0, program_id)),
]; ];
let mut keyed_accounts = create_keyed_accounts(&mut accounts); let mut keyed_accounts = create_keyed_accounts(&mut accounts);
process(&mut keyed_accounts, &[]); process(&mut keyed_accounts, &[]);
// Verify deterministic ordering of a serialized Lua table. // Verify deterministic ordering of a serialized Lua table.
assert_eq!( assert_eq!(
str::from_utf8(&keyed_accounts[3].account.userdata).unwrap(), str::from_utf8(&keyed_accounts[3].account.userdata).unwrap(),
@ -250,12 +241,9 @@ mod tests {
let dan_pubkey = Pubkey::new(&[5; 32]); let dan_pubkey = Pubkey::new(&[5; 32]);
let erin_pubkey = Pubkey::new(&[6; 32]); let erin_pubkey = Pubkey::new(&[6; 32]);
let userdata = serialize(&LuaLoader::Bytes {
bytes: read_test_file("multisig.lua"),
}).unwrap();
let program_account = Account { let program_account = Account {
tokens: 1, tokens: 1,
userdata, userdata: read_test_file("multisig.lua"),
program_id, program_id,
executable: true, executable: true,
loader_program_id: Pubkey::default(), loader_program_id: Pubkey::default(),