W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
有時(shí)您有特定于窗口的代碼(例如初始屏幕窗口),因此您需要模擬不同的窗口。 您可以使用 ?mockWindows()
? 方法來創(chuàng)建假窗口標(biāo)簽。 第一個(gè)字符串標(biāo)識(shí)“當(dāng)前”窗口(即 JavaScript 認(rèn)為自己所在的窗口),所有其他字符串被視為附加窗口。
備注
?mockWindows()
? 只模擬實(shí)現(xiàn)窗口,但沒有窗口屬性。 要模擬窗口屬性,您需要使用 ?mockIPC()
? 攔截正確的調(diào)用。
import { beforeAll, expect, test } from 'vitest';
import { randomFillSync } from 'crypto';
import { mockWindows } from '@tauri-apps/api/mocks';
// jsdom doesn't come with a WebCrypto implementation
beforeAll(() => {
Object.defineProperty(window, 'crypto', {
value: {
// @ts-ignore
getRandomValues: (buffer) => {
return randomFillSync(buffer);
},
},
});
});
test('invoke', async () => {
mockWindows('main', 'second', 'third');
const { getCurrent, getAll } = await import('@tauri-apps/api/window');
expect(getCurrent()).toHaveProperty('label', 'main');
expect(getAll().map((w) => w.label)).toEqual(['main', 'second', 'third']);
});
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: