import {Account, Connection} from '@solana/web3.js'; export async function newAccountWithLamports( connection: Connection, lamports = 1000000, ): Promise { const account = new Account(); let retries = 10; await connection.requestAirdrop(account.publicKey, lamports); for (;;) { if (lamports == (await connection.getBalance(account.publicKey))) { return account; } if (--retries <= 0) { break; } console.log(`Airdrop retry ${retries}`); } throw new Error(`Airdrop of ${lamports} failed`); }