我想為元掩碼檢測撰寫一個測驗:
const provider = new ethers.providers.Web3Provider(window.ethereum, "any");
const signer = provider.getSigner();
const address = await signer.getAddress() //Get metamask address from browser
所以我認為我需要模擬 ethers 提供者并以某種方式注入一個我以后可以斷言的假地址。有任何想法嗎?
我嘗試了多個庫,但似乎對我的情況沒有任何幫助。
謝謝!
uj5u.com熱心網友回復:
這樣的事情應該可以解決您的問題
import { ethers } from "ethers";
import mocked = jest.mocked;
const mockGetSigner = jest.fn();
const mockGetFunction = jest.fn();
mockGetAddress.mockImplementation(() = {
return { address object or string not sure}
})
mockGetSigner.mockImplementation(() => {
return { getAddress: mockGetAddress };
});
mocked(ethers.providers. Web3Provider).mockImplementation(() => {
return { getSigner: jest.fn() };
});
jest.mock("ethers", () => {
return {
...jest.requireActual("ethers"),
ethers: {
Contract: jest.fn(),
Wallet: jest.fn(),
providers: {
Web3Provider: jest.fn(),
},
},
};
});
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/535629.html
標籤:打字稿测试
上一篇:無法斷言Dafny方法的值
