From de45e2d8e7c3417d6ce5f69f5754d0e698eeaba8 Mon Sep 17 00:00:00 2001 From: Peter Salomonsen Date: Sun, 24 Dec 2023 14:25:53 +0000 Subject: [PATCH] call contract before migration --- nearcontract/tests/migration.rs | 36 ++++++++++++++++++++++++++++++--- 1 file changed, 33 insertions(+), 3 deletions(-) diff --git a/nearcontract/tests/migration.rs b/nearcontract/tests/migration.rs index c3c0825..2b008f9 100644 --- a/nearcontract/tests/migration.rs +++ b/nearcontract/tests/migration.rs @@ -1,3 +1,5 @@ +use near_workspaces::types::NearToken; + mod test_env; use {crate::test_env::*, serde_json::json}; @@ -5,10 +7,38 @@ use {crate::test_env::*, serde_json::json}; #[tokio::test] async fn test_deploy_contract_self_upgrade() -> anyhow::Result<()> { let contract = init_contracts().await?; + let set_permission_result = contract + .call("set_permission") + .args_json(json!({ + "path": "test", + "account_id": "peter", + "permission": 0x01 + })) + .deposit(NearToken::from_millinear(100)) + .transact() + .await?; + assert!(set_permission_result.is_success()); + + let get_permission_result: serde_json::Value = contract + .call("get_permission") + .args_json(json!({ + "path": "test", + "account_id": "peter" + })) + .view() + .await? + .json()?; + + assert_eq!(1, get_permission_result); + let wasm = near_workspaces::compile_project("./").await?; - let mut contract_upgrade_result = - contract.call("unsafe_self_upgrade").args(wasm).max_gas().transact().await?; + let mut contract_upgrade_result = contract + .call("unsafe_self_upgrade") + .args(wasm) + .max_gas() + .transact() + .await?; Ok(()) -} \ No newline at end of file +}