42 lines
1.1 KiB
TypeScript
42 lines
1.1 KiB
TypeScript
import { Page } from '@playwright/test'
|
|
|
|
export const importWallet = async ({
|
|
extensionUrl,
|
|
mnemonic,
|
|
name,
|
|
page,
|
|
}: {
|
|
extensionUrl: string
|
|
mnemonic: string
|
|
name: string
|
|
page: Page
|
|
}) => {
|
|
await page.goto(`${extensionUrl}/register.html`)
|
|
|
|
const mnemonicWords = mnemonic.split(' ')
|
|
|
|
await page.getByRole('button', { name: /import/i }).click()
|
|
await page.getByRole('button', { name: /use/i }).click()
|
|
await page.getByRole('button', { name: /24/ }).click()
|
|
|
|
const seedInputs = await page.locator('input')
|
|
|
|
for (let i = 0; i < mnemonicWords.length; i++) {
|
|
await seedInputs.nth(i).fill(mnemonicWords[i])
|
|
}
|
|
|
|
await page.getByRole('button', { name: 'Import', exact: true }).click()
|
|
await page.getByPlaceholder('e.g. Trading, NFT Vault,').fill(name)
|
|
|
|
const inputs = await page.getByPlaceholder('At least 8 characters in length')
|
|
|
|
for (let i = 0; i < (await inputs.count()); i++) {
|
|
await inputs.nth(i).fill(process.env.TEST_WALLET_PASSWORD)
|
|
}
|
|
|
|
await page.getByRole('button', { name: /next/i }).click()
|
|
await page.getByRole('button', { name: /save/i }).click()
|
|
|
|
await page.close()
|
|
}
|