git.delta.rocks / unique-network / refs/commits / 3fd1cbdba689

difftreelog

source

tests/src/substrate/substrate-api.ts684 Bsourcehistory
1import { WsProvider, ApiPromise } from "@polkadot/api";2import config from "../config";3import promisifySubstrate from "./promisify-substrate";4import { ApiOptions } from "@polkadot/api/types";56export default async function usingApi(action: (api: ApiPromise) => Promise<void>): Promise<void> {7  const wsProvider = new WsProvider(config.substrateUrl);8  const settings: ApiOptions = { provider: wsProvider, types: JSON.parse(config.customTypes) };9  let api: ApiPromise | undefined = undefined;1011  try {12    api = await ApiPromise.create(settings);13    await promisifySubstrate(api, () => api && api.isReady)();14    await action(api);15  } finally {16    api && api.disconnect();17  }18}