[英]How can I set a caller in ink! contract unit testing function?
fn do_check(
&mut self
) -> Result<()> {
let caller = self.env().caller();
...
}
我正在為do_check
函數編寫一個測試函數。 在這里,我想設置一個呼叫者,但不知道該怎么做。
#[cfg(test)]
mod tests {
use super::*;
use ink_lang as ink;
#[ink::test]
fn do_check_works() {
let mut test = Test::new();
// here I want to set a caller for calling do_check
test.do_check();
...
請幫我
您可以使用ink_env 中的set_caller
設置調用者:
let account = AccountId::from([0x1; 32]);
ink_env::test::set_caller::<ink_env::DefaultEnvironment>(account);
有關更多詳細信息,請參閱墨水庫中的示例。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.