mirror of
https://github.com/pezkuwichain/pezkuwi-common.git
synced 2026-04-21 23:48:05 +00:00
a5542fdd87
- Fixed internal @polkadot references to @pezkuwi - Updated hw-ledger and hw-ledger-transports packages - Updated keyring and networks packages - Version 14.0.7
80 lines
3.0 KiB
TypeScript
80 lines
3.0 KiB
TypeScript
// Copyright 2017-2025 @pezkuwi/keyring authors & contributors
|
|
// SPDX-License-Identifier: Apache-2.0
|
|
|
|
/// <reference types="@pezkuwi/dev-test/globals.d.ts" />
|
|
|
|
import { u8aToHex } from '@pezkuwi/util';
|
|
import { cryptoWaitReady } from '@pezkuwi/util-crypto';
|
|
|
|
import Keyring from './index.js';
|
|
import { createTestPairs } from './testingPairs.js';
|
|
|
|
const TEST_ADD = '0xf24FF3a9CF04c71Dbc94D0b566f7A27B94566cac';
|
|
|
|
await cryptoWaitReady();
|
|
|
|
describe('testingPairs', (): void => {
|
|
it('creates without failing', (): void => {
|
|
expect(
|
|
Object.keys(createTestPairs())
|
|
).toHaveLength(2 + 0 + 7); // stash, session, pairs
|
|
});
|
|
|
|
it('has the correct address for Alice (non-HDKD)', (): void => {
|
|
expect(
|
|
createTestPairs({ type: 'ed25519' }, false).alice.address
|
|
).toEqual('5GoKvZWG5ZPYL1WUovuHW3zJBWBP5eT8CbqjdRY4Q6iMaQua');
|
|
});
|
|
|
|
it('has the correct address for Alice (HDKD)', (): void => {
|
|
expect(
|
|
createTestPairs({ type: 'ed25519' }).alice.address
|
|
).toEqual('5GrwvaEF5zXb26Fz9rcQpDWS57CtERHpNehXCPcNoHGKutQY');
|
|
});
|
|
|
|
it('has the correct address for Alith (Eth)', (): void => {
|
|
expect(
|
|
createTestPairs({ type: 'ethereum' }).Alith.address
|
|
).toEqual(TEST_ADD);
|
|
});
|
|
|
|
it('has the correct address for Alith (Eth), same as obtained by createFromUri', (): void => {
|
|
const keyring = new Keyring({ type: 'ethereum' });
|
|
const pair = keyring.createFromUri('0x5fb92d6e98884f76de468fa3f6278f8807c48bebc13595d45af5bdc4da702133');
|
|
|
|
expect(pair?.address).toEqual(TEST_ADD);
|
|
});
|
|
|
|
describe('checks eth test addresses', (): void => {
|
|
const ring = createTestPairs({ type: 'ethereum' });
|
|
const keyring = new Keyring({ type: 'ethereum' });
|
|
// priv keys generated by ganache-cli --mnemonic "bottom drive obey lake curtain smoke basket hold race lonely fit walk"
|
|
const privKeys: string[] = ['0x5fb92d6e98884f76de468fa3f6278f8807c48bebc13595d45af5bdc4da702133',
|
|
'0x8075991ce870b93a8870eca0c0f91913d12f47948ca0fd25b49c6fa7cdbeee8b',
|
|
'0x0b6e18cafb6ed99687ec547bd28139cafdd2bffe70e6b688025de6b445aa5c5b',
|
|
'0x39539ab1876910bbf3a223d84a29e28f1cb4e2e456503e7e91ed39b2e7223d68',
|
|
'0x7dce9bc8babb68fec1409be38c8e1a52650206a7ed90ff956ae8a6d15eeaaef4',
|
|
'0xb9d2ea9a615f3165812e8d44de0d24da9bbd164b65c4f0573e1ce2c8dbd9c8df',
|
|
'0x96b8a38e12e1a31dee1eab2fffdf9d9990045f5b37e44d8cc27766ef294acf18',
|
|
'0x0d6dcaaef49272a5411896be8ad16c01c35d6f8c18873387b71fbc734759b0ab',
|
|
'0x4c42532034540267bf568198ccec4cb822a025da542861fcb146a5fab6433ff8',
|
|
'0x94c49300a58d576011096bcb006aa06f5a91b34b4383891e8029c21dc39fbb8b'];
|
|
|
|
// @ts-expect-error We should not delete from the maps, however this is a test
|
|
delete ring.nobody;
|
|
|
|
Object
|
|
.keys(ring)
|
|
.filter((_, i) => i < 6)
|
|
.forEach((testKeyring, i) => {
|
|
it(`checks #${i}`, (): void => {
|
|
expect(
|
|
u8aToHex(ring[testKeyring].publicKey)
|
|
).toEqual(
|
|
u8aToHex(keyring.createFromUri(privKeys[i]).publicKey)
|
|
);
|
|
});
|
|
});
|
|
});
|
|
});
|