ghost-keychain/packages/extension-ui/src/messaging.spec.ts
Tarik Gul 3d37f5918c
Update polkadot-js deps (#1571)
* Update polkadot-js deps

* chore: minor change

* chore: updated yarn.lock

* fix: tests

* fix: lint issues

* fix: build issues

* fix: replace sleep with waitForRateLimit for better rate limiting in tests

* Revert "fix: replace sleep with waitForRateLimit for better rate limiting in tests"

* fix: increase sleep duration in tests for better stability

* fix: remove sleep function and update State constructor for rate limiting

* chore: minor change

---------

Co-authored-by: Arjun Porwal <porwalarjun95@gmail.com>
2025-07-04 15:07:41 +03:00

41 lines
1.2 KiB
TypeScript

// Copyright 2019-2025 @polkadot/extension-ui authors & contributors
// SPDX-License-Identifier: Apache-2.0
/* global chrome */
import '@polkadot/extension-mocks/chrome';
import type * as _ from '@polkadot/dev-test/globals.d.ts';
import { wakeUpServiceWorkerWrapper } from '../../extension-base/src/utils/portUtils.js';
import { exportAccount } from './messaging.js';
describe('messaging sends message to background via extension port for', () => {
beforeEach(() => {
jest.spyOn(wakeUpServiceWorkerWrapper, 'wakeUpServiceWorker').mockImplementation(() => Promise.resolve({ status: 'awake' }));
});
afterEach(() => {
jest.restoreAllMocks();
});
it('exportAccount', async () => {
const callback = jest.fn();
chrome.runtime.connect().onMessage.addListener(callback);
try {
await exportAccount('HjoBp62cvsWDA3vtNMWxz6c9q13ReEHi9UGHK7JbZweH5g5', 'passw0rd');
} catch (error) {
console.error(error);
}
expect(callback).toHaveBeenCalledWith(
expect.objectContaining({
message: 'pri(accounts.export)',
request: { address: 'HjoBp62cvsWDA3vtNMWxz6c9q13ReEHi9UGHK7JbZweH5g5', password: 'passw0rd' }
})
);
});
});