diff --git a/examples/contracts/custom/src/contract.rs b/examples/contracts/custom/src/contract.rs index df0806a7..f6727e18 100644 --- a/examples/contracts/custom/src/contract.rs +++ b/examples/contracts/custom/src/contract.rs @@ -1,5 +1,5 @@ use cosmwasm_std::{CosmosMsg, QueryRequest, Response, StdResult}; -use sylvia::types::{ExecCtx, InstantiateCtx, QueryCtx}; +use sylvia::types::{ExecCtx, InstantiateCtx, QueryCtx, SudoCtx}; use sylvia::{contract, schemars}; #[cfg(not(feature = "library"))] @@ -42,4 +42,11 @@ impl CustomContract { Ok(resp) } + + #[msg(sudo)] + pub fn sudo_custom(&self, _ctx: SudoCtx) -> StdResult> { + let msg = CosmosMsg::Custom(CounterMsg::Increment {}); + let resp = Response::default().add_message(msg); + Ok(resp) + } } diff --git a/examples/contracts/custom/src/multitest/tests.rs b/examples/contracts/custom/src/multitest/tests.rs index 566ee7ff..45860e7a 100644 --- a/examples/contracts/custom/src/multitest/tests.rs +++ b/examples/contracts/custom/src/multitest/tests.rs @@ -24,4 +24,9 @@ fn test_custom() { let count = contract.query_custom().unwrap().count; assert_eq!(count, 1); + + contract.sudo_custom().unwrap(); + + let count = contract.query_custom().unwrap().count; + assert_eq!(count, 2); }