1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
pub use near_bindgen_macros::{callback_args, callback_args_vec, ext_contract, near_bindgen}; pub mod collections; mod environment; pub use environment::env; mod promise; pub use promise::{Promise, PromiseOrValue}; #[cfg(not(target_arch = "wasm32"))] pub use environment::mocked_blockchain::MockedBlockchain; pub use near_vm_logic::types::*; #[cfg(not(target_arch = "wasm32"))] pub use near_vm_logic::VMConfig; #[cfg(not(target_arch = "wasm32"))] pub use near_runtime_fees::RuntimeFeesConfig; #[cfg(not(target_arch = "wasm32"))] pub use near_vm_logic::VMContext; #[cfg(not(target_arch = "wasm32"))] #[macro_export] macro_rules! testing_env { ($context:expr, $config:expr, $fee_config:expr) => { let storage = match near_bindgen::env::take_blockchain_interface() { Some(mut bi) => bi.as_mut_mocked_blockchain().unwrap().take_storage(), None => Default::default(), }; near_bindgen::env::set_blockchain_interface(Box::new(MockedBlockchain::new( $context, $config, $fee_config, vec![], storage, ))); }; ($context:expr) => { testing_env!($context, Default::default(), Default::default()); }; } pub use environment::blockchain_interface::BlockchainInterface;