From 9b8bd1a21930fa2b41cd50b11b3d26bdaeb97f2a Mon Sep 17 00:00:00 2001 From: Depo-dev Date: Fri, 24 Apr 2026 13:42:51 +0100 Subject: [PATCH] test(factory): fix deploy signature in tests and add Soroban unit tests - Update mock-wallet init to accept rp_id and origin (matching factory's call) - Fix all client.deploy/try_deploy calls to pass rp_id and origin - Add make_rp_id and make_origin helpers to test module - Add test_duplicate_deploy_prevented (same key, different domain blocked) - Add test_deploy_full_integration (address distinct, signer registered, duplicate blocked) - Delete stale snapshots (will regenerate on next cargo test run) - Add rust-toolchain.toml pinning 1.85.0 Note: cargo test is temporarily blocked by the stellar-xdr/arbitrary incompatibility tracked in issue #79 on the upstream repo. Closes #85 --- contracts/factory/src/lib.rs | 124 ++++- .../test/test_address_determinism.1.json | 458 --------------- .../test/test_address_determinism.2.json | 367 ------------ .../test/test_deploy_before_init_fails.1.json | 191 ------- .../test/test_deploy_full_integration.1.json | 70 --- .../test/test_deploy_happy_path.1.json | 343 ------------ ...nt_keys_produce_different_addresses.1.json | 527 ------------------ .../test/test_double_init_fails.1.json | 252 --------- .../test/test_duplicate_deploy_fails.1.json | 458 --------------- .../test_duplicate_deploy_prevented.1.json | 266 --------- .../test/test_init_stores_wasm_hash.1.json | 137 ----- .../test_invalid_public_key_all_zeros.1.json | 252 --------- .../test_invalid_public_key_bad_prefix.1.json | 252 --------- ...key_correct_prefix_but_not_on_curve.1.json | 252 --------- ...let_initialization_registers_signer.1.json | 392 ------------- contracts/mock-wallet/src/lib.rs | 6 +- contracts/rust-toolchain.toml | 2 + 17 files changed, 113 insertions(+), 4236 deletions(-) delete mode 100644 contracts/factory/test_snapshots/test/test_address_determinism.1.json delete mode 100644 contracts/factory/test_snapshots/test/test_address_determinism.2.json delete mode 100644 contracts/factory/test_snapshots/test/test_deploy_before_init_fails.1.json delete mode 100644 contracts/factory/test_snapshots/test/test_deploy_full_integration.1.json delete mode 100644 contracts/factory/test_snapshots/test/test_deploy_happy_path.1.json delete mode 100644 contracts/factory/test_snapshots/test/test_different_keys_produce_different_addresses.1.json delete mode 100644 contracts/factory/test_snapshots/test/test_double_init_fails.1.json delete mode 100644 contracts/factory/test_snapshots/test/test_duplicate_deploy_fails.1.json delete mode 100644 contracts/factory/test_snapshots/test/test_duplicate_deploy_prevented.1.json delete mode 100644 contracts/factory/test_snapshots/test/test_init_stores_wasm_hash.1.json delete mode 100644 contracts/factory/test_snapshots/test/test_invalid_public_key_all_zeros.1.json delete mode 100644 contracts/factory/test_snapshots/test/test_invalid_public_key_bad_prefix.1.json delete mode 100644 contracts/factory/test_snapshots/test/test_invalid_public_key_correct_prefix_but_not_on_curve.1.json delete mode 100644 contracts/factory/test_snapshots/test/test_wallet_initialization_registers_signer.1.json create mode 100644 contracts/rust-toolchain.toml diff --git a/contracts/factory/src/lib.rs b/contracts/factory/src/lib.rs index e132d13..cf6641e 100644 --- a/contracts/factory/src/lib.rs +++ b/contracts/factory/src/lib.rs @@ -76,7 +76,7 @@ fn sha2_hash(input: &[u8; 65]) -> [u8; 32] { #[cfg(test)] mod test { use super::*; - use soroban_sdk::{Env, BytesN}; + use soroban_sdk::{Bytes, Env, BytesN}; const MOCK_WALLET_WASM: &[u8] = include_bytes!("../test-fixtures/mock_wallet.wasm"); @@ -104,6 +104,16 @@ mod test { BytesN::from_array(env, &bytes) } + /// Dummy rp_id bytes for test deployments (represents "localhost"). + fn make_rp_id(env: &Env) -> Bytes { + Bytes::from_slice(env, b"localhost") + } + + /// Dummy origin bytes for test deployments (represents a test origin). + fn make_origin(env: &Env) -> Bytes { + Bytes::from_slice(env, b"http://localhost:3000") + } + /// Upload mock wallet WASM and return its hash for use with factory.init(). fn install_mock_wallet(env: &Env) -> BytesN<32> { env.deployer().upload_contract_wasm(MOCK_WALLET_WASM) @@ -149,9 +159,11 @@ mod test { client.init(&wasm_hash); let pub_key = valid_pub_key(&env); - let wallet_address = client.deploy(&pub_key); + let rp_id = make_rp_id(&env); + let origin = make_origin(&env); + let wallet_address = client.deploy(&pub_key, &rp_id, &origin); - // Deployment must return a non-factory address (i.e. a new contract was created) + // deploy_wallet: must return a valid Address distinct from the factory assert_ne!(wallet_address, contract_id); // Salt must be marked as deployed in storage @@ -176,13 +188,42 @@ mod test { client.init(&wasm_hash); let pub_key = valid_pub_key(&env); + let rp_id = make_rp_id(&env); + let origin = make_origin(&env); // First deploy succeeds - let _ = client.deploy(&pub_key); + let _ = client.deploy(&pub_key, &rp_id, &origin); + + // Second deploy with the same key must return AlreadyDeployed + assert_eq!( + client.try_deploy(&pub_key, &rp_id, &origin), + Err(Ok(FactoryError::AlreadyDeployed)) + ); + } + + /// Duplicate deploy is prevented regardless of rp_id / origin values — + /// the guard key is the SHA-256 of the public key, not the domain. + #[test] + fn test_duplicate_deploy_prevented() { + let env = make_env(); + env.mock_all_auths(); + let contract_id = env.register_contract(None, Factory); + let client = FactoryClient::new(&env, &contract_id); + + let wasm_hash = install_mock_wallet(&env); + client.init(&wasm_hash); - // Second deploy with the same key must fail + let pub_key = valid_pub_key(&env); + let rp_id_a = make_rp_id(&env); + let origin_a = make_origin(&env); + let rp_id_b = Bytes::from_slice(&env, b"example.com"); + let origin_b = Bytes::from_slice(&env, b"https://example.com"); + + let _ = client.deploy(&pub_key, &rp_id_a, &origin_a); + + // Different domain values do not bypass the duplicate guard assert_eq!( - client.try_deploy(&pub_key), + client.try_deploy(&pub_key, &rp_id_b, &origin_b), Err(Ok(FactoryError::AlreadyDeployed)) ); } @@ -195,8 +236,10 @@ mod test { let contract_id = env.register_contract(None, Factory); let client = FactoryClient::new(&env, &contract_id); let pub_key = valid_pub_key(&env); + let rp_id = make_rp_id(&env); + let origin = make_origin(&env); assert_eq!( - client.try_deploy(&pub_key), + client.try_deploy(&pub_key, &rp_id, &origin), Err(Ok(FactoryError::NotInitialized)) ); } @@ -211,8 +254,10 @@ mod test { let mut bad_key = [0u8; 65]; bad_key[0] = 0x03; let pub_key = BytesN::from_array(&env, &bad_key); + let rp_id = make_rp_id(&env); + let origin = make_origin(&env); assert_eq!( - client.try_deploy(&pub_key), + client.try_deploy(&pub_key, &rp_id, &origin), Err(Ok(FactoryError::InvalidPublicKey)) ); } @@ -225,8 +270,10 @@ mod test { client.init(&dummy_wasm_hash(&env)); // All zeros — prefix is 0x00, not a valid point let pub_key = BytesN::from_array(&env, &[0u8; 65]); + let rp_id = make_rp_id(&env); + let origin = make_origin(&env); assert_eq!( - client.try_deploy(&pub_key), + client.try_deploy(&pub_key, &rp_id, &origin), Err(Ok(FactoryError::InvalidPublicKey)) ); } @@ -241,8 +288,10 @@ mod test { let mut bad_key = [1u8; 65]; bad_key[0] = 0x04; let pub_key = BytesN::from_array(&env, &bad_key); + let rp_id = make_rp_id(&env); + let origin = make_origin(&env); assert_eq!( - client.try_deploy(&pub_key), + client.try_deploy(&pub_key, &rp_id, &origin), Err(Ok(FactoryError::InvalidPublicKey)) ); } @@ -263,7 +312,7 @@ mod test { bytes }; - // Salt computation is deterministic + // Salt computation is deterministic (pure function, no env needed) let salt1 = sha2_hash(&pub_key_bytes); let salt2 = sha2_hash(&pub_key_bytes); assert_eq!(salt1, salt2); @@ -277,11 +326,13 @@ mod test { client.init(&wasm_hash); let pub_key = BytesN::from_array(&env, &pub_key_bytes); - let _wallet = client.deploy(&pub_key); + let rp_id = make_rp_id(&env); + let origin = make_origin(&env); + let _wallet = client.deploy(&pub_key, &rp_id, &origin); // Same key → same salt → same address → AlreadyDeployed assert_eq!( - client.try_deploy(&pub_key), + client.try_deploy(&pub_key, &rp_id, &origin), Err(Ok(FactoryError::AlreadyDeployed)) ); } @@ -296,8 +347,11 @@ mod test { let wasm_hash = install_mock_wallet(&env); client.init(&wasm_hash); - let addr1 = client.deploy(&valid_pub_key(&env)); - let addr2 = client.deploy(&second_valid_pub_key(&env)); + let rp_id = make_rp_id(&env); + let origin = make_origin(&env); + + let addr1 = client.deploy(&valid_pub_key(&env), &rp_id, &origin); + let addr2 = client.deploy(&second_valid_pub_key(&env), &rp_id, &origin); assert_ne!(addr1, addr2); } @@ -314,10 +368,11 @@ mod test { client.init(&wasm_hash); let pub_key = valid_pub_key(&env); - let wallet_address = client.deploy(&pub_key); + let rp_id = make_rp_id(&env); + let origin = make_origin(&env); + let wallet_address = client.deploy(&pub_key, &rp_id, &origin); // The deployed wallet should have the public key registered as a signer. - // Call has_signer on the deployed mock wallet contract. let has_signer: bool = env.invoke_contract( &wallet_address, &symbol_short!("is_signer"), @@ -325,4 +380,39 @@ mod test { ); assert!(has_signer); } + + // ── 6. Full Integration ─────────────────────────────────────────────── + + #[test] + fn test_deploy_full_integration() { + let env = make_env(); + env.mock_all_auths(); + let contract_id = env.register_contract(None, Factory); + let client = FactoryClient::new(&env, &contract_id); + + let wasm_hash = install_mock_wallet(&env); + client.init(&wasm_hash); + + let pub_key = valid_pub_key(&env); + let rp_id = make_rp_id(&env); + let origin = make_origin(&env); + let wallet_address = client.deploy(&pub_key, &rp_id, &origin); + + // Address is distinct from factory + assert_ne!(wallet_address, contract_id); + + // Signer registered in the deployed wallet + let has_signer: bool = env.invoke_contract( + &wallet_address, + &symbol_short!("is_signer"), + (pub_key.clone(),).into_val(&env), + ); + assert!(has_signer); + + // Salt marked as deployed → duplicate blocked + assert_eq!( + client.try_deploy(&pub_key, &rp_id, &origin), + Err(Ok(FactoryError::AlreadyDeployed)) + ); + } } diff --git a/contracts/factory/test_snapshots/test/test_address_determinism.1.json b/contracts/factory/test_snapshots/test/test_address_determinism.1.json deleted file mode 100644 index debeb64..0000000 --- a/contracts/factory/test_snapshots/test/test_address_determinism.1.json +++ /dev/null @@ -1,458 +0,0 @@ -{ - "generators": { - "address": 1, - "nonce": 0 - }, - "auth": [ - [], - [], - [] - ], - "ledger": { - "protocol_version": 20, - "sequence_number": 0, - "timestamp": 0, - "network_id": "0000000000000000000000000000000000000000000000000000000000000000", - "base_reserve": 0, - "min_persistent_entry_ttl": 4096, - "min_temp_entry_ttl": 16, - "max_entry_ttl": 6312000, - "ledger_entries": [ - [ - { - "contract_data": { - "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", - "key": "ledger_key_contract_instance", - "durability": "persistent" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_data": { - "ext": "v0", - "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", - "key": "ledger_key_contract_instance", - "durability": "persistent", - "val": { - "contract_instance": { - "executable": { - "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" - }, - "storage": [ - { - "key": { - "vec": [ - { - "symbol": "Deployed" - }, - { - "bytes": "550baec2e009d8c4ba938306605e9c55657d613e13ee25e208736c90567b6d88" - } - ] - }, - "val": "void" - }, - { - "key": { - "vec": [ - { - "symbol": "WasmHash" - } - ] - }, - "val": { - "bytes": "be0cdfaa1432ed928911b8ae96196949ecba6856641994c2af540b1236734694" - } - } - ] - } - } - } - }, - "ext": "v0" - }, - 4095 - ] - ], - [ - { - "contract_data": { - "contract": "CDD3RZPYKN5IKF2B7D5RD4EBCT6KE6M7SMY7PI2DDXP5CW7DB5NYDR7Z", - "key": { - "vec": [ - { - "symbol": "Signer" - }, - { - "bytes": "040c901d423c831ca85e27c73c263ba132721bb9d7a84c4f0380b2a6756fd601331c8870234dec878504c174144fa4b14b66a651691606d8173e55bd37e381569e" - } - ] - }, - "durability": "persistent" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_data": { - "ext": "v0", - "contract": "CDD3RZPYKN5IKF2B7D5RD4EBCT6KE6M7SMY7PI2DDXP5CW7DB5NYDR7Z", - "key": { - "vec": [ - { - "symbol": "Signer" - }, - { - "bytes": "040c901d423c831ca85e27c73c263ba132721bb9d7a84c4f0380b2a6756fd601331c8870234dec878504c174144fa4b14b66a651691606d8173e55bd37e381569e" - } - ] - }, - "durability": "persistent", - "val": "void" - } - }, - "ext": "v0" - }, - 4095 - ] - ], - [ - { - "contract_data": { - "contract": "CDD3RZPYKN5IKF2B7D5RD4EBCT6KE6M7SMY7PI2DDXP5CW7DB5NYDR7Z", - "key": "ledger_key_contract_instance", - "durability": "persistent" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_data": { - "ext": "v0", - "contract": "CDD3RZPYKN5IKF2B7D5RD4EBCT6KE6M7SMY7PI2DDXP5CW7DB5NYDR7Z", - "key": "ledger_key_contract_instance", - "durability": "persistent", - "val": { - "contract_instance": { - "executable": { - "wasm": "be0cdfaa1432ed928911b8ae96196949ecba6856641994c2af540b1236734694" - }, - "storage": null - } - } - } - }, - "ext": "v0" - }, - 4095 - ] - ], - [ - { - "contract_code": { - "hash": "be0cdfaa1432ed928911b8ae96196949ecba6856641994c2af540b1236734694" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_code": { - "ext": "v0", - "hash": "be0cdfaa1432ed928911b8ae96196949ecba6856641994c2af540b1236734694", - "code": "0061736d01000000013f0a60027e7e017e60037e7e7e017e60017e017e60037f7f7f017e60037f7f7f0060037f7e7e017f60047f7e7e7e017e60027f7e017e60037f7e7e017e600000021f050162016a0000017601670000016c015f0001016c01300000016201380002030f0e02020304050607030306080704090405017001010105030100110619037f01418080c0000b7f00419080c0000b7f00419080c0000b073c06066d656d6f7279020004696e697400050969735f7369676e65720006015f00120a5f5f646174615f656e6403010b5f5f686561705f6261736503020ae4060eb10102017f017e23808080800041206b22012480808080000240200042ff018342c800520d0020012000370308200141106a2000108b808080004280808080708342808080809008520d00200141086a2001411f6a418880c0800010888080800020012802084101460d002001290310210220012000370310200120023703082001411f6a2001411f6a200141086a410210878080800042024201108a808080001a200141206a24808080800042020f0b000bb30103017f017e017f23808080800041206b22012480808080000240200042ff018342c800520d0020012000370308200141106a2000108b808080004280808080708342808080809008520d00200141086a2001411f6a418880c0800010888080800020012802084101460d002001290310210220012000370310200120023703082001411f6a2001411f6a200141086a410210878080800042011089808080002103200141206a2480808080002003ad0f0b000b0e00200020012002108d808080000b6a02027f017e23808080800041106b2203248080808000200320022802002204200228020422021091808080000240024020032802000d00200329030821050c010b200120042002108c8080800021050b2000420037030020002005370308200341106a2480808080000b1100200020012002108f808080004201510b10002000200120022003108e808080000b0c00200020011090808080000b1a002001ad4220864204842002ad4220864204841080808080000b1a002001ad4220864204842002ad4220864204841081808080000b0e002001200220031082808080000b0c00200120021083808080000b0a0020011084808080000bef0102017e027f0240024002400240200241094b0d00024020020d00420e21030c040b42002103034041012104024020012d0000220541df00460d00024002400240200541506a41ff0171410a490d00200541bf7f6a41ff0171411a490d022005419f7f6a41ff0171411a4f0d01200541456a21040c030b200541526a21040c020b20002005ad4208864201843702040c040b2005414b6a21040b20034206862004ad42ff0183842103200141016a21012002417f6a2202450d030c000b0b20002002360208200041003a00040b200041013602000f0b2003420886420e8421030b20002003370308200041003602000b02000b0b190100418080c0000b105369676e65720000000010000600000000b7010e636f6e747261637473706563763000000002000000000000000000000007446174614b657900000000010000000100000000000000065369676e6572000000000001000003ee00000041000000000000000000000004696e697400000001000000000000000a7075626c69635f6b65790000000003ee000000410000000000000000000000000000000969735f7369676e65720000000000000100000000000000036b657900000003ee000000410000000100000001001e11636f6e7472616374656e766d6574617630000000000000001400000000006f0e636f6e74726163746d65746176300000000000000005727376657200000000000006312e38352e3000000000000000000008727373646b7665720000002f32302e352e3023396532633330323262343335356232323461376138313465313362613531373631656562313462620000e10d046e616d650011106d6f636b5f77616c6c65742e7761736d01a60d1300535f5a4e3137736f726f62616e5f656e765f677565737435677565737433627566323973796d626f6c5f6e65775f66726f6d5f6c696e6561725f6d656d6f7279313768643565666135353937623731323834314501505f5a4e3137736f726f62616e5f656e765f67756573743567756573743376656332367665635f6e65775f66726f6d5f6c696e6561725f6d656d6f72793137683735643938376336313539643932636545024a5f5a4e3137736f726f62616e5f656e765f6775657374356775657374366c656467657231377075745f636f6e74726163745f646174613137683332373665623035326334353163316345034a5f5a4e3137736f726f62616e5f656e765f6775657374356775657374366c656467657231376861735f636f6e74726163745f646174613137683561623236663234633562306362623045043e5f5a4e3137736f726f62616e5f656e765f6775657374356775657374336275663962797465735f6c656e31376830623163333136656538623532343462450504696e6974060969735f7369676e657207775f5a4e37345f244c5424736f726f62616e5f73646b2e2e656e762e2e456e76247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e76426173652447542431387665635f6e65775f66726f6d5f736c696365313768653834313137633432653336666661394508a6015f5a4e3132365f244c5424736f726f62616e5f73646b2e2e73796d626f6c2e2e53796d626f6c247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e636f6e766572742e2e54727946726f6d56616c244c5424736f726f62616e5f73646b2e2e656e762e2e456e7624432424524624737472244754242447542431327472795f66726f6d5f76616c313768666262386330653533393166386532354509425f5a4e3131736f726f62616e5f73646b3773746f726167653753746f7261676531326861735f696e7465726e616c31376863313062326631646162613265373733450a725f5a4e37305f244c5424736f726f62616e5f73646b2e2e656e762e2e456e76247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e762447542431377075745f636f6e74726163745f6461746131376837353064663234363733663430333935450b695f5a4e37305f244c5424736f726f62616e5f73646b2e2e656e762e2e456e76247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e76244754243962797465735f6c656e31376864623464663938613338633938336635450c84015f5a4e38345f244c5424736f726f62616e5f656e765f67756573742e2e67756573742e2e4775657374247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e764261736524475424323173796d626f6c5f6e65775f66726f6d5f736c69636531376836323134643134313231636665613737450d81015f5a4e38345f244c5424736f726f62616e5f656e765f67756573742e2e67756573742e2e4775657374247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e76426173652447542431387665635f6e65775f66726f6d5f736c69636531376866333461373861393833383138636464450e7c5f5a4e38305f244c5424736f726f62616e5f656e765f67756573742e2e67756573742e2e4775657374247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e762447542431377075745f636f6e74726163745f6461746131376835636439316239353439653135646336450f7c5f5a4e38305f244c5424736f726f62616e5f656e765f67756573742e2e67756573742e2e4775657374247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e762447542431376861735f636f6e74726163745f64617461313768313833643864303837653732626563314510735f5a4e38305f244c5424736f726f62616e5f656e765f67756573742e2e67756573742e2e4775657374247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e76244754243962797465735f6c656e3137686236383136383736306433373564333345114f5f5a4e3138736f726f62616e5f656e765f636f6d6d6f6e3673796d626f6c313153796d626f6c536d616c6c31347472795f66726f6d5f6279746573313768383362393962366439643539313630664512015f071201000f5f5f737461636b5f706f696e746572090a0100072e726f64617461004d0970726f64756365727302086c616e6775616765010452757374000c70726f6365737365642d6279010572757374631d312e38352e30202834643931646534653420323032352d30322d31372900490f7461726765745f6665617475726573042b0a6d756c746976616c75652b0f6d757461626c652d676c6f62616c732b0f7265666572656e63652d74797065732b087369676e2d657874" - } - }, - "ext": "v0" - }, - 4095 - ] - ], - [ - { - "contract_code": { - "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_code": { - "ext": "v0", - "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", - "code": "" - } - }, - "ext": "v0" - }, - 4095 - ] - ] - ] - }, - "events": [ - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_call" - }, - { - "bytes": "0000000000000000000000000000000000000000000000000000000000000001" - }, - { - "symbol": "init" - } - ], - "data": { - "bytes": "be0cdfaa1432ed928911b8ae96196949ecba6856641994c2af540b1236734694" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_return" - }, - { - "symbol": "init" - } - ], - "data": "void" - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_call" - }, - { - "bytes": "0000000000000000000000000000000000000000000000000000000000000001" - }, - { - "symbol": "deploy" - } - ], - "data": { - "bytes": "040c901d423c831ca85e27c73c263ba132721bb9d7a84c4f0380b2a6756fd601331c8870234dec878504c174144fa4b14b66a651691606d8173e55bd37e381569e" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_call" - }, - { - "bytes": "c7b8e5f8537a851741f8fb11f08114fca2799f9331f7a3431ddfd15be30f5b81" - }, - { - "symbol": "init" - } - ], - "data": { - "bytes": "040c901d423c831ca85e27c73c263ba132721bb9d7a84c4f0380b2a6756fd601331c8870234dec878504c174144fa4b14b66a651691606d8173e55bd37e381569e" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "c7b8e5f8537a851741f8fb11f08114fca2799f9331f7a3431ddfd15be30f5b81", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_return" - }, - { - "symbol": "init" - } - ], - "data": "void" - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_return" - }, - { - "symbol": "deploy" - } - ], - "data": { - "address": "CDD3RZPYKN5IKF2B7D5RD4EBCT6KE6M7SMY7PI2DDXP5CW7DB5NYDR7Z" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_call" - }, - { - "bytes": "0000000000000000000000000000000000000000000000000000000000000001" - }, - { - "symbol": "deploy" - } - ], - "data": { - "bytes": "040c901d423c831ca85e27c73c263ba132721bb9d7a84c4f0380b2a6756fd601331c8870234dec878504c174144fa4b14b66a651691606d8173e55bd37e381569e" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_return" - }, - { - "symbol": "deploy" - } - ], - "data": { - "error": { - "contract": 3 - } - } - } - } - }, - "failed_call": true - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "error" - }, - { - "error": { - "contract": 3 - } - } - ], - "data": { - "string": "escalating Ok(ScErrorType::Contract) frame-exit to Err" - } - } - } - }, - "failed_call": true - }, - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "error" - }, - { - "error": { - "contract": 3 - } - } - ], - "data": { - "vec": [ - { - "string": "contract try_call failed" - }, - { - "symbol": "deploy" - }, - { - "vec": [ - { - "bytes": "040c901d423c831ca85e27c73c263ba132721bb9d7a84c4f0380b2a6756fd601331c8870234dec878504c174144fa4b14b66a651691606d8173e55bd37e381569e" - } - ] - } - ] - } - } - } - }, - "failed_call": false - } - ] -} \ No newline at end of file diff --git a/contracts/factory/test_snapshots/test/test_address_determinism.2.json b/contracts/factory/test_snapshots/test/test_address_determinism.2.json deleted file mode 100644 index 86f8474..0000000 --- a/contracts/factory/test_snapshots/test/test_address_determinism.2.json +++ /dev/null @@ -1,367 +0,0 @@ -{ - "generators": { - "address": 1, - "nonce": 0 - }, - "auth": [ - [], - [] - ], - "ledger": { - "protocol_version": 20, - "sequence_number": 0, - "timestamp": 0, - "network_id": "0000000000000000000000000000000000000000000000000000000000000000", - "base_reserve": 0, - "min_persistent_entry_ttl": 4096, - "min_temp_entry_ttl": 16, - "max_entry_ttl": 6312000, - "ledger_entries": [ - [ - { - "contract_data": { - "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", - "key": "ledger_key_contract_instance", - "durability": "persistent" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_data": { - "ext": "v0", - "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", - "key": "ledger_key_contract_instance", - "durability": "persistent", - "val": { - "contract_instance": { - "executable": { - "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" - }, - "storage": [ - { - "key": { - "vec": [ - { - "symbol": "Deployed" - }, - { - "bytes": "550baec2e009d8c4ba938306605e9c55657d613e13ee25e208736c90567b6d88" - } - ] - }, - "val": "void" - }, - { - "key": { - "vec": [ - { - "symbol": "WasmHash" - } - ] - }, - "val": { - "bytes": "be0cdfaa1432ed928911b8ae96196949ecba6856641994c2af540b1236734694" - } - } - ] - } - } - } - }, - "ext": "v0" - }, - 4095 - ] - ], - [ - { - "contract_data": { - "contract": "CDD3RZPYKN5IKF2B7D5RD4EBCT6KE6M7SMY7PI2DDXP5CW7DB5NYDR7Z", - "key": { - "vec": [ - { - "symbol": "Signer" - }, - { - "bytes": "040c901d423c831ca85e27c73c263ba132721bb9d7a84c4f0380b2a6756fd601331c8870234dec878504c174144fa4b14b66a651691606d8173e55bd37e381569e" - } - ] - }, - "durability": "persistent" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_data": { - "ext": "v0", - "contract": "CDD3RZPYKN5IKF2B7D5RD4EBCT6KE6M7SMY7PI2DDXP5CW7DB5NYDR7Z", - "key": { - "vec": [ - { - "symbol": "Signer" - }, - { - "bytes": "040c901d423c831ca85e27c73c263ba132721bb9d7a84c4f0380b2a6756fd601331c8870234dec878504c174144fa4b14b66a651691606d8173e55bd37e381569e" - } - ] - }, - "durability": "persistent", - "val": "void" - } - }, - "ext": "v0" - }, - 4095 - ] - ], - [ - { - "contract_data": { - "contract": "CDD3RZPYKN5IKF2B7D5RD4EBCT6KE6M7SMY7PI2DDXP5CW7DB5NYDR7Z", - "key": "ledger_key_contract_instance", - "durability": "persistent" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_data": { - "ext": "v0", - "contract": "CDD3RZPYKN5IKF2B7D5RD4EBCT6KE6M7SMY7PI2DDXP5CW7DB5NYDR7Z", - "key": "ledger_key_contract_instance", - "durability": "persistent", - "val": { - "contract_instance": { - "executable": { - "wasm": "be0cdfaa1432ed928911b8ae96196949ecba6856641994c2af540b1236734694" - }, - "storage": null - } - } - } - }, - "ext": "v0" - }, - 4095 - ] - ], - [ - { - "contract_code": { - "hash": "be0cdfaa1432ed928911b8ae96196949ecba6856641994c2af540b1236734694" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_code": { - "ext": "v0", - "hash": "be0cdfaa1432ed928911b8ae96196949ecba6856641994c2af540b1236734694", - "code": "0061736d01000000013f0a60027e7e017e60037e7e7e017e60017e017e60037f7f7f017e60037f7f7f0060037f7e7e017f60047f7e7e7e017e60027f7e017e60037f7e7e017e600000021f050162016a0000017601670000016c015f0001016c01300000016201380002030f0e02020304050607030306080704090405017001010105030100110619037f01418080c0000b7f00419080c0000b7f00419080c0000b073c06066d656d6f7279020004696e697400050969735f7369676e65720006015f00120a5f5f646174615f656e6403010b5f5f686561705f6261736503020ae4060eb10102017f017e23808080800041206b22012480808080000240200042ff018342c800520d0020012000370308200141106a2000108b808080004280808080708342808080809008520d00200141086a2001411f6a418880c0800010888080800020012802084101460d002001290310210220012000370310200120023703082001411f6a2001411f6a200141086a410210878080800042024201108a808080001a200141206a24808080800042020f0b000bb30103017f017e017f23808080800041206b22012480808080000240200042ff018342c800520d0020012000370308200141106a2000108b808080004280808080708342808080809008520d00200141086a2001411f6a418880c0800010888080800020012802084101460d002001290310210220012000370310200120023703082001411f6a2001411f6a200141086a410210878080800042011089808080002103200141206a2480808080002003ad0f0b000b0e00200020012002108d808080000b6a02027f017e23808080800041106b2203248080808000200320022802002204200228020422021091808080000240024020032802000d00200329030821050c010b200120042002108c8080800021050b2000420037030020002005370308200341106a2480808080000b1100200020012002108f808080004201510b10002000200120022003108e808080000b0c00200020011090808080000b1a002001ad4220864204842002ad4220864204841080808080000b1a002001ad4220864204842002ad4220864204841081808080000b0e002001200220031082808080000b0c00200120021083808080000b0a0020011084808080000bef0102017e027f0240024002400240200241094b0d00024020020d00420e21030c040b42002103034041012104024020012d0000220541df00460d00024002400240200541506a41ff0171410a490d00200541bf7f6a41ff0171411a490d022005419f7f6a41ff0171411a4f0d01200541456a21040c030b200541526a21040c020b20002005ad4208864201843702040c040b2005414b6a21040b20034206862004ad42ff0183842103200141016a21012002417f6a2202450d030c000b0b20002002360208200041003a00040b200041013602000f0b2003420886420e8421030b20002003370308200041003602000b02000b0b190100418080c0000b105369676e65720000000010000600000000b7010e636f6e747261637473706563763000000002000000000000000000000007446174614b657900000000010000000100000000000000065369676e6572000000000001000003ee00000041000000000000000000000004696e697400000001000000000000000a7075626c69635f6b65790000000003ee000000410000000000000000000000000000000969735f7369676e65720000000000000100000000000000036b657900000003ee000000410000000100000001001e11636f6e7472616374656e766d6574617630000000000000001400000000006f0e636f6e74726163746d65746176300000000000000005727376657200000000000006312e38352e3000000000000000000008727373646b7665720000002f32302e352e3023396532633330323262343335356232323461376138313465313362613531373631656562313462620000e10d046e616d650011106d6f636b5f77616c6c65742e7761736d01a60d1300535f5a4e3137736f726f62616e5f656e765f677565737435677565737433627566323973796d626f6c5f6e65775f66726f6d5f6c696e6561725f6d656d6f7279313768643565666135353937623731323834314501505f5a4e3137736f726f62616e5f656e765f67756573743567756573743376656332367665635f6e65775f66726f6d5f6c696e6561725f6d656d6f72793137683735643938376336313539643932636545024a5f5a4e3137736f726f62616e5f656e765f6775657374356775657374366c656467657231377075745f636f6e74726163745f646174613137683332373665623035326334353163316345034a5f5a4e3137736f726f62616e5f656e765f6775657374356775657374366c656467657231376861735f636f6e74726163745f646174613137683561623236663234633562306362623045043e5f5a4e3137736f726f62616e5f656e765f6775657374356775657374336275663962797465735f6c656e31376830623163333136656538623532343462450504696e6974060969735f7369676e657207775f5a4e37345f244c5424736f726f62616e5f73646b2e2e656e762e2e456e76247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e76426173652447542431387665635f6e65775f66726f6d5f736c696365313768653834313137633432653336666661394508a6015f5a4e3132365f244c5424736f726f62616e5f73646b2e2e73796d626f6c2e2e53796d626f6c247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e636f6e766572742e2e54727946726f6d56616c244c5424736f726f62616e5f73646b2e2e656e762e2e456e7624432424524624737472244754242447542431327472795f66726f6d5f76616c313768666262386330653533393166386532354509425f5a4e3131736f726f62616e5f73646b3773746f726167653753746f7261676531326861735f696e7465726e616c31376863313062326631646162613265373733450a725f5a4e37305f244c5424736f726f62616e5f73646b2e2e656e762e2e456e76247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e762447542431377075745f636f6e74726163745f6461746131376837353064663234363733663430333935450b695f5a4e37305f244c5424736f726f62616e5f73646b2e2e656e762e2e456e76247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e76244754243962797465735f6c656e31376864623464663938613338633938336635450c84015f5a4e38345f244c5424736f726f62616e5f656e765f67756573742e2e67756573742e2e4775657374247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e764261736524475424323173796d626f6c5f6e65775f66726f6d5f736c69636531376836323134643134313231636665613737450d81015f5a4e38345f244c5424736f726f62616e5f656e765f67756573742e2e67756573742e2e4775657374247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e76426173652447542431387665635f6e65775f66726f6d5f736c69636531376866333461373861393833383138636464450e7c5f5a4e38305f244c5424736f726f62616e5f656e765f67756573742e2e67756573742e2e4775657374247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e762447542431377075745f636f6e74726163745f6461746131376835636439316239353439653135646336450f7c5f5a4e38305f244c5424736f726f62616e5f656e765f67756573742e2e67756573742e2e4775657374247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e762447542431376861735f636f6e74726163745f64617461313768313833643864303837653732626563314510735f5a4e38305f244c5424736f726f62616e5f656e765f67756573742e2e67756573742e2e4775657374247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e76244754243962797465735f6c656e3137686236383136383736306433373564333345114f5f5a4e3138736f726f62616e5f656e765f636f6d6d6f6e3673796d626f6c313153796d626f6c536d616c6c31347472795f66726f6d5f6279746573313768383362393962366439643539313630664512015f071201000f5f5f737461636b5f706f696e746572090a0100072e726f64617461004d0970726f64756365727302086c616e6775616765010452757374000c70726f6365737365642d6279010572757374631d312e38352e30202834643931646534653420323032352d30322d31372900490f7461726765745f6665617475726573042b0a6d756c746976616c75652b0f6d757461626c652d676c6f62616c732b0f7265666572656e63652d74797065732b087369676e2d657874" - } - }, - "ext": "v0" - }, - 4095 - ] - ], - [ - { - "contract_code": { - "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_code": { - "ext": "v0", - "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", - "code": "" - } - }, - "ext": "v0" - }, - 4095 - ] - ] - ] - }, - "events": [ - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_call" - }, - { - "bytes": "0000000000000000000000000000000000000000000000000000000000000001" - }, - { - "symbol": "init" - } - ], - "data": { - "bytes": "be0cdfaa1432ed928911b8ae96196949ecba6856641994c2af540b1236734694" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_return" - }, - { - "symbol": "init" - } - ], - "data": "void" - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_call" - }, - { - "bytes": "0000000000000000000000000000000000000000000000000000000000000001" - }, - { - "symbol": "deploy" - } - ], - "data": { - "bytes": "040c901d423c831ca85e27c73c263ba132721bb9d7a84c4f0380b2a6756fd601331c8870234dec878504c174144fa4b14b66a651691606d8173e55bd37e381569e" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_call" - }, - { - "bytes": "c7b8e5f8537a851741f8fb11f08114fca2799f9331f7a3431ddfd15be30f5b81" - }, - { - "symbol": "init" - } - ], - "data": { - "bytes": "040c901d423c831ca85e27c73c263ba132721bb9d7a84c4f0380b2a6756fd601331c8870234dec878504c174144fa4b14b66a651691606d8173e55bd37e381569e" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "c7b8e5f8537a851741f8fb11f08114fca2799f9331f7a3431ddfd15be30f5b81", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_return" - }, - { - "symbol": "init" - } - ], - "data": "void" - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_return" - }, - { - "symbol": "deploy" - } - ], - "data": { - "address": "CDD3RZPYKN5IKF2B7D5RD4EBCT6KE6M7SMY7PI2DDXP5CW7DB5NYDR7Z" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "error" - }, - { - "error": { - "context": "internal_error" - } - } - ], - "data": { - "string": "check_same_env on different Hosts" - } - } - } - }, - "failed_call": false - } - ] -} \ No newline at end of file diff --git a/contracts/factory/test_snapshots/test/test_deploy_before_init_fails.1.json b/contracts/factory/test_snapshots/test/test_deploy_before_init_fails.1.json deleted file mode 100644 index 66b13b8..0000000 --- a/contracts/factory/test_snapshots/test/test_deploy_before_init_fails.1.json +++ /dev/null @@ -1,191 +0,0 @@ -{ - "generators": { - "address": 1, - "nonce": 0 - }, - "auth": [ - [] - ], - "ledger": { - "protocol_version": 20, - "sequence_number": 0, - "timestamp": 0, - "network_id": "0000000000000000000000000000000000000000000000000000000000000000", - "base_reserve": 0, - "min_persistent_entry_ttl": 4096, - "min_temp_entry_ttl": 16, - "max_entry_ttl": 6312000, - "ledger_entries": [ - [ - { - "contract_data": { - "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", - "key": "ledger_key_contract_instance", - "durability": "persistent" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_data": { - "ext": "v0", - "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", - "key": "ledger_key_contract_instance", - "durability": "persistent", - "val": { - "contract_instance": { - "executable": { - "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" - }, - "storage": null - } - } - } - }, - "ext": "v0" - }, - 4095 - ] - ], - [ - { - "contract_code": { - "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_code": { - "ext": "v0", - "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", - "code": "" - } - }, - "ext": "v0" - }, - 4095 - ] - ] - ] - }, - "events": [ - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_call" - }, - { - "bytes": "0000000000000000000000000000000000000000000000000000000000000001" - }, - { - "symbol": "deploy" - } - ], - "data": { - "bytes": "040c901d423c831ca85e27c73c263ba132721bb9d7a84c4f0380b2a6756fd601331c8870234dec878504c174144fa4b14b66a651691606d8173e55bd37e381569e" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_return" - }, - { - "symbol": "deploy" - } - ], - "data": { - "error": { - "contract": 2 - } - } - } - } - }, - "failed_call": true - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "error" - }, - { - "error": { - "contract": 2 - } - } - ], - "data": { - "string": "escalating Ok(ScErrorType::Contract) frame-exit to Err" - } - } - } - }, - "failed_call": true - }, - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "error" - }, - { - "error": { - "contract": 2 - } - } - ], - "data": { - "vec": [ - { - "string": "contract try_call failed" - }, - { - "symbol": "deploy" - }, - { - "vec": [ - { - "bytes": "040c901d423c831ca85e27c73c263ba132721bb9d7a84c4f0380b2a6756fd601331c8870234dec878504c174144fa4b14b66a651691606d8173e55bd37e381569e" - } - ] - } - ] - } - } - } - }, - "failed_call": false - } - ] -} \ No newline at end of file diff --git a/contracts/factory/test_snapshots/test/test_deploy_full_integration.1.json b/contracts/factory/test_snapshots/test/test_deploy_full_integration.1.json deleted file mode 100644 index d49cb06..0000000 --- a/contracts/factory/test_snapshots/test/test_deploy_full_integration.1.json +++ /dev/null @@ -1,70 +0,0 @@ -{ - "generators": { - "address": 0, - "nonce": 0 - }, - "auth": [], - "ledger": { - "protocol_version": 20, - "sequence_number": 0, - "timestamp": 0, - "network_id": "0000000000000000000000000000000000000000000000000000000000000000", - "base_reserve": 0, - "min_persistent_entry_ttl": 4096, - "min_temp_entry_ttl": 16, - "max_entry_ttl": 6312000, - "ledger_entries": [] - }, - "events": [ - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "error" - }, - { - "error": { - "wasm_vm": "invalid_action" - } - } - ], - "data": { - "string": "Module(Translation(TranslationError { inner: Validate(BinaryReaderError { inner: BinaryReaderErrorInner { message: \"reference-types not enabled: zero byte expected\", offset: 57914, needed_hint: None } }) }))" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "error" - }, - { - "error": { - "wasm_vm": "invalid_action" - } - } - ], - "data": { - "string": "escalating error to panic" - } - } - } - }, - "failed_call": false - } - ] -} \ No newline at end of file diff --git a/contracts/factory/test_snapshots/test/test_deploy_happy_path.1.json b/contracts/factory/test_snapshots/test/test_deploy_happy_path.1.json deleted file mode 100644 index e09fd8b..0000000 --- a/contracts/factory/test_snapshots/test/test_deploy_happy_path.1.json +++ /dev/null @@ -1,343 +0,0 @@ -{ - "generators": { - "address": 1, - "nonce": 0 - }, - "auth": [ - [], - [], - [] - ], - "ledger": { - "protocol_version": 20, - "sequence_number": 0, - "timestamp": 0, - "network_id": "0000000000000000000000000000000000000000000000000000000000000000", - "base_reserve": 0, - "min_persistent_entry_ttl": 4096, - "min_temp_entry_ttl": 16, - "max_entry_ttl": 6312000, - "ledger_entries": [ - [ - { - "contract_data": { - "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", - "key": "ledger_key_contract_instance", - "durability": "persistent" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_data": { - "ext": "v0", - "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", - "key": "ledger_key_contract_instance", - "durability": "persistent", - "val": { - "contract_instance": { - "executable": { - "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" - }, - "storage": [ - { - "key": { - "vec": [ - { - "symbol": "Deployed" - }, - { - "bytes": "550baec2e009d8c4ba938306605e9c55657d613e13ee25e208736c90567b6d88" - } - ] - }, - "val": "void" - }, - { - "key": { - "vec": [ - { - "symbol": "WasmHash" - } - ] - }, - "val": { - "bytes": "be0cdfaa1432ed928911b8ae96196949ecba6856641994c2af540b1236734694" - } - } - ] - } - } - } - }, - "ext": "v0" - }, - 4095 - ] - ], - [ - { - "contract_data": { - "contract": "CDD3RZPYKN5IKF2B7D5RD4EBCT6KE6M7SMY7PI2DDXP5CW7DB5NYDR7Z", - "key": { - "vec": [ - { - "symbol": "Signer" - }, - { - "bytes": "040c901d423c831ca85e27c73c263ba132721bb9d7a84c4f0380b2a6756fd601331c8870234dec878504c174144fa4b14b66a651691606d8173e55bd37e381569e" - } - ] - }, - "durability": "persistent" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_data": { - "ext": "v0", - "contract": "CDD3RZPYKN5IKF2B7D5RD4EBCT6KE6M7SMY7PI2DDXP5CW7DB5NYDR7Z", - "key": { - "vec": [ - { - "symbol": "Signer" - }, - { - "bytes": "040c901d423c831ca85e27c73c263ba132721bb9d7a84c4f0380b2a6756fd601331c8870234dec878504c174144fa4b14b66a651691606d8173e55bd37e381569e" - } - ] - }, - "durability": "persistent", - "val": "void" - } - }, - "ext": "v0" - }, - 4095 - ] - ], - [ - { - "contract_data": { - "contract": "CDD3RZPYKN5IKF2B7D5RD4EBCT6KE6M7SMY7PI2DDXP5CW7DB5NYDR7Z", - "key": "ledger_key_contract_instance", - "durability": "persistent" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_data": { - "ext": "v0", - "contract": "CDD3RZPYKN5IKF2B7D5RD4EBCT6KE6M7SMY7PI2DDXP5CW7DB5NYDR7Z", - "key": "ledger_key_contract_instance", - "durability": "persistent", - "val": { - "contract_instance": { - "executable": { - "wasm": "be0cdfaa1432ed928911b8ae96196949ecba6856641994c2af540b1236734694" - }, - "storage": null - } - } - } - }, - "ext": "v0" - }, - 4095 - ] - ], - [ - { - "contract_code": { - "hash": "be0cdfaa1432ed928911b8ae96196949ecba6856641994c2af540b1236734694" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_code": { - "ext": "v0", - "hash": "be0cdfaa1432ed928911b8ae96196949ecba6856641994c2af540b1236734694", - "code": "0061736d01000000013f0a60027e7e017e60037e7e7e017e60017e017e60037f7f7f017e60037f7f7f0060037f7e7e017f60047f7e7e7e017e60027f7e017e60037f7e7e017e600000021f050162016a0000017601670000016c015f0001016c01300000016201380002030f0e02020304050607030306080704090405017001010105030100110619037f01418080c0000b7f00419080c0000b7f00419080c0000b073c06066d656d6f7279020004696e697400050969735f7369676e65720006015f00120a5f5f646174615f656e6403010b5f5f686561705f6261736503020ae4060eb10102017f017e23808080800041206b22012480808080000240200042ff018342c800520d0020012000370308200141106a2000108b808080004280808080708342808080809008520d00200141086a2001411f6a418880c0800010888080800020012802084101460d002001290310210220012000370310200120023703082001411f6a2001411f6a200141086a410210878080800042024201108a808080001a200141206a24808080800042020f0b000bb30103017f017e017f23808080800041206b22012480808080000240200042ff018342c800520d0020012000370308200141106a2000108b808080004280808080708342808080809008520d00200141086a2001411f6a418880c0800010888080800020012802084101460d002001290310210220012000370310200120023703082001411f6a2001411f6a200141086a410210878080800042011089808080002103200141206a2480808080002003ad0f0b000b0e00200020012002108d808080000b6a02027f017e23808080800041106b2203248080808000200320022802002204200228020422021091808080000240024020032802000d00200329030821050c010b200120042002108c8080800021050b2000420037030020002005370308200341106a2480808080000b1100200020012002108f808080004201510b10002000200120022003108e808080000b0c00200020011090808080000b1a002001ad4220864204842002ad4220864204841080808080000b1a002001ad4220864204842002ad4220864204841081808080000b0e002001200220031082808080000b0c00200120021083808080000b0a0020011084808080000bef0102017e027f0240024002400240200241094b0d00024020020d00420e21030c040b42002103034041012104024020012d0000220541df00460d00024002400240200541506a41ff0171410a490d00200541bf7f6a41ff0171411a490d022005419f7f6a41ff0171411a4f0d01200541456a21040c030b200541526a21040c020b20002005ad4208864201843702040c040b2005414b6a21040b20034206862004ad42ff0183842103200141016a21012002417f6a2202450d030c000b0b20002002360208200041003a00040b200041013602000f0b2003420886420e8421030b20002003370308200041003602000b02000b0b190100418080c0000b105369676e65720000000010000600000000b7010e636f6e747261637473706563763000000002000000000000000000000007446174614b657900000000010000000100000000000000065369676e6572000000000001000003ee00000041000000000000000000000004696e697400000001000000000000000a7075626c69635f6b65790000000003ee000000410000000000000000000000000000000969735f7369676e65720000000000000100000000000000036b657900000003ee000000410000000100000001001e11636f6e7472616374656e766d6574617630000000000000001400000000006f0e636f6e74726163746d65746176300000000000000005727376657200000000000006312e38352e3000000000000000000008727373646b7665720000002f32302e352e3023396532633330323262343335356232323461376138313465313362613531373631656562313462620000e10d046e616d650011106d6f636b5f77616c6c65742e7761736d01a60d1300535f5a4e3137736f726f62616e5f656e765f677565737435677565737433627566323973796d626f6c5f6e65775f66726f6d5f6c696e6561725f6d656d6f7279313768643565666135353937623731323834314501505f5a4e3137736f726f62616e5f656e765f67756573743567756573743376656332367665635f6e65775f66726f6d5f6c696e6561725f6d656d6f72793137683735643938376336313539643932636545024a5f5a4e3137736f726f62616e5f656e765f6775657374356775657374366c656467657231377075745f636f6e74726163745f646174613137683332373665623035326334353163316345034a5f5a4e3137736f726f62616e5f656e765f6775657374356775657374366c656467657231376861735f636f6e74726163745f646174613137683561623236663234633562306362623045043e5f5a4e3137736f726f62616e5f656e765f6775657374356775657374336275663962797465735f6c656e31376830623163333136656538623532343462450504696e6974060969735f7369676e657207775f5a4e37345f244c5424736f726f62616e5f73646b2e2e656e762e2e456e76247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e76426173652447542431387665635f6e65775f66726f6d5f736c696365313768653834313137633432653336666661394508a6015f5a4e3132365f244c5424736f726f62616e5f73646b2e2e73796d626f6c2e2e53796d626f6c247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e636f6e766572742e2e54727946726f6d56616c244c5424736f726f62616e5f73646b2e2e656e762e2e456e7624432424524624737472244754242447542431327472795f66726f6d5f76616c313768666262386330653533393166386532354509425f5a4e3131736f726f62616e5f73646b3773746f726167653753746f7261676531326861735f696e7465726e616c31376863313062326631646162613265373733450a725f5a4e37305f244c5424736f726f62616e5f73646b2e2e656e762e2e456e76247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e762447542431377075745f636f6e74726163745f6461746131376837353064663234363733663430333935450b695f5a4e37305f244c5424736f726f62616e5f73646b2e2e656e762e2e456e76247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e76244754243962797465735f6c656e31376864623464663938613338633938336635450c84015f5a4e38345f244c5424736f726f62616e5f656e765f67756573742e2e67756573742e2e4775657374247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e764261736524475424323173796d626f6c5f6e65775f66726f6d5f736c69636531376836323134643134313231636665613737450d81015f5a4e38345f244c5424736f726f62616e5f656e765f67756573742e2e67756573742e2e4775657374247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e76426173652447542431387665635f6e65775f66726f6d5f736c69636531376866333461373861393833383138636464450e7c5f5a4e38305f244c5424736f726f62616e5f656e765f67756573742e2e67756573742e2e4775657374247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e762447542431377075745f636f6e74726163745f6461746131376835636439316239353439653135646336450f7c5f5a4e38305f244c5424736f726f62616e5f656e765f67756573742e2e67756573742e2e4775657374247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e762447542431376861735f636f6e74726163745f64617461313768313833643864303837653732626563314510735f5a4e38305f244c5424736f726f62616e5f656e765f67756573742e2e67756573742e2e4775657374247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e76244754243962797465735f6c656e3137686236383136383736306433373564333345114f5f5a4e3138736f726f62616e5f656e765f636f6d6d6f6e3673796d626f6c313153796d626f6c536d616c6c31347472795f66726f6d5f6279746573313768383362393962366439643539313630664512015f071201000f5f5f737461636b5f706f696e746572090a0100072e726f64617461004d0970726f64756365727302086c616e6775616765010452757374000c70726f6365737365642d6279010572757374631d312e38352e30202834643931646534653420323032352d30322d31372900490f7461726765745f6665617475726573042b0a6d756c746976616c75652b0f6d757461626c652d676c6f62616c732b0f7265666572656e63652d74797065732b087369676e2d657874" - } - }, - "ext": "v0" - }, - 4095 - ] - ], - [ - { - "contract_code": { - "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_code": { - "ext": "v0", - "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", - "code": "" - } - }, - "ext": "v0" - }, - 4095 - ] - ] - ] - }, - "events": [ - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_call" - }, - { - "bytes": "0000000000000000000000000000000000000000000000000000000000000001" - }, - { - "symbol": "init" - } - ], - "data": { - "bytes": "be0cdfaa1432ed928911b8ae96196949ecba6856641994c2af540b1236734694" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_return" - }, - { - "symbol": "init" - } - ], - "data": "void" - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_call" - }, - { - "bytes": "0000000000000000000000000000000000000000000000000000000000000001" - }, - { - "symbol": "deploy" - } - ], - "data": { - "bytes": "040c901d423c831ca85e27c73c263ba132721bb9d7a84c4f0380b2a6756fd601331c8870234dec878504c174144fa4b14b66a651691606d8173e55bd37e381569e" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_call" - }, - { - "bytes": "c7b8e5f8537a851741f8fb11f08114fca2799f9331f7a3431ddfd15be30f5b81" - }, - { - "symbol": "init" - } - ], - "data": { - "bytes": "040c901d423c831ca85e27c73c263ba132721bb9d7a84c4f0380b2a6756fd601331c8870234dec878504c174144fa4b14b66a651691606d8173e55bd37e381569e" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "c7b8e5f8537a851741f8fb11f08114fca2799f9331f7a3431ddfd15be30f5b81", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_return" - }, - { - "symbol": "init" - } - ], - "data": "void" - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_return" - }, - { - "symbol": "deploy" - } - ], - "data": { - "address": "CDD3RZPYKN5IKF2B7D5RD4EBCT6KE6M7SMY7PI2DDXP5CW7DB5NYDR7Z" - } - } - } - }, - "failed_call": false - } - ] -} \ No newline at end of file diff --git a/contracts/factory/test_snapshots/test/test_different_keys_produce_different_addresses.1.json b/contracts/factory/test_snapshots/test/test_different_keys_produce_different_addresses.1.json deleted file mode 100644 index 7f13737..0000000 --- a/contracts/factory/test_snapshots/test/test_different_keys_produce_different_addresses.1.json +++ /dev/null @@ -1,527 +0,0 @@ -{ - "generators": { - "address": 1, - "nonce": 0 - }, - "auth": [ - [], - [], - [] - ], - "ledger": { - "protocol_version": 20, - "sequence_number": 0, - "timestamp": 0, - "network_id": "0000000000000000000000000000000000000000000000000000000000000000", - "base_reserve": 0, - "min_persistent_entry_ttl": 4096, - "min_temp_entry_ttl": 16, - "max_entry_ttl": 6312000, - "ledger_entries": [ - [ - { - "contract_data": { - "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", - "key": "ledger_key_contract_instance", - "durability": "persistent" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_data": { - "ext": "v0", - "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", - "key": "ledger_key_contract_instance", - "durability": "persistent", - "val": { - "contract_instance": { - "executable": { - "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" - }, - "storage": [ - { - "key": { - "vec": [ - { - "symbol": "Deployed" - }, - { - "bytes": "07f9b2e3be6e3e7119a592103d62f0310144d18f7708ecbd3aef5d0ff4907a88" - } - ] - }, - "val": "void" - }, - { - "key": { - "vec": [ - { - "symbol": "Deployed" - }, - { - "bytes": "550baec2e009d8c4ba938306605e9c55657d613e13ee25e208736c90567b6d88" - } - ] - }, - "val": "void" - }, - { - "key": { - "vec": [ - { - "symbol": "WasmHash" - } - ] - }, - "val": { - "bytes": "be0cdfaa1432ed928911b8ae96196949ecba6856641994c2af540b1236734694" - } - } - ] - } - } - } - }, - "ext": "v0" - }, - 4095 - ] - ], - [ - { - "contract_data": { - "contract": "CBB5IEQJT25R5BRGVOKPV7CJYV46ZRJHQQ3UWNBUKDPVBARXPDXKOX7I", - "key": { - "vec": [ - { - "symbol": "Signer" - }, - { - "bytes": "042ed2192f0f9275200acd34fbd8c6ce5a91a459488411320b4c6de3e6a22d7fa06f2374f60534a9009629714d063402a3c3ed60db057ef7999a7a31a78aebc0c7" - } - ] - }, - "durability": "persistent" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_data": { - "ext": "v0", - "contract": "CBB5IEQJT25R5BRGVOKPV7CJYV46ZRJHQQ3UWNBUKDPVBARXPDXKOX7I", - "key": { - "vec": [ - { - "symbol": "Signer" - }, - { - "bytes": "042ed2192f0f9275200acd34fbd8c6ce5a91a459488411320b4c6de3e6a22d7fa06f2374f60534a9009629714d063402a3c3ed60db057ef7999a7a31a78aebc0c7" - } - ] - }, - "durability": "persistent", - "val": "void" - } - }, - "ext": "v0" - }, - 4095 - ] - ], - [ - { - "contract_data": { - "contract": "CBB5IEQJT25R5BRGVOKPV7CJYV46ZRJHQQ3UWNBUKDPVBARXPDXKOX7I", - "key": "ledger_key_contract_instance", - "durability": "persistent" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_data": { - "ext": "v0", - "contract": "CBB5IEQJT25R5BRGVOKPV7CJYV46ZRJHQQ3UWNBUKDPVBARXPDXKOX7I", - "key": "ledger_key_contract_instance", - "durability": "persistent", - "val": { - "contract_instance": { - "executable": { - "wasm": "be0cdfaa1432ed928911b8ae96196949ecba6856641994c2af540b1236734694" - }, - "storage": null - } - } - } - }, - "ext": "v0" - }, - 4095 - ] - ], - [ - { - "contract_data": { - "contract": "CDD3RZPYKN5IKF2B7D5RD4EBCT6KE6M7SMY7PI2DDXP5CW7DB5NYDR7Z", - "key": { - "vec": [ - { - "symbol": "Signer" - }, - { - "bytes": "040c901d423c831ca85e27c73c263ba132721bb9d7a84c4f0380b2a6756fd601331c8870234dec878504c174144fa4b14b66a651691606d8173e55bd37e381569e" - } - ] - }, - "durability": "persistent" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_data": { - "ext": "v0", - "contract": "CDD3RZPYKN5IKF2B7D5RD4EBCT6KE6M7SMY7PI2DDXP5CW7DB5NYDR7Z", - "key": { - "vec": [ - { - "symbol": "Signer" - }, - { - "bytes": "040c901d423c831ca85e27c73c263ba132721bb9d7a84c4f0380b2a6756fd601331c8870234dec878504c174144fa4b14b66a651691606d8173e55bd37e381569e" - } - ] - }, - "durability": "persistent", - "val": "void" - } - }, - "ext": "v0" - }, - 4095 - ] - ], - [ - { - "contract_data": { - "contract": "CDD3RZPYKN5IKF2B7D5RD4EBCT6KE6M7SMY7PI2DDXP5CW7DB5NYDR7Z", - "key": "ledger_key_contract_instance", - "durability": "persistent" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_data": { - "ext": "v0", - "contract": "CDD3RZPYKN5IKF2B7D5RD4EBCT6KE6M7SMY7PI2DDXP5CW7DB5NYDR7Z", - "key": "ledger_key_contract_instance", - "durability": "persistent", - "val": { - "contract_instance": { - "executable": { - "wasm": "be0cdfaa1432ed928911b8ae96196949ecba6856641994c2af540b1236734694" - }, - "storage": null - } - } - } - }, - "ext": "v0" - }, - 4095 - ] - ], - [ - { - "contract_code": { - "hash": "be0cdfaa1432ed928911b8ae96196949ecba6856641994c2af540b1236734694" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_code": { - "ext": "v0", - "hash": "be0cdfaa1432ed928911b8ae96196949ecba6856641994c2af540b1236734694", - "code": "0061736d01000000013f0a60027e7e017e60037e7e7e017e60017e017e60037f7f7f017e60037f7f7f0060037f7e7e017f60047f7e7e7e017e60027f7e017e60037f7e7e017e600000021f050162016a0000017601670000016c015f0001016c01300000016201380002030f0e02020304050607030306080704090405017001010105030100110619037f01418080c0000b7f00419080c0000b7f00419080c0000b073c06066d656d6f7279020004696e697400050969735f7369676e65720006015f00120a5f5f646174615f656e6403010b5f5f686561705f6261736503020ae4060eb10102017f017e23808080800041206b22012480808080000240200042ff018342c800520d0020012000370308200141106a2000108b808080004280808080708342808080809008520d00200141086a2001411f6a418880c0800010888080800020012802084101460d002001290310210220012000370310200120023703082001411f6a2001411f6a200141086a410210878080800042024201108a808080001a200141206a24808080800042020f0b000bb30103017f017e017f23808080800041206b22012480808080000240200042ff018342c800520d0020012000370308200141106a2000108b808080004280808080708342808080809008520d00200141086a2001411f6a418880c0800010888080800020012802084101460d002001290310210220012000370310200120023703082001411f6a2001411f6a200141086a410210878080800042011089808080002103200141206a2480808080002003ad0f0b000b0e00200020012002108d808080000b6a02027f017e23808080800041106b2203248080808000200320022802002204200228020422021091808080000240024020032802000d00200329030821050c010b200120042002108c8080800021050b2000420037030020002005370308200341106a2480808080000b1100200020012002108f808080004201510b10002000200120022003108e808080000b0c00200020011090808080000b1a002001ad4220864204842002ad4220864204841080808080000b1a002001ad4220864204842002ad4220864204841081808080000b0e002001200220031082808080000b0c00200120021083808080000b0a0020011084808080000bef0102017e027f0240024002400240200241094b0d00024020020d00420e21030c040b42002103034041012104024020012d0000220541df00460d00024002400240200541506a41ff0171410a490d00200541bf7f6a41ff0171411a490d022005419f7f6a41ff0171411a4f0d01200541456a21040c030b200541526a21040c020b20002005ad4208864201843702040c040b2005414b6a21040b20034206862004ad42ff0183842103200141016a21012002417f6a2202450d030c000b0b20002002360208200041003a00040b200041013602000f0b2003420886420e8421030b20002003370308200041003602000b02000b0b190100418080c0000b105369676e65720000000010000600000000b7010e636f6e747261637473706563763000000002000000000000000000000007446174614b657900000000010000000100000000000000065369676e6572000000000001000003ee00000041000000000000000000000004696e697400000001000000000000000a7075626c69635f6b65790000000003ee000000410000000000000000000000000000000969735f7369676e65720000000000000100000000000000036b657900000003ee000000410000000100000001001e11636f6e7472616374656e766d6574617630000000000000001400000000006f0e636f6e74726163746d65746176300000000000000005727376657200000000000006312e38352e3000000000000000000008727373646b7665720000002f32302e352e3023396532633330323262343335356232323461376138313465313362613531373631656562313462620000e10d046e616d650011106d6f636b5f77616c6c65742e7761736d01a60d1300535f5a4e3137736f726f62616e5f656e765f677565737435677565737433627566323973796d626f6c5f6e65775f66726f6d5f6c696e6561725f6d656d6f7279313768643565666135353937623731323834314501505f5a4e3137736f726f62616e5f656e765f67756573743567756573743376656332367665635f6e65775f66726f6d5f6c696e6561725f6d656d6f72793137683735643938376336313539643932636545024a5f5a4e3137736f726f62616e5f656e765f6775657374356775657374366c656467657231377075745f636f6e74726163745f646174613137683332373665623035326334353163316345034a5f5a4e3137736f726f62616e5f656e765f6775657374356775657374366c656467657231376861735f636f6e74726163745f646174613137683561623236663234633562306362623045043e5f5a4e3137736f726f62616e5f656e765f6775657374356775657374336275663962797465735f6c656e31376830623163333136656538623532343462450504696e6974060969735f7369676e657207775f5a4e37345f244c5424736f726f62616e5f73646b2e2e656e762e2e456e76247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e76426173652447542431387665635f6e65775f66726f6d5f736c696365313768653834313137633432653336666661394508a6015f5a4e3132365f244c5424736f726f62616e5f73646b2e2e73796d626f6c2e2e53796d626f6c247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e636f6e766572742e2e54727946726f6d56616c244c5424736f726f62616e5f73646b2e2e656e762e2e456e7624432424524624737472244754242447542431327472795f66726f6d5f76616c313768666262386330653533393166386532354509425f5a4e3131736f726f62616e5f73646b3773746f726167653753746f7261676531326861735f696e7465726e616c31376863313062326631646162613265373733450a725f5a4e37305f244c5424736f726f62616e5f73646b2e2e656e762e2e456e76247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e762447542431377075745f636f6e74726163745f6461746131376837353064663234363733663430333935450b695f5a4e37305f244c5424736f726f62616e5f73646b2e2e656e762e2e456e76247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e76244754243962797465735f6c656e31376864623464663938613338633938336635450c84015f5a4e38345f244c5424736f726f62616e5f656e765f67756573742e2e67756573742e2e4775657374247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e764261736524475424323173796d626f6c5f6e65775f66726f6d5f736c69636531376836323134643134313231636665613737450d81015f5a4e38345f244c5424736f726f62616e5f656e765f67756573742e2e67756573742e2e4775657374247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e76426173652447542431387665635f6e65775f66726f6d5f736c69636531376866333461373861393833383138636464450e7c5f5a4e38305f244c5424736f726f62616e5f656e765f67756573742e2e67756573742e2e4775657374247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e762447542431377075745f636f6e74726163745f6461746131376835636439316239353439653135646336450f7c5f5a4e38305f244c5424736f726f62616e5f656e765f67756573742e2e67756573742e2e4775657374247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e762447542431376861735f636f6e74726163745f64617461313768313833643864303837653732626563314510735f5a4e38305f244c5424736f726f62616e5f656e765f67756573742e2e67756573742e2e4775657374247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e76244754243962797465735f6c656e3137686236383136383736306433373564333345114f5f5a4e3138736f726f62616e5f656e765f636f6d6d6f6e3673796d626f6c313153796d626f6c536d616c6c31347472795f66726f6d5f6279746573313768383362393962366439643539313630664512015f071201000f5f5f737461636b5f706f696e746572090a0100072e726f64617461004d0970726f64756365727302086c616e6775616765010452757374000c70726f6365737365642d6279010572757374631d312e38352e30202834643931646534653420323032352d30322d31372900490f7461726765745f6665617475726573042b0a6d756c746976616c75652b0f6d757461626c652d676c6f62616c732b0f7265666572656e63652d74797065732b087369676e2d657874" - } - }, - "ext": "v0" - }, - 4095 - ] - ], - [ - { - "contract_code": { - "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_code": { - "ext": "v0", - "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", - "code": "" - } - }, - "ext": "v0" - }, - 4095 - ] - ] - ] - }, - "events": [ - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_call" - }, - { - "bytes": "0000000000000000000000000000000000000000000000000000000000000001" - }, - { - "symbol": "init" - } - ], - "data": { - "bytes": "be0cdfaa1432ed928911b8ae96196949ecba6856641994c2af540b1236734694" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_return" - }, - { - "symbol": "init" - } - ], - "data": "void" - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_call" - }, - { - "bytes": "0000000000000000000000000000000000000000000000000000000000000001" - }, - { - "symbol": "deploy" - } - ], - "data": { - "bytes": "040c901d423c831ca85e27c73c263ba132721bb9d7a84c4f0380b2a6756fd601331c8870234dec878504c174144fa4b14b66a651691606d8173e55bd37e381569e" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_call" - }, - { - "bytes": "c7b8e5f8537a851741f8fb11f08114fca2799f9331f7a3431ddfd15be30f5b81" - }, - { - "symbol": "init" - } - ], - "data": { - "bytes": "040c901d423c831ca85e27c73c263ba132721bb9d7a84c4f0380b2a6756fd601331c8870234dec878504c174144fa4b14b66a651691606d8173e55bd37e381569e" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "c7b8e5f8537a851741f8fb11f08114fca2799f9331f7a3431ddfd15be30f5b81", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_return" - }, - { - "symbol": "init" - } - ], - "data": "void" - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_return" - }, - { - "symbol": "deploy" - } - ], - "data": { - "address": "CDD3RZPYKN5IKF2B7D5RD4EBCT6KE6M7SMY7PI2DDXP5CW7DB5NYDR7Z" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_call" - }, - { - "bytes": "0000000000000000000000000000000000000000000000000000000000000001" - }, - { - "symbol": "deploy" - } - ], - "data": { - "bytes": "042ed2192f0f9275200acd34fbd8c6ce5a91a459488411320b4c6de3e6a22d7fa06f2374f60534a9009629714d063402a3c3ed60db057ef7999a7a31a78aebc0c7" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_call" - }, - { - "bytes": "43d412099ebb1e8626ab94fafc49c579ecc52784374b343450df50823778eea7" - }, - { - "symbol": "init" - } - ], - "data": { - "bytes": "042ed2192f0f9275200acd34fbd8c6ce5a91a459488411320b4c6de3e6a22d7fa06f2374f60534a9009629714d063402a3c3ed60db057ef7999a7a31a78aebc0c7" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "43d412099ebb1e8626ab94fafc49c579ecc52784374b343450df50823778eea7", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_return" - }, - { - "symbol": "init" - } - ], - "data": "void" - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_return" - }, - { - "symbol": "deploy" - } - ], - "data": { - "address": "CBB5IEQJT25R5BRGVOKPV7CJYV46ZRJHQQ3UWNBUKDPVBARXPDXKOX7I" - } - } - } - }, - "failed_call": false - } - ] -} \ No newline at end of file diff --git a/contracts/factory/test_snapshots/test/test_double_init_fails.1.json b/contracts/factory/test_snapshots/test/test_double_init_fails.1.json deleted file mode 100644 index 6d6a74e..0000000 --- a/contracts/factory/test_snapshots/test/test_double_init_fails.1.json +++ /dev/null @@ -1,252 +0,0 @@ -{ - "generators": { - "address": 1, - "nonce": 0 - }, - "auth": [ - [], - [] - ], - "ledger": { - "protocol_version": 20, - "sequence_number": 0, - "timestamp": 0, - "network_id": "0000000000000000000000000000000000000000000000000000000000000000", - "base_reserve": 0, - "min_persistent_entry_ttl": 4096, - "min_temp_entry_ttl": 16, - "max_entry_ttl": 6312000, - "ledger_entries": [ - [ - { - "contract_data": { - "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", - "key": "ledger_key_contract_instance", - "durability": "persistent" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_data": { - "ext": "v0", - "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", - "key": "ledger_key_contract_instance", - "durability": "persistent", - "val": { - "contract_instance": { - "executable": { - "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" - }, - "storage": [ - { - "key": { - "vec": [ - { - "symbol": "WasmHash" - } - ] - }, - "val": { - "bytes": "0101010101010101010101010101010101010101010101010101010101010101" - } - } - ] - } - } - } - }, - "ext": "v0" - }, - 4095 - ] - ], - [ - { - "contract_code": { - "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_code": { - "ext": "v0", - "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", - "code": "" - } - }, - "ext": "v0" - }, - 4095 - ] - ] - ] - }, - "events": [ - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_call" - }, - { - "bytes": "0000000000000000000000000000000000000000000000000000000000000001" - }, - { - "symbol": "init" - } - ], - "data": { - "bytes": "0101010101010101010101010101010101010101010101010101010101010101" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_return" - }, - { - "symbol": "init" - } - ], - "data": "void" - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_call" - }, - { - "bytes": "0000000000000000000000000000000000000000000000000000000000000001" - }, - { - "symbol": "init" - } - ], - "data": { - "bytes": "0101010101010101010101010101010101010101010101010101010101010101" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_return" - }, - { - "symbol": "init" - } - ], - "data": { - "error": { - "contract": 1 - } - } - } - } - }, - "failed_call": true - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "error" - }, - { - "error": { - "contract": 1 - } - } - ], - "data": { - "string": "escalating Ok(ScErrorType::Contract) frame-exit to Err" - } - } - } - }, - "failed_call": true - }, - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "error" - }, - { - "error": { - "contract": 1 - } - } - ], - "data": { - "vec": [ - { - "string": "contract try_call failed" - }, - { - "symbol": "init" - }, - { - "vec": [ - { - "bytes": "0101010101010101010101010101010101010101010101010101010101010101" - } - ] - } - ] - } - } - } - }, - "failed_call": false - } - ] -} \ No newline at end of file diff --git a/contracts/factory/test_snapshots/test/test_duplicate_deploy_fails.1.json b/contracts/factory/test_snapshots/test/test_duplicate_deploy_fails.1.json deleted file mode 100644 index debeb64..0000000 --- a/contracts/factory/test_snapshots/test/test_duplicate_deploy_fails.1.json +++ /dev/null @@ -1,458 +0,0 @@ -{ - "generators": { - "address": 1, - "nonce": 0 - }, - "auth": [ - [], - [], - [] - ], - "ledger": { - "protocol_version": 20, - "sequence_number": 0, - "timestamp": 0, - "network_id": "0000000000000000000000000000000000000000000000000000000000000000", - "base_reserve": 0, - "min_persistent_entry_ttl": 4096, - "min_temp_entry_ttl": 16, - "max_entry_ttl": 6312000, - "ledger_entries": [ - [ - { - "contract_data": { - "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", - "key": "ledger_key_contract_instance", - "durability": "persistent" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_data": { - "ext": "v0", - "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", - "key": "ledger_key_contract_instance", - "durability": "persistent", - "val": { - "contract_instance": { - "executable": { - "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" - }, - "storage": [ - { - "key": { - "vec": [ - { - "symbol": "Deployed" - }, - { - "bytes": "550baec2e009d8c4ba938306605e9c55657d613e13ee25e208736c90567b6d88" - } - ] - }, - "val": "void" - }, - { - "key": { - "vec": [ - { - "symbol": "WasmHash" - } - ] - }, - "val": { - "bytes": "be0cdfaa1432ed928911b8ae96196949ecba6856641994c2af540b1236734694" - } - } - ] - } - } - } - }, - "ext": "v0" - }, - 4095 - ] - ], - [ - { - "contract_data": { - "contract": "CDD3RZPYKN5IKF2B7D5RD4EBCT6KE6M7SMY7PI2DDXP5CW7DB5NYDR7Z", - "key": { - "vec": [ - { - "symbol": "Signer" - }, - { - "bytes": "040c901d423c831ca85e27c73c263ba132721bb9d7a84c4f0380b2a6756fd601331c8870234dec878504c174144fa4b14b66a651691606d8173e55bd37e381569e" - } - ] - }, - "durability": "persistent" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_data": { - "ext": "v0", - "contract": "CDD3RZPYKN5IKF2B7D5RD4EBCT6KE6M7SMY7PI2DDXP5CW7DB5NYDR7Z", - "key": { - "vec": [ - { - "symbol": "Signer" - }, - { - "bytes": "040c901d423c831ca85e27c73c263ba132721bb9d7a84c4f0380b2a6756fd601331c8870234dec878504c174144fa4b14b66a651691606d8173e55bd37e381569e" - } - ] - }, - "durability": "persistent", - "val": "void" - } - }, - "ext": "v0" - }, - 4095 - ] - ], - [ - { - "contract_data": { - "contract": "CDD3RZPYKN5IKF2B7D5RD4EBCT6KE6M7SMY7PI2DDXP5CW7DB5NYDR7Z", - "key": "ledger_key_contract_instance", - "durability": "persistent" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_data": { - "ext": "v0", - "contract": "CDD3RZPYKN5IKF2B7D5RD4EBCT6KE6M7SMY7PI2DDXP5CW7DB5NYDR7Z", - "key": "ledger_key_contract_instance", - "durability": "persistent", - "val": { - "contract_instance": { - "executable": { - "wasm": "be0cdfaa1432ed928911b8ae96196949ecba6856641994c2af540b1236734694" - }, - "storage": null - } - } - } - }, - "ext": "v0" - }, - 4095 - ] - ], - [ - { - "contract_code": { - "hash": "be0cdfaa1432ed928911b8ae96196949ecba6856641994c2af540b1236734694" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_code": { - "ext": "v0", - "hash": "be0cdfaa1432ed928911b8ae96196949ecba6856641994c2af540b1236734694", - "code": "0061736d01000000013f0a60027e7e017e60037e7e7e017e60017e017e60037f7f7f017e60037f7f7f0060037f7e7e017f60047f7e7e7e017e60027f7e017e60037f7e7e017e600000021f050162016a0000017601670000016c015f0001016c01300000016201380002030f0e02020304050607030306080704090405017001010105030100110619037f01418080c0000b7f00419080c0000b7f00419080c0000b073c06066d656d6f7279020004696e697400050969735f7369676e65720006015f00120a5f5f646174615f656e6403010b5f5f686561705f6261736503020ae4060eb10102017f017e23808080800041206b22012480808080000240200042ff018342c800520d0020012000370308200141106a2000108b808080004280808080708342808080809008520d00200141086a2001411f6a418880c0800010888080800020012802084101460d002001290310210220012000370310200120023703082001411f6a2001411f6a200141086a410210878080800042024201108a808080001a200141206a24808080800042020f0b000bb30103017f017e017f23808080800041206b22012480808080000240200042ff018342c800520d0020012000370308200141106a2000108b808080004280808080708342808080809008520d00200141086a2001411f6a418880c0800010888080800020012802084101460d002001290310210220012000370310200120023703082001411f6a2001411f6a200141086a410210878080800042011089808080002103200141206a2480808080002003ad0f0b000b0e00200020012002108d808080000b6a02027f017e23808080800041106b2203248080808000200320022802002204200228020422021091808080000240024020032802000d00200329030821050c010b200120042002108c8080800021050b2000420037030020002005370308200341106a2480808080000b1100200020012002108f808080004201510b10002000200120022003108e808080000b0c00200020011090808080000b1a002001ad4220864204842002ad4220864204841080808080000b1a002001ad4220864204842002ad4220864204841081808080000b0e002001200220031082808080000b0c00200120021083808080000b0a0020011084808080000bef0102017e027f0240024002400240200241094b0d00024020020d00420e21030c040b42002103034041012104024020012d0000220541df00460d00024002400240200541506a41ff0171410a490d00200541bf7f6a41ff0171411a490d022005419f7f6a41ff0171411a4f0d01200541456a21040c030b200541526a21040c020b20002005ad4208864201843702040c040b2005414b6a21040b20034206862004ad42ff0183842103200141016a21012002417f6a2202450d030c000b0b20002002360208200041003a00040b200041013602000f0b2003420886420e8421030b20002003370308200041003602000b02000b0b190100418080c0000b105369676e65720000000010000600000000b7010e636f6e747261637473706563763000000002000000000000000000000007446174614b657900000000010000000100000000000000065369676e6572000000000001000003ee00000041000000000000000000000004696e697400000001000000000000000a7075626c69635f6b65790000000003ee000000410000000000000000000000000000000969735f7369676e65720000000000000100000000000000036b657900000003ee000000410000000100000001001e11636f6e7472616374656e766d6574617630000000000000001400000000006f0e636f6e74726163746d65746176300000000000000005727376657200000000000006312e38352e3000000000000000000008727373646b7665720000002f32302e352e3023396532633330323262343335356232323461376138313465313362613531373631656562313462620000e10d046e616d650011106d6f636b5f77616c6c65742e7761736d01a60d1300535f5a4e3137736f726f62616e5f656e765f677565737435677565737433627566323973796d626f6c5f6e65775f66726f6d5f6c696e6561725f6d656d6f7279313768643565666135353937623731323834314501505f5a4e3137736f726f62616e5f656e765f67756573743567756573743376656332367665635f6e65775f66726f6d5f6c696e6561725f6d656d6f72793137683735643938376336313539643932636545024a5f5a4e3137736f726f62616e5f656e765f6775657374356775657374366c656467657231377075745f636f6e74726163745f646174613137683332373665623035326334353163316345034a5f5a4e3137736f726f62616e5f656e765f6775657374356775657374366c656467657231376861735f636f6e74726163745f646174613137683561623236663234633562306362623045043e5f5a4e3137736f726f62616e5f656e765f6775657374356775657374336275663962797465735f6c656e31376830623163333136656538623532343462450504696e6974060969735f7369676e657207775f5a4e37345f244c5424736f726f62616e5f73646b2e2e656e762e2e456e76247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e76426173652447542431387665635f6e65775f66726f6d5f736c696365313768653834313137633432653336666661394508a6015f5a4e3132365f244c5424736f726f62616e5f73646b2e2e73796d626f6c2e2e53796d626f6c247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e636f6e766572742e2e54727946726f6d56616c244c5424736f726f62616e5f73646b2e2e656e762e2e456e7624432424524624737472244754242447542431327472795f66726f6d5f76616c313768666262386330653533393166386532354509425f5a4e3131736f726f62616e5f73646b3773746f726167653753746f7261676531326861735f696e7465726e616c31376863313062326631646162613265373733450a725f5a4e37305f244c5424736f726f62616e5f73646b2e2e656e762e2e456e76247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e762447542431377075745f636f6e74726163745f6461746131376837353064663234363733663430333935450b695f5a4e37305f244c5424736f726f62616e5f73646b2e2e656e762e2e456e76247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e76244754243962797465735f6c656e31376864623464663938613338633938336635450c84015f5a4e38345f244c5424736f726f62616e5f656e765f67756573742e2e67756573742e2e4775657374247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e764261736524475424323173796d626f6c5f6e65775f66726f6d5f736c69636531376836323134643134313231636665613737450d81015f5a4e38345f244c5424736f726f62616e5f656e765f67756573742e2e67756573742e2e4775657374247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e76426173652447542431387665635f6e65775f66726f6d5f736c69636531376866333461373861393833383138636464450e7c5f5a4e38305f244c5424736f726f62616e5f656e765f67756573742e2e67756573742e2e4775657374247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e762447542431377075745f636f6e74726163745f6461746131376835636439316239353439653135646336450f7c5f5a4e38305f244c5424736f726f62616e5f656e765f67756573742e2e67756573742e2e4775657374247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e762447542431376861735f636f6e74726163745f64617461313768313833643864303837653732626563314510735f5a4e38305f244c5424736f726f62616e5f656e765f67756573742e2e67756573742e2e4775657374247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e76244754243962797465735f6c656e3137686236383136383736306433373564333345114f5f5a4e3138736f726f62616e5f656e765f636f6d6d6f6e3673796d626f6c313153796d626f6c536d616c6c31347472795f66726f6d5f6279746573313768383362393962366439643539313630664512015f071201000f5f5f737461636b5f706f696e746572090a0100072e726f64617461004d0970726f64756365727302086c616e6775616765010452757374000c70726f6365737365642d6279010572757374631d312e38352e30202834643931646534653420323032352d30322d31372900490f7461726765745f6665617475726573042b0a6d756c746976616c75652b0f6d757461626c652d676c6f62616c732b0f7265666572656e63652d74797065732b087369676e2d657874" - } - }, - "ext": "v0" - }, - 4095 - ] - ], - [ - { - "contract_code": { - "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_code": { - "ext": "v0", - "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", - "code": "" - } - }, - "ext": "v0" - }, - 4095 - ] - ] - ] - }, - "events": [ - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_call" - }, - { - "bytes": "0000000000000000000000000000000000000000000000000000000000000001" - }, - { - "symbol": "init" - } - ], - "data": { - "bytes": "be0cdfaa1432ed928911b8ae96196949ecba6856641994c2af540b1236734694" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_return" - }, - { - "symbol": "init" - } - ], - "data": "void" - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_call" - }, - { - "bytes": "0000000000000000000000000000000000000000000000000000000000000001" - }, - { - "symbol": "deploy" - } - ], - "data": { - "bytes": "040c901d423c831ca85e27c73c263ba132721bb9d7a84c4f0380b2a6756fd601331c8870234dec878504c174144fa4b14b66a651691606d8173e55bd37e381569e" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_call" - }, - { - "bytes": "c7b8e5f8537a851741f8fb11f08114fca2799f9331f7a3431ddfd15be30f5b81" - }, - { - "symbol": "init" - } - ], - "data": { - "bytes": "040c901d423c831ca85e27c73c263ba132721bb9d7a84c4f0380b2a6756fd601331c8870234dec878504c174144fa4b14b66a651691606d8173e55bd37e381569e" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "c7b8e5f8537a851741f8fb11f08114fca2799f9331f7a3431ddfd15be30f5b81", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_return" - }, - { - "symbol": "init" - } - ], - "data": "void" - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_return" - }, - { - "symbol": "deploy" - } - ], - "data": { - "address": "CDD3RZPYKN5IKF2B7D5RD4EBCT6KE6M7SMY7PI2DDXP5CW7DB5NYDR7Z" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_call" - }, - { - "bytes": "0000000000000000000000000000000000000000000000000000000000000001" - }, - { - "symbol": "deploy" - } - ], - "data": { - "bytes": "040c901d423c831ca85e27c73c263ba132721bb9d7a84c4f0380b2a6756fd601331c8870234dec878504c174144fa4b14b66a651691606d8173e55bd37e381569e" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_return" - }, - { - "symbol": "deploy" - } - ], - "data": { - "error": { - "contract": 3 - } - } - } - } - }, - "failed_call": true - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "error" - }, - { - "error": { - "contract": 3 - } - } - ], - "data": { - "string": "escalating Ok(ScErrorType::Contract) frame-exit to Err" - } - } - } - }, - "failed_call": true - }, - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "error" - }, - { - "error": { - "contract": 3 - } - } - ], - "data": { - "vec": [ - { - "string": "contract try_call failed" - }, - { - "symbol": "deploy" - }, - { - "vec": [ - { - "bytes": "040c901d423c831ca85e27c73c263ba132721bb9d7a84c4f0380b2a6756fd601331c8870234dec878504c174144fa4b14b66a651691606d8173e55bd37e381569e" - } - ] - } - ] - } - } - } - }, - "failed_call": false - } - ] -} \ No newline at end of file diff --git a/contracts/factory/test_snapshots/test/test_duplicate_deploy_prevented.1.json b/contracts/factory/test_snapshots/test/test_duplicate_deploy_prevented.1.json deleted file mode 100644 index 1c1e87f..0000000 --- a/contracts/factory/test_snapshots/test/test_duplicate_deploy_prevented.1.json +++ /dev/null @@ -1,266 +0,0 @@ -{ - "generators": { - "address": 1, - "nonce": 0 - }, - "auth": [ - [], - [], - [] - ], - "ledger": { - "protocol_version": 20, - "sequence_number": 0, - "timestamp": 0, - "network_id": "0000000000000000000000000000000000000000000000000000000000000000", - "base_reserve": 0, - "min_persistent_entry_ttl": 4096, - "min_temp_entry_ttl": 16, - "max_entry_ttl": 6312000, - "ledger_entries": [ - [ - { - "contract_data": { - "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", - "key": "ledger_key_contract_instance", - "durability": "persistent" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_data": { - "ext": "v0", - "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", - "key": "ledger_key_contract_instance", - "durability": "persistent", - "val": { - "contract_instance": { - "executable": { - "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" - }, - "storage": [ - { - "key": { - "vec": [ - { - "symbol": "Deployed" - }, - { - "bytes": "550baec2e009d8c4ba938306605e9c55657d613e13ee25e208736c90567b6d88" - } - ] - }, - "val": "void" - }, - { - "key": { - "vec": [ - { - "symbol": "WasmHash" - } - ] - }, - "val": { - "bytes": "0101010101010101010101010101010101010101010101010101010101010101" - } - } - ] - } - } - } - }, - "ext": "v0" - }, - 4095 - ] - ], - [ - { - "contract_code": { - "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_code": { - "ext": "v0", - "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", - "code": "" - } - }, - "ext": "v0" - }, - 4095 - ] - ] - ] - }, - "events": [ - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_call" - }, - { - "bytes": "0000000000000000000000000000000000000000000000000000000000000001" - }, - { - "symbol": "init" - } - ], - "data": { - "bytes": "0101010101010101010101010101010101010101010101010101010101010101" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_return" - }, - { - "symbol": "init" - } - ], - "data": "void" - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_call" - }, - { - "bytes": "0000000000000000000000000000000000000000000000000000000000000001" - }, - { - "symbol": "deploy" - } - ], - "data": { - "bytes": "040c901d423c831ca85e27c73c263ba132721bb9d7a84c4f0380b2a6756fd601331c8870234dec878504c174144fa4b14b66a651691606d8173e55bd37e381569e" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_return" - }, - { - "symbol": "deploy" - } - ], - "data": { - "error": { - "contract": 3 - } - } - } - } - }, - "failed_call": true - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "error" - }, - { - "error": { - "contract": 3 - } - } - ], - "data": { - "string": "escalating Ok(ScErrorType::Contract) frame-exit to Err" - } - } - } - }, - "failed_call": true - }, - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "error" - }, - { - "error": { - "contract": 3 - } - } - ], - "data": { - "vec": [ - { - "string": "contract try_call failed" - }, - { - "symbol": "deploy" - }, - { - "vec": [ - { - "bytes": "040c901d423c831ca85e27c73c263ba132721bb9d7a84c4f0380b2a6756fd601331c8870234dec878504c174144fa4b14b66a651691606d8173e55bd37e381569e" - } - ] - } - ] - } - } - } - }, - "failed_call": false - } - ] -} \ No newline at end of file diff --git a/contracts/factory/test_snapshots/test/test_init_stores_wasm_hash.1.json b/contracts/factory/test_snapshots/test/test_init_stores_wasm_hash.1.json deleted file mode 100644 index 5558ea3..0000000 --- a/contracts/factory/test_snapshots/test/test_init_stores_wasm_hash.1.json +++ /dev/null @@ -1,137 +0,0 @@ -{ - "generators": { - "address": 1, - "nonce": 0 - }, - "auth": [ - [], - [] - ], - "ledger": { - "protocol_version": 20, - "sequence_number": 0, - "timestamp": 0, - "network_id": "0000000000000000000000000000000000000000000000000000000000000000", - "base_reserve": 0, - "min_persistent_entry_ttl": 4096, - "min_temp_entry_ttl": 16, - "max_entry_ttl": 6312000, - "ledger_entries": [ - [ - { - "contract_data": { - "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", - "key": "ledger_key_contract_instance", - "durability": "persistent" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_data": { - "ext": "v0", - "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", - "key": "ledger_key_contract_instance", - "durability": "persistent", - "val": { - "contract_instance": { - "executable": { - "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" - }, - "storage": [ - { - "key": { - "vec": [ - { - "symbol": "WasmHash" - } - ] - }, - "val": { - "bytes": "0101010101010101010101010101010101010101010101010101010101010101" - } - } - ] - } - } - } - }, - "ext": "v0" - }, - 4095 - ] - ], - [ - { - "contract_code": { - "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_code": { - "ext": "v0", - "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", - "code": "" - } - }, - "ext": "v0" - }, - 4095 - ] - ] - ] - }, - "events": [ - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_call" - }, - { - "bytes": "0000000000000000000000000000000000000000000000000000000000000001" - }, - { - "symbol": "init" - } - ], - "data": { - "bytes": "0101010101010101010101010101010101010101010101010101010101010101" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_return" - }, - { - "symbol": "init" - } - ], - "data": "void" - } - } - }, - "failed_call": false - } - ] -} \ No newline at end of file diff --git a/contracts/factory/test_snapshots/test/test_invalid_public_key_all_zeros.1.json b/contracts/factory/test_snapshots/test/test_invalid_public_key_all_zeros.1.json deleted file mode 100644 index f314f9c..0000000 --- a/contracts/factory/test_snapshots/test/test_invalid_public_key_all_zeros.1.json +++ /dev/null @@ -1,252 +0,0 @@ -{ - "generators": { - "address": 1, - "nonce": 0 - }, - "auth": [ - [], - [] - ], - "ledger": { - "protocol_version": 20, - "sequence_number": 0, - "timestamp": 0, - "network_id": "0000000000000000000000000000000000000000000000000000000000000000", - "base_reserve": 0, - "min_persistent_entry_ttl": 4096, - "min_temp_entry_ttl": 16, - "max_entry_ttl": 6312000, - "ledger_entries": [ - [ - { - "contract_data": { - "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", - "key": "ledger_key_contract_instance", - "durability": "persistent" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_data": { - "ext": "v0", - "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", - "key": "ledger_key_contract_instance", - "durability": "persistent", - "val": { - "contract_instance": { - "executable": { - "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" - }, - "storage": [ - { - "key": { - "vec": [ - { - "symbol": "WasmHash" - } - ] - }, - "val": { - "bytes": "0101010101010101010101010101010101010101010101010101010101010101" - } - } - ] - } - } - } - }, - "ext": "v0" - }, - 4095 - ] - ], - [ - { - "contract_code": { - "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_code": { - "ext": "v0", - "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", - "code": "" - } - }, - "ext": "v0" - }, - 4095 - ] - ] - ] - }, - "events": [ - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_call" - }, - { - "bytes": "0000000000000000000000000000000000000000000000000000000000000001" - }, - { - "symbol": "init" - } - ], - "data": { - "bytes": "0101010101010101010101010101010101010101010101010101010101010101" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_return" - }, - { - "symbol": "init" - } - ], - "data": "void" - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_call" - }, - { - "bytes": "0000000000000000000000000000000000000000000000000000000000000001" - }, - { - "symbol": "deploy" - } - ], - "data": { - "bytes": "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_return" - }, - { - "symbol": "deploy" - } - ], - "data": { - "error": { - "contract": 4 - } - } - } - } - }, - "failed_call": true - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "error" - }, - { - "error": { - "contract": 4 - } - } - ], - "data": { - "string": "escalating Ok(ScErrorType::Contract) frame-exit to Err" - } - } - } - }, - "failed_call": true - }, - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "error" - }, - { - "error": { - "contract": 4 - } - } - ], - "data": { - "vec": [ - { - "string": "contract try_call failed" - }, - { - "symbol": "deploy" - }, - { - "vec": [ - { - "bytes": "0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" - } - ] - } - ] - } - } - } - }, - "failed_call": false - } - ] -} \ No newline at end of file diff --git a/contracts/factory/test_snapshots/test/test_invalid_public_key_bad_prefix.1.json b/contracts/factory/test_snapshots/test/test_invalid_public_key_bad_prefix.1.json deleted file mode 100644 index dd4e0e8..0000000 --- a/contracts/factory/test_snapshots/test/test_invalid_public_key_bad_prefix.1.json +++ /dev/null @@ -1,252 +0,0 @@ -{ - "generators": { - "address": 1, - "nonce": 0 - }, - "auth": [ - [], - [] - ], - "ledger": { - "protocol_version": 20, - "sequence_number": 0, - "timestamp": 0, - "network_id": "0000000000000000000000000000000000000000000000000000000000000000", - "base_reserve": 0, - "min_persistent_entry_ttl": 4096, - "min_temp_entry_ttl": 16, - "max_entry_ttl": 6312000, - "ledger_entries": [ - [ - { - "contract_data": { - "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", - "key": "ledger_key_contract_instance", - "durability": "persistent" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_data": { - "ext": "v0", - "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", - "key": "ledger_key_contract_instance", - "durability": "persistent", - "val": { - "contract_instance": { - "executable": { - "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" - }, - "storage": [ - { - "key": { - "vec": [ - { - "symbol": "WasmHash" - } - ] - }, - "val": { - "bytes": "0101010101010101010101010101010101010101010101010101010101010101" - } - } - ] - } - } - } - }, - "ext": "v0" - }, - 4095 - ] - ], - [ - { - "contract_code": { - "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_code": { - "ext": "v0", - "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", - "code": "" - } - }, - "ext": "v0" - }, - 4095 - ] - ] - ] - }, - "events": [ - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_call" - }, - { - "bytes": "0000000000000000000000000000000000000000000000000000000000000001" - }, - { - "symbol": "init" - } - ], - "data": { - "bytes": "0101010101010101010101010101010101010101010101010101010101010101" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_return" - }, - { - "symbol": "init" - } - ], - "data": "void" - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_call" - }, - { - "bytes": "0000000000000000000000000000000000000000000000000000000000000001" - }, - { - "symbol": "deploy" - } - ], - "data": { - "bytes": "0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_return" - }, - { - "symbol": "deploy" - } - ], - "data": { - "error": { - "contract": 4 - } - } - } - } - }, - "failed_call": true - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "error" - }, - { - "error": { - "contract": 4 - } - } - ], - "data": { - "string": "escalating Ok(ScErrorType::Contract) frame-exit to Err" - } - } - } - }, - "failed_call": true - }, - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "error" - }, - { - "error": { - "contract": 4 - } - } - ], - "data": { - "vec": [ - { - "string": "contract try_call failed" - }, - { - "symbol": "deploy" - }, - { - "vec": [ - { - "bytes": "0300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" - } - ] - } - ] - } - } - } - }, - "failed_call": false - } - ] -} \ No newline at end of file diff --git a/contracts/factory/test_snapshots/test/test_invalid_public_key_correct_prefix_but_not_on_curve.1.json b/contracts/factory/test_snapshots/test/test_invalid_public_key_correct_prefix_but_not_on_curve.1.json deleted file mode 100644 index db9a499..0000000 --- a/contracts/factory/test_snapshots/test/test_invalid_public_key_correct_prefix_but_not_on_curve.1.json +++ /dev/null @@ -1,252 +0,0 @@ -{ - "generators": { - "address": 1, - "nonce": 0 - }, - "auth": [ - [], - [] - ], - "ledger": { - "protocol_version": 20, - "sequence_number": 0, - "timestamp": 0, - "network_id": "0000000000000000000000000000000000000000000000000000000000000000", - "base_reserve": 0, - "min_persistent_entry_ttl": 4096, - "min_temp_entry_ttl": 16, - "max_entry_ttl": 6312000, - "ledger_entries": [ - [ - { - "contract_data": { - "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", - "key": "ledger_key_contract_instance", - "durability": "persistent" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_data": { - "ext": "v0", - "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", - "key": "ledger_key_contract_instance", - "durability": "persistent", - "val": { - "contract_instance": { - "executable": { - "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" - }, - "storage": [ - { - "key": { - "vec": [ - { - "symbol": "WasmHash" - } - ] - }, - "val": { - "bytes": "0101010101010101010101010101010101010101010101010101010101010101" - } - } - ] - } - } - } - }, - "ext": "v0" - }, - 4095 - ] - ], - [ - { - "contract_code": { - "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_code": { - "ext": "v0", - "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", - "code": "" - } - }, - "ext": "v0" - }, - 4095 - ] - ] - ] - }, - "events": [ - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_call" - }, - { - "bytes": "0000000000000000000000000000000000000000000000000000000000000001" - }, - { - "symbol": "init" - } - ], - "data": { - "bytes": "0101010101010101010101010101010101010101010101010101010101010101" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_return" - }, - { - "symbol": "init" - } - ], - "data": "void" - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_call" - }, - { - "bytes": "0000000000000000000000000000000000000000000000000000000000000001" - }, - { - "symbol": "deploy" - } - ], - "data": { - "bytes": "0401010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_return" - }, - { - "symbol": "deploy" - } - ], - "data": { - "error": { - "contract": 4 - } - } - } - } - }, - "failed_call": true - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "error" - }, - { - "error": { - "contract": 4 - } - } - ], - "data": { - "string": "escalating Ok(ScErrorType::Contract) frame-exit to Err" - } - } - } - }, - "failed_call": true - }, - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "error" - }, - { - "error": { - "contract": 4 - } - } - ], - "data": { - "vec": [ - { - "string": "contract try_call failed" - }, - { - "symbol": "deploy" - }, - { - "vec": [ - { - "bytes": "0401010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101010101" - } - ] - } - ] - } - } - } - }, - "failed_call": false - } - ] -} \ No newline at end of file diff --git a/contracts/factory/test_snapshots/test/test_wallet_initialization_registers_signer.1.json b/contracts/factory/test_snapshots/test/test_wallet_initialization_registers_signer.1.json deleted file mode 100644 index b9ae2ef..0000000 --- a/contracts/factory/test_snapshots/test/test_wallet_initialization_registers_signer.1.json +++ /dev/null @@ -1,392 +0,0 @@ -{ - "generators": { - "address": 1, - "nonce": 0 - }, - "auth": [ - [], - [], - [] - ], - "ledger": { - "protocol_version": 20, - "sequence_number": 0, - "timestamp": 0, - "network_id": "0000000000000000000000000000000000000000000000000000000000000000", - "base_reserve": 0, - "min_persistent_entry_ttl": 4096, - "min_temp_entry_ttl": 16, - "max_entry_ttl": 6312000, - "ledger_entries": [ - [ - { - "contract_data": { - "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", - "key": "ledger_key_contract_instance", - "durability": "persistent" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_data": { - "ext": "v0", - "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM", - "key": "ledger_key_contract_instance", - "durability": "persistent", - "val": { - "contract_instance": { - "executable": { - "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" - }, - "storage": [ - { - "key": { - "vec": [ - { - "symbol": "Deployed" - }, - { - "bytes": "550baec2e009d8c4ba938306605e9c55657d613e13ee25e208736c90567b6d88" - } - ] - }, - "val": "void" - }, - { - "key": { - "vec": [ - { - "symbol": "WasmHash" - } - ] - }, - "val": { - "bytes": "be0cdfaa1432ed928911b8ae96196949ecba6856641994c2af540b1236734694" - } - } - ] - } - } - } - }, - "ext": "v0" - }, - 4095 - ] - ], - [ - { - "contract_data": { - "contract": "CDD3RZPYKN5IKF2B7D5RD4EBCT6KE6M7SMY7PI2DDXP5CW7DB5NYDR7Z", - "key": { - "vec": [ - { - "symbol": "Signer" - }, - { - "bytes": "040c901d423c831ca85e27c73c263ba132721bb9d7a84c4f0380b2a6756fd601331c8870234dec878504c174144fa4b14b66a651691606d8173e55bd37e381569e" - } - ] - }, - "durability": "persistent" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_data": { - "ext": "v0", - "contract": "CDD3RZPYKN5IKF2B7D5RD4EBCT6KE6M7SMY7PI2DDXP5CW7DB5NYDR7Z", - "key": { - "vec": [ - { - "symbol": "Signer" - }, - { - "bytes": "040c901d423c831ca85e27c73c263ba132721bb9d7a84c4f0380b2a6756fd601331c8870234dec878504c174144fa4b14b66a651691606d8173e55bd37e381569e" - } - ] - }, - "durability": "persistent", - "val": "void" - } - }, - "ext": "v0" - }, - 4095 - ] - ], - [ - { - "contract_data": { - "contract": "CDD3RZPYKN5IKF2B7D5RD4EBCT6KE6M7SMY7PI2DDXP5CW7DB5NYDR7Z", - "key": "ledger_key_contract_instance", - "durability": "persistent" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_data": { - "ext": "v0", - "contract": "CDD3RZPYKN5IKF2B7D5RD4EBCT6KE6M7SMY7PI2DDXP5CW7DB5NYDR7Z", - "key": "ledger_key_contract_instance", - "durability": "persistent", - "val": { - "contract_instance": { - "executable": { - "wasm": "be0cdfaa1432ed928911b8ae96196949ecba6856641994c2af540b1236734694" - }, - "storage": null - } - } - } - }, - "ext": "v0" - }, - 4095 - ] - ], - [ - { - "contract_code": { - "hash": "be0cdfaa1432ed928911b8ae96196949ecba6856641994c2af540b1236734694" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_code": { - "ext": "v0", - "hash": "be0cdfaa1432ed928911b8ae96196949ecba6856641994c2af540b1236734694", - "code": "0061736d01000000013f0a60027e7e017e60037e7e7e017e60017e017e60037f7f7f017e60037f7f7f0060037f7e7e017f60047f7e7e7e017e60027f7e017e60037f7e7e017e600000021f050162016a0000017601670000016c015f0001016c01300000016201380002030f0e02020304050607030306080704090405017001010105030100110619037f01418080c0000b7f00419080c0000b7f00419080c0000b073c06066d656d6f7279020004696e697400050969735f7369676e65720006015f00120a5f5f646174615f656e6403010b5f5f686561705f6261736503020ae4060eb10102017f017e23808080800041206b22012480808080000240200042ff018342c800520d0020012000370308200141106a2000108b808080004280808080708342808080809008520d00200141086a2001411f6a418880c0800010888080800020012802084101460d002001290310210220012000370310200120023703082001411f6a2001411f6a200141086a410210878080800042024201108a808080001a200141206a24808080800042020f0b000bb30103017f017e017f23808080800041206b22012480808080000240200042ff018342c800520d0020012000370308200141106a2000108b808080004280808080708342808080809008520d00200141086a2001411f6a418880c0800010888080800020012802084101460d002001290310210220012000370310200120023703082001411f6a2001411f6a200141086a410210878080800042011089808080002103200141206a2480808080002003ad0f0b000b0e00200020012002108d808080000b6a02027f017e23808080800041106b2203248080808000200320022802002204200228020422021091808080000240024020032802000d00200329030821050c010b200120042002108c8080800021050b2000420037030020002005370308200341106a2480808080000b1100200020012002108f808080004201510b10002000200120022003108e808080000b0c00200020011090808080000b1a002001ad4220864204842002ad4220864204841080808080000b1a002001ad4220864204842002ad4220864204841081808080000b0e002001200220031082808080000b0c00200120021083808080000b0a0020011084808080000bef0102017e027f0240024002400240200241094b0d00024020020d00420e21030c040b42002103034041012104024020012d0000220541df00460d00024002400240200541506a41ff0171410a490d00200541bf7f6a41ff0171411a490d022005419f7f6a41ff0171411a4f0d01200541456a21040c030b200541526a21040c020b20002005ad4208864201843702040c040b2005414b6a21040b20034206862004ad42ff0183842103200141016a21012002417f6a2202450d030c000b0b20002002360208200041003a00040b200041013602000f0b2003420886420e8421030b20002003370308200041003602000b02000b0b190100418080c0000b105369676e65720000000010000600000000b7010e636f6e747261637473706563763000000002000000000000000000000007446174614b657900000000010000000100000000000000065369676e6572000000000001000003ee00000041000000000000000000000004696e697400000001000000000000000a7075626c69635f6b65790000000003ee000000410000000000000000000000000000000969735f7369676e65720000000000000100000000000000036b657900000003ee000000410000000100000001001e11636f6e7472616374656e766d6574617630000000000000001400000000006f0e636f6e74726163746d65746176300000000000000005727376657200000000000006312e38352e3000000000000000000008727373646b7665720000002f32302e352e3023396532633330323262343335356232323461376138313465313362613531373631656562313462620000e10d046e616d650011106d6f636b5f77616c6c65742e7761736d01a60d1300535f5a4e3137736f726f62616e5f656e765f677565737435677565737433627566323973796d626f6c5f6e65775f66726f6d5f6c696e6561725f6d656d6f7279313768643565666135353937623731323834314501505f5a4e3137736f726f62616e5f656e765f67756573743567756573743376656332367665635f6e65775f66726f6d5f6c696e6561725f6d656d6f72793137683735643938376336313539643932636545024a5f5a4e3137736f726f62616e5f656e765f6775657374356775657374366c656467657231377075745f636f6e74726163745f646174613137683332373665623035326334353163316345034a5f5a4e3137736f726f62616e5f656e765f6775657374356775657374366c656467657231376861735f636f6e74726163745f646174613137683561623236663234633562306362623045043e5f5a4e3137736f726f62616e5f656e765f6775657374356775657374336275663962797465735f6c656e31376830623163333136656538623532343462450504696e6974060969735f7369676e657207775f5a4e37345f244c5424736f726f62616e5f73646b2e2e656e762e2e456e76247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e76426173652447542431387665635f6e65775f66726f6d5f736c696365313768653834313137633432653336666661394508a6015f5a4e3132365f244c5424736f726f62616e5f73646b2e2e73796d626f6c2e2e53796d626f6c247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e636f6e766572742e2e54727946726f6d56616c244c5424736f726f62616e5f73646b2e2e656e762e2e456e7624432424524624737472244754242447542431327472795f66726f6d5f76616c313768666262386330653533393166386532354509425f5a4e3131736f726f62616e5f73646b3773746f726167653753746f7261676531326861735f696e7465726e616c31376863313062326631646162613265373733450a725f5a4e37305f244c5424736f726f62616e5f73646b2e2e656e762e2e456e76247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e762447542431377075745f636f6e74726163745f6461746131376837353064663234363733663430333935450b695f5a4e37305f244c5424736f726f62616e5f73646b2e2e656e762e2e456e76247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e76244754243962797465735f6c656e31376864623464663938613338633938336635450c84015f5a4e38345f244c5424736f726f62616e5f656e765f67756573742e2e67756573742e2e4775657374247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e764261736524475424323173796d626f6c5f6e65775f66726f6d5f736c69636531376836323134643134313231636665613737450d81015f5a4e38345f244c5424736f726f62616e5f656e765f67756573742e2e67756573742e2e4775657374247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e76426173652447542431387665635f6e65775f66726f6d5f736c69636531376866333461373861393833383138636464450e7c5f5a4e38305f244c5424736f726f62616e5f656e765f67756573742e2e67756573742e2e4775657374247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e762447542431377075745f636f6e74726163745f6461746131376835636439316239353439653135646336450f7c5f5a4e38305f244c5424736f726f62616e5f656e765f67756573742e2e67756573742e2e4775657374247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e762447542431376861735f636f6e74726163745f64617461313768313833643864303837653732626563314510735f5a4e38305f244c5424736f726f62616e5f656e765f67756573742e2e67756573742e2e4775657374247532302461732475323024736f726f62616e5f656e765f636f6d6d6f6e2e2e656e762e2e456e76244754243962797465735f6c656e3137686236383136383736306433373564333345114f5f5a4e3138736f726f62616e5f656e765f636f6d6d6f6e3673796d626f6c313153796d626f6c536d616c6c31347472795f66726f6d5f6279746573313768383362393962366439643539313630664512015f071201000f5f5f737461636b5f706f696e746572090a0100072e726f64617461004d0970726f64756365727302086c616e6775616765010452757374000c70726f6365737365642d6279010572757374631d312e38352e30202834643931646534653420323032352d30322d31372900490f7461726765745f6665617475726573042b0a6d756c746976616c75652b0f6d757461626c652d676c6f62616c732b0f7265666572656e63652d74797065732b087369676e2d657874" - } - }, - "ext": "v0" - }, - 4095 - ] - ], - [ - { - "contract_code": { - "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855" - } - }, - [ - { - "last_modified_ledger_seq": 0, - "data": { - "contract_code": { - "ext": "v0", - "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855", - "code": "" - } - }, - "ext": "v0" - }, - 4095 - ] - ] - ] - }, - "events": [ - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_call" - }, - { - "bytes": "0000000000000000000000000000000000000000000000000000000000000001" - }, - { - "symbol": "init" - } - ], - "data": { - "bytes": "be0cdfaa1432ed928911b8ae96196949ecba6856641994c2af540b1236734694" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_return" - }, - { - "symbol": "init" - } - ], - "data": "void" - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_call" - }, - { - "bytes": "0000000000000000000000000000000000000000000000000000000000000001" - }, - { - "symbol": "deploy" - } - ], - "data": { - "bytes": "040c901d423c831ca85e27c73c263ba132721bb9d7a84c4f0380b2a6756fd601331c8870234dec878504c174144fa4b14b66a651691606d8173e55bd37e381569e" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_call" - }, - { - "bytes": "c7b8e5f8537a851741f8fb11f08114fca2799f9331f7a3431ddfd15be30f5b81" - }, - { - "symbol": "init" - } - ], - "data": { - "bytes": "040c901d423c831ca85e27c73c263ba132721bb9d7a84c4f0380b2a6756fd601331c8870234dec878504c174144fa4b14b66a651691606d8173e55bd37e381569e" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "c7b8e5f8537a851741f8fb11f08114fca2799f9331f7a3431ddfd15be30f5b81", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_return" - }, - { - "symbol": "init" - } - ], - "data": "void" - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "0000000000000000000000000000000000000000000000000000000000000001", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_return" - }, - { - "symbol": "deploy" - } - ], - "data": { - "address": "CDD3RZPYKN5IKF2B7D5RD4EBCT6KE6M7SMY7PI2DDXP5CW7DB5NYDR7Z" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": null, - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_call" - }, - { - "bytes": "c7b8e5f8537a851741f8fb11f08114fca2799f9331f7a3431ddfd15be30f5b81" - }, - { - "symbol": "is_signer" - } - ], - "data": { - "bytes": "040c901d423c831ca85e27c73c263ba132721bb9d7a84c4f0380b2a6756fd601331c8870234dec878504c174144fa4b14b66a651691606d8173e55bd37e381569e" - } - } - } - }, - "failed_call": false - }, - { - "event": { - "ext": "v0", - "contract_id": "c7b8e5f8537a851741f8fb11f08114fca2799f9331f7a3431ddfd15be30f5b81", - "type_": "diagnostic", - "body": { - "v0": { - "topics": [ - { - "symbol": "fn_return" - }, - { - "symbol": "is_signer" - } - ], - "data": { - "bool": true - } - } - } - }, - "failed_call": false - } - ] -} \ No newline at end of file diff --git a/contracts/mock-wallet/src/lib.rs b/contracts/mock-wallet/src/lib.rs index f174303..2a5f4be 100644 --- a/contracts/mock-wallet/src/lib.rs +++ b/contracts/mock-wallet/src/lib.rs @@ -1,5 +1,5 @@ #![no_std] -use soroban_sdk::{contract, contractimpl, contracttype, Env, BytesN}; +use soroban_sdk::{contract, contractimpl, contracttype, Env, Bytes, BytesN}; #[contracttype] #[derive(Clone)] @@ -12,7 +12,9 @@ pub struct MockWallet; #[contractimpl] impl MockWallet { - pub fn init(env: Env, public_key: BytesN<65>) { + /// Mirrors invisible_wallet::init: accepts public_key, rp_id, and origin + /// so the factory contract can deploy and initialise the mock in tests. + pub fn init(env: Env, public_key: BytesN<65>, _rp_id: Bytes, _origin: Bytes) { env.storage().persistent().set(&DataKey::Signer(public_key), &()); } diff --git a/contracts/rust-toolchain.toml b/contracts/rust-toolchain.toml new file mode 100644 index 0000000..c1bc0a6 --- /dev/null +++ b/contracts/rust-toolchain.toml @@ -0,0 +1,2 @@ +[toolchain] +channel = "1.85.0"