fixed programs test

fixed programs test
This commit is contained in:
Conner Gallagher 2022-05-19 14:49:38 -06:00
parent fe6d2de155
commit 3c9fe00c29
20 changed files with 197 additions and 184 deletions

View File

@ -7,11 +7,11 @@ wallet = "../payer-keypair.json"
[programs.localnet]
anchor_feed_parser = "H7frfaL4ZjRW6NAyBvuGgsi9P2G1CgVgqFqzFSDS521f"
anchor_vrf_parser = "HWCUJF1GgCrS1fWNyJdWSBEVNXtdjRwQy7HohdQ5n31o"
# spl_feed_parser = "9dqf4Z9oKRJ6TDGHWyfArV7VtcFNsZWz1wZwWWQmWPHW"
[programs.devnet]
anchor_feed_parser = "H7frfaL4ZjRW6NAyBvuGgsi9P2G1CgVgqFqzFSDS521f"
anchor_vrf_parser = "HWCUJF1GgCrS1fWNyJdWSBEVNXtdjRwQy7HohdQ5n31o"
# spl_feed_parser = "9dqf4Z9oKRJ6TDGHWyfArV7VtcFNsZWz1wZwWWQmWPHW"
[registry]
url = "https://anchor.projectserum.com"

View File

@ -1,6 +1,4 @@
[workspace]
members = [
"programs/anchor-feed-parser",
"programs/anchor-vrf-parser",
"programs/spl-feed-parser",
"programs/*",
]

View File

@ -1,6 +1,7 @@
{
"extends": "../tsconfig.json",
"compilerOptions": {
"noEmit": false,
"outDir": "lib",
"rootDir": "src",
"strict": false,

View File

@ -1,6 +1,6 @@
{
"name": "@switchboard-xyz/sbv2-utils",
"version": "0.0.11",
"version": "0.0.10",
"description": "some basic utility functions when working with switchboard-v2",
"author": "",
"license": "ISC",

View File

@ -95,6 +95,25 @@ export function getAnchorWalletPath(parsedToml?: any): string {
return walletPath;
}
export function getAnchorCluster(parsedToml?: any): string {
let tomlData: any;
if (parsedToml) {
tomlData = parsedToml;
} else {
const tomlPath = path.join(process.cwd(), "Anchor.toml");
if (!fs.existsSync(tomlPath)) {
throw new Error(`failed to find Anchor.toml`);
}
tomlData = toml.parse(fs.readFileSync(tomlPath, "utf8"));
}
const cluster = tomlData.provider.cluster;
if (!cluster) {
throw new Error(`Failed to read Anchor.toml cluster`);
}
return cluster;
}
export function loadPid(programKeypairPath: string): PublicKey {
if (!fs.existsSync(programKeypairPath)) {
console.log(programKeypairPath);

View File

@ -1,6 +1,6 @@
{
"name": "@switchboard-xyz/switchboard-v2",
"version": "0.0.96",
"version": "0.0.98",
"private": true,
"description": "API wrapper for intergating with the Switchboardv2 program",
"keywords": [

View File

@ -8,7 +8,7 @@ rpcUrl: $RPC_URL
wsUrl: $WS_URL
backupMainnetUrl: $BACKUP_MAINNET_RPC
pagerdutyEventKey: $PAGERDUTY_EVENT_KEY
image: "docker.io/switchboardlabs/node:dev-v2-4-5-22a"
image: "docker.io/switchboardlabs/node:dev-v2-5-3-22"
keyJson: $SERVICE_ACCOUNT_BASE64
oracleKeys:
- name: idx-1

View File

@ -13,6 +13,7 @@
],
"scripts": {
"start": "echo \"Error: no start script specified\" && exit 1",
"anchor:setup": "anchor build && node ./scripts/setup-example-programs.js",
"test:anchor": "yarn workspace anchor-feed-parser anchor:test && yarn workspace spl-feed-parser anchor:test && yarn workspace anchor-vrf-parser anchor:test",
"test:libraries:ts": "yarn workspace @switchboard-xyz/sbv2-lite test && yarn workspace @switchboard-xyz/switchboard-v2 test",
"test:libraries:py": "cd libraries/py && poetry run pytest",
@ -32,16 +33,12 @@
},
"devDependencies": {
"@gallynaut/rawrtools": "^0.0.1",
"@types/chai": "^4.3.1",
"@types/mocha": "^9.1.1",
"@types/node": "^17.0.35",
"anchor-client-gen": "^0.24.0",
"chai": "^4.3.6",
"lerna": "^4.0.0",
"mocha": "^10.0.0",
"npm-run-all": "^4.1.5",
"shelljs": "^0.8.5",
"shx": "^0.3.4",
"ts-mocha": "^10.0.0",
"ts-node": "^10.7.0",
"typedoc": "^0.22.15",
"typescript": "^4.6.3"

View File

@ -17,7 +17,7 @@
"@project-serum/anchor": "^0.24.2",
"@solana/web3.js": "1.33.0",
"@switchboard-xyz/switchboard-v2": "^0.0.97",
"@switchboard-xyz/sbv2-utils": "^0.0.9",
"@switchboard-xyz/sbv2-utils": "^0.0.10",
"dotenv": "^16.0.0",
"node-pagerduty": "^1.3.6"
},

View File

@ -13,15 +13,18 @@
},
"dependencies": {
"@project-serum/anchor": "^0.24.2",
"@solana/web3.js": "^1.37.1",
"@switchboard-xyz/switchboard-v2": "^0.0.95"
"@solana/web3.js": "^1.42.0",
"@switchboard-xyz/sbv2-utils": "^0.0.10",
"@switchboard-xyz/switchboard-v2": "^0.0.97"
},
"devDependencies": {
"@types/chai": "^4.3.0",
"@types/mocha": "^9.1.0",
"chai": "^4.3.4",
"mocha": "^9.2.2",
"@types/mocha": "^9.0.0",
"@types/node": "^17.0.35",
"chai": "^4.3.6",
"mocha": "^9.0.3",
"ts-mocha": "^9.0.2",
"ts-node": "^10.4.0",
"typescript": "^4.3.5"
}
}

View File

@ -1,7 +1,7 @@
import type { Program } from "@project-serum/anchor";
import * as anchor from "@project-serum/anchor";
import { PublicKey } from "@solana/web3.js";
import { SwitchboardTestContext } from "@switchboard-xyz/switchboard-v2";
import { SwitchboardTestContext } from "@switchboard-xyz/sbv2-utils";
import type { AnchorFeedParser } from "../../../target/types/anchor_feed_parser";
const sleep = (ms: number): Promise<any> =>
@ -11,46 +11,45 @@ const sleep = (ms: number): Promise<any> =>
const DEFAULT_SOL_USD_FEED = new PublicKey(
"GvDMxPzN1sCj7L26YDK2HnMRXEQmQ2aemov8YBtPS7vR"
);
console.log("checking1");
describe("anchor-feed-parser", () => {
describe("anchor-feed-parser test", () => {
anchor.setProvider(anchor.AnchorProvider.env());
const feedParserProgram = anchor.workspace
.AnchorFeedParser as Program<AnchorFeedParser>;
const provider = feedParserProgram.provider as anchor.AnchorProvider;
let switchboard: SwitchboardTestContext;
let aggregatorKey: PublicKey;
before(async () => {
console.log("checking");
const accountInfo = await provider.connection.getAccountInfo(
DEFAULT_SOL_USD_FEED
);
if (accountInfo) {
aggregatorKey = DEFAULT_SOL_USD_FEED;
return;
}
// create an aggregator
// First, attempt to load the switchboard devnet PID
try {
const switchboard = await SwitchboardTestContext.loadFromEnv(provider);
const staticFeed = await switchboard.createStaticFeed(100);
if (!staticFeed.publicKey) {
throw new Error("failed to read aggregatorKey");
}
aggregatorKey = staticFeed.publicKey;
console.log(`created aggregator ${aggregatorKey}`);
await sleep(2000);
switchboard = await SwitchboardTestContext.loadDevnetQueue(provider);
aggregatorKey = DEFAULT_SOL_USD_FEED;
console.log("devnet detected");
return;
} catch (error) {
console.error(error);
throw new Error(
`failed to load switchboard aggregator or switchboard.env`
);
console.log(error);
}
// If fails, fallback to looking for a local env file
try {
switchboard = await SwitchboardTestContext.loadFromEnv(provider);
const aggregatorAccount = await switchboard.createStaticFeed(100);
aggregatorKey = aggregatorAccount.publicKey ?? PublicKey.default;
console.log("localnet detected");
return;
} catch (error) {
console.log(error);
}
// If fails, throw error
throw new Error(
`Failed to load the SwitchboardTestContext from devnet or from a switchboard.env file`
);
});
it("Read SOL/USD Feed", async () => {
const tx = await feedParserProgram.methods
const signature = await feedParserProgram.methods
.readResult()
.accounts({ aggregator: aggregatorKey })
.rpc();
@ -59,9 +58,10 @@ describe("anchor-feed-parser", () => {
await sleep(2000);
const logs = await provider.connection.getParsedTransaction(
tx,
signature,
"confirmed"
);
console.log(JSON.stringify(logs?.meta?.logMessages, undefined, 2));
});
});

View File

@ -16,7 +16,7 @@
"@solana/spl-token": "^0.1.8",
"@solana/web3.js": "^1.42.0",
"@switchboard-xyz/sbv2-utils": "^0.0.10",
"@switchboard-xyz/switchboard-v2": "^0.0.95",
"@switchboard-xyz/switchboard-v2": "^0.0.97",
"chalk": "^4.1.2",
"child_process": "^1.0.2",
"dotenv": "^16.0.0"
@ -25,6 +25,7 @@
"@switchboard-xyz/switchboardv2-cli": "^0.1.11",
"@types/chai": "^4.3.0",
"@types/mocha": "^9.0.0",
"@types/node": "^17.0.35",
"@typescript-eslint/eslint-plugin": "^4.33.0",
"@typescript-eslint/parser": "^4.33.0",
"chai": "^4.3.6",

View File

@ -35,7 +35,7 @@ interface VrfClientState {
vrf: PublicKey;
}
describe("vrfClient test", async () => {
describe("anchor-vrf-parser test", async () => {
anchor.setProvider(anchor.AnchorProvider.env());
const vrfClientProgram = anchor.workspace
@ -77,7 +77,6 @@ describe("vrfClient test", async () => {
} catch (error) {
console.log(error);
}
// If exists, try to load the devnet permissionless queue
// If fails, fallback to looking for a local env file
try {
switchboard = await SwitchboardTestContext.loadFromEnv(provider);
@ -87,7 +86,6 @@ describe("vrfClient test", async () => {
console.log(error);
}
// If fails, throw error
// TODO: Add try catch block to check devnet environment accounts
throw new Error(
`Failed to load the SwitchboardTestContext from devnet or from a switchboard.env file`
);

View File

@ -19,7 +19,7 @@
"@switchboard-xyz/sbv2-utils": ["../../libraries/sbv2-utils"]
}
},
"include": ["client/**/*"],
// "include": ["client/**/*"],
"exclude": ["target", "lib"],
"references": [
{ "path": "../../libraries/ts" },

View File

@ -15,15 +15,18 @@
},
"dependencies": {
"@project-serum/anchor": "^0.24.2",
"@solana/web3.js": "^1.37.1",
"@solana/web3.js": "^1.42.0",
"@switchboard-xyz/sbv2-utils": "^0.0.10",
"@switchboard-xyz/switchboard-v2": "^0.0.97"
},
"devDependencies": {
"@types/chai": "^4.3.0",
"@types/mocha": "^9.1.0",
"chai": "^4.3.4",
"mocha": "^9.2.2",
"@types/mocha": "^9.0.0",
"@types/node": "^17.0.35",
"chai": "^4.3.6",
"mocha": "^9.0.3",
"ts-mocha": "^9.0.2",
"ts-node": "^10.4.0",
"typescript": "^4.3.5"
}
}

View File

@ -1,54 +0,0 @@
import type { Program } from "@project-serum/anchor";
import * as anchor from "@project-serum/anchor";
import { PublicKey } from "@solana/web3.js";
import { SwitchboardTestContext } from "@switchboard-xyz/switchboard-v2";
import type { AnchorFeedParser } from "../../../target/types/anchor_feed_parser";
const sleep = (ms: number): Promise<any> =>
new Promise((s) => setTimeout(s, ms));
// Anchor.toml will copy this to localnet when we start our tests
const DEFAULT_SOL_USD_FEED = new PublicKey(
"GvDMxPzN1sCj7L26YDK2HnMRXEQmQ2aemov8YBtPS7vR"
);
describe("anchor-feed-parser", () => {
anchor.setProvider(anchor.AnchorProvider.env());
const feedParserProgram = anchor.workspace
.AnchorFeedParser as Program<AnchorFeedParser>;
const provider = feedParserProgram.provider as anchor.AnchorProvider;
let aggregatorKey: PublicKey;
before(async () => {
const accountInfo = await provider.connection.getAccountInfo(
DEFAULT_SOL_USD_FEED
);
if (accountInfo) {
aggregatorKey = DEFAULT_SOL_USD_FEED;
return;
}
// create an aggregator
try {
const switchboard = await SwitchboardTestContext.loadFromEnv(provider);
const staticFeed = await switchboard.createStaticFeed(100);
if (!staticFeed.publicKey) {
throw new Error("failed to read aggregatorKey");
}
aggregatorKey = staticFeed.publicKey;
console.log(`created aggregator ${aggregatorKey}`);
await sleep(2000);
} catch (error) {
console.error(error);
throw new Error(
`failed to load switchboard aggregator or switchboard.env`
);
}
});
it("Read SOL/USD Feed", async () => {
return;
});
});

View File

@ -0,0 +1,98 @@
import * as anchor from "@project-serum/anchor";
import {
Keypair,
PublicKey,
Transaction,
TransactionInstruction,
} from "@solana/web3.js";
import { SwitchboardTestContext } from "@switchboard-xyz/sbv2-utils";
import fs from "fs";
import path from "path";
function getProgramId(): PublicKey {
const programKeypairPath = path.join(
__dirname,
"..",
"..",
"..",
"target",
"deploy",
"spl_feed_parser-keypair.json"
);
const PROGRAM_ID = Keypair.fromSecretKey(
new Uint8Array(JSON.parse(fs.readFileSync(programKeypairPath, "utf8")))
).publicKey;
return PROGRAM_ID;
}
const sleep = (ms: number): Promise<any> =>
new Promise((s) => setTimeout(s, ms));
// Anchor.toml will copy this to localnet when we start our tests
const DEFAULT_SOL_USD_FEED = new PublicKey(
"GvDMxPzN1sCj7L26YDK2HnMRXEQmQ2aemov8YBtPS7vR"
);
describe("spl-feed-parser test", () => {
const provider = anchor.AnchorProvider.env();
anchor.setProvider(provider);
let switchboard: SwitchboardTestContext;
let aggregatorKey: PublicKey;
before(async () => {
// First, attempt to load the switchboard devnet PID
try {
switchboard = await SwitchboardTestContext.loadDevnetQueue(provider);
aggregatorKey = DEFAULT_SOL_USD_FEED;
console.log("devnet detected");
return;
} catch (error) {
console.log(error);
}
// If fails, fallback to looking for a local env file
try {
switchboard = await SwitchboardTestContext.loadFromEnv(provider);
const aggregatorAccount = await switchboard.createStaticFeed(100);
aggregatorKey = aggregatorAccount.publicKey ?? PublicKey.default;
console.log("localnet detected");
return;
} catch (error) {
console.log(error);
}
// If fails, throw error
throw new Error(
`Failed to load the SwitchboardTestContext from devnet or from a switchboard.env file`
);
});
it("Read SOL/USD Feed", async () => {
const PROGRAM_ID = getProgramId();
const readSwitchboardAggregatorTxn = new Transaction().add(
new TransactionInstruction({
keys: [
{
pubkey: aggregatorKey,
isSigner: false,
isWritable: false,
},
],
programId: new PublicKey(PROGRAM_ID),
data: Buffer.from([]),
})
);
const signature = await provider.sendAndConfirm(
readSwitchboardAggregatorTxn
);
const confirmedTxn = await provider.connection.getParsedTransaction(
signature,
"confirmed"
);
console.log(JSON.stringify(confirmedTxn?.meta?.logMessages, undefined, 2));
});
});

View File

@ -12,7 +12,7 @@
"@switchboard-xyz/switchboard-v2": ["../../libraries/ts"]
}
},
"include": ["oldtests/**/**/*"],
// "include": ["oldtests/**/**/*"],
"exclude": ["target"],
"references": [{ "path": "../../libraries/ts" }]
}

View File

@ -1,6 +1,14 @@
#!/usr/bin/env node
/* eslint-disable @typescript-eslint/no-var-requires */
/* eslint-disable import/no-extraneous-dependencies */
/**
* This script will
* - Build any anchor projects if missing
* - Grab anchor project IDs
* - Update project IDs in Anchor.toml and lib.rs
*/
const shell = require("shelljs");
const { exec, spawn, execSync, spawnSync } = require("child_process");
const web3 = require("@solana/web3.js");

View File

@ -4156,23 +4156,6 @@
"@svgr/plugin-jsx" "^6.2.1"
"@svgr/plugin-svgo" "^6.2.0"
"@switchboard-xyz/sbv2-utils@^0.0.9":
version "0.0.10"
resolved "https://registry.npmjs.org/@switchboard-xyz/sbv2-utils/-/sbv2-utils-0.0.9.tgz#02dc58a078996d13e8583e16623cb4401f5a1611"
integrity sha512-aVKoK0FNoTbuq/AYK/sNnqNKIW2ebY6E8bwB927hqY7sJZ/Xwu82aN4zL9BO6ttiXyRBtyE+Zu2IGVuRfLHbkA==
dependencies:
"@orca-so/sdk" "^1.2.24"
"@project-serum/anchor" "^0.24.2"
"@saberhq/token-utils" "^1.12.68"
"@solana/spl-token" "^0.1.8"
"@solana/web3.js" "^1.37.1"
"@switchboard-xyz/switchboard-v2" "^0.0.97"
big.js "^6.1.1"
chalk "4"
decimal.js "^10.3.1"
dotenv "^16.0.0"
toml "^3.0.0"
"@switchboard-xyz/switchboard-api@^0.2.193":
version "0.2.200"
resolved "https://registry.npmjs.org/@switchboard-xyz/switchboard-api/-/switchboard-api-0.2.200.tgz#16c7d95390693e5992a7f96287143361b4d38cc9"
@ -4475,7 +4458,7 @@
resolved "https://registry.npmjs.org/@types/mocha/-/mocha-5.2.7.tgz"
integrity sha512-NYrtPht0wGzhwe9+/idPaBB+TqkY9AhTvOLMkThm0IoEfLaiVQZwBwyJ5puCkO3AUCWrmcoePjp2mbFocKy4SQ==
"@types/mocha@^9.0.0", "@types/mocha@^9.1.0", "@types/mocha@^9.1.1":
"@types/mocha@^9.0.0", "@types/mocha@^9.1.0":
version "9.1.1"
resolved "https://registry.npmjs.org/@types/mocha/-/mocha-9.1.1.tgz#e7c4f1001eefa4b8afbd1eee27a237fee3bf29c4"
integrity sha512-Z61JK7DKDtdKTWwLeElSEBcWGRLY8g95ic5FoQqI9CMx0ns/Ghep3B4DfcEimiKMvtamNVULVNKEsiwV3aQmXw==
@ -4495,6 +4478,11 @@
resolved "https://registry.npmjs.org/@types/node/-/node-17.0.31.tgz#a5bb84ecfa27eec5e1c802c6bbf8139bdb163a5d"
integrity sha512-AR0x5HbXGqkEx9CadRH3EBYx/VkiUgZIhP4wvPn/+5KIsgpNoyFaRlVe0Zlx9gRtg8fA06a9tskE2MSN7TcG4Q==
"@types/node@^17.0.35":
version "17.0.35"
resolved "https://registry.npmjs.org/@types/node/-/node-17.0.35.tgz#635b7586086d51fb40de0a2ec9d1014a5283ba4a"
integrity sha512-vu1SrqBjbbZ3J6vwY17jBs8Sr/BKA+/a/WtjRG+whKg1iuLFOosq872EXS0eXWILdO36DHQQeku/ZcL6hz2fpg==
"@types/normalize-package-data@^2.4.0":
version "2.4.1"
resolved "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz"
@ -6029,7 +6017,7 @@ ccount@^1.0.0, ccount@^1.0.3:
resolved "https://registry.npmjs.org/ccount/-/ccount-1.1.0.tgz"
integrity sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg==
chai@^4.3.4, chai@^4.3.6:
chai@^4.3.6:
version "4.3.6"
resolved "https://registry.npmjs.org/chai/-/chai-4.3.6.tgz"
integrity sha512-bbcp3YfHCUzMOvKqsztczerVgBKSsEijCySNlHHbX3VG1nskvqjz5Rfso1gGwD6w6oOV3eI60pKuMOV5MV7p3Q==
@ -7129,7 +7117,7 @@ debug@2.6.9, debug@^2.6.0, debug@^2.6.9:
dependencies:
ms "2.0.0"
debug@4, debug@4.3.4, debug@^4.0.0, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.3:
debug@4, debug@^4.0.0, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.3:
version "4.3.4"
resolved "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz"
integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==
@ -11397,13 +11385,6 @@ minimatch@4.2.1:
dependencies:
brace-expansion "^1.1.7"
minimatch@5.0.1, minimatch@^5.0.1:
version "5.0.1"
resolved "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz"
integrity sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==
dependencies:
brace-expansion "^2.0.1"
minimatch@^3.0.4, minimatch@^3.1.2:
version "3.1.2"
resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz"
@ -11411,6 +11392,13 @@ minimatch@^3.0.4, minimatch@^3.1.2:
dependencies:
brace-expansion "^1.1.7"
minimatch@^5.0.1:
version "5.0.1"
resolved "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz"
integrity sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==
dependencies:
brace-expansion "^2.0.1"
minimist-options@4.1.0:
version "4.1.0"
resolved "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz"
@ -11528,34 +11516,6 @@ mkdirp@^0.5.1, mkdirp@^0.5.5, mkdirp@~0.5.1:
dependencies:
minimist "^1.2.6"
mocha@^10.0.0:
version "10.0.0"
resolved "https://registry.npmjs.org/mocha/-/mocha-10.0.0.tgz#205447d8993ec755335c4b13deba3d3a13c4def9"
integrity sha512-0Wl+elVUD43Y0BqPZBzZt8Tnkw9CMUdNYnUsTfOM1vuhJVZL+kiesFYsqwBkEEuEixaiPe5ZQdqDgX2jddhmoA==
dependencies:
"@ungap/promise-all-settled" "1.1.2"
ansi-colors "4.1.1"
browser-stdout "1.3.1"
chokidar "3.5.3"
debug "4.3.4"
diff "5.0.0"
escape-string-regexp "4.0.0"
find-up "5.0.0"
glob "7.2.0"
he "1.2.0"
js-yaml "4.1.0"
log-symbols "4.1.0"
minimatch "5.0.1"
ms "2.1.3"
nanoid "3.3.3"
serialize-javascript "6.0.0"
strip-json-comments "3.1.1"
supports-color "8.1.1"
workerpool "6.2.1"
yargs "16.2.0"
yargs-parser "20.2.4"
yargs-unparser "2.0.0"
mocha@^9.0.3, mocha@^9.1.1, mocha@^9.1.3, mocha@^9.2.2:
version "9.2.2"
resolved "https://registry.npmjs.org/mocha/-/mocha-9.2.2.tgz"
@ -11662,11 +11622,6 @@ nanoid@3.3.1, nanoid@^3.3.1:
resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.1.tgz"
integrity sha512-n6Vs/3KGyxPQd6uO0eH4Bv0ojGSUvuLlIHtC3Y0kEO23YRge8H9x1GCzLn28YX0H66pMkxuaeESFq4tKISKwdw==
nanoid@3.3.3:
version "3.3.3"
resolved "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz#fd8e8b7aa761fe807dba2d1b98fb7241bb724a25"
integrity sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==
natural-compare@^1.4.0:
version "1.4.0"
resolved "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz"
@ -15436,15 +15391,6 @@ trough@^1.0.0:
resolved "https://registry.npmjs.org/trough/-/trough-1.0.5.tgz"
integrity sha512-rvuRbTarPXmMb79SmzEp8aqXNKcK+y0XaB298IXueQ8I2PsrATcPBCSPyK/dDNa2iWOhKlfNnOjdAOTBU/nkFA==
ts-mocha@^10.0.0:
version "10.0.0"
resolved "https://registry.npmjs.org/ts-mocha/-/ts-mocha-10.0.0.tgz#41a8d099ac90dbbc64b06976c5025ffaebc53cb9"
integrity sha512-VRfgDO+iiuJFlNB18tzOfypJ21xn2xbuZyDvJvqpTbWgkAgD17ONGr8t+Tl8rcBtOBdjXp5e/Rk+d39f7XBHRw==
dependencies:
ts-node "7.0.1"
optionalDependencies:
tsconfig-paths "^3.5.0"
ts-mocha@^9.0.2:
version "9.0.2"
resolved "https://registry.npmjs.org/ts-mocha/-/ts-mocha-9.0.2.tgz"
@ -16423,11 +16369,6 @@ workerpool@6.2.0:
resolved "https://registry.npmjs.org/workerpool/-/workerpool-6.2.0.tgz"
integrity sha512-Rsk5qQHJ9eowMH28Jwhe8HEbmdYDX4lwoMWshiCXugjtHqMD9ZbiqSDLxcsfdqsETPzVUtX5s1Z5kStiIM6l4A==
workerpool@6.2.1:
version "6.2.1"
resolved "https://registry.npmjs.org/workerpool/-/workerpool-6.2.1.tgz#46fc150c17d826b86a008e5a4508656777e9c343"
integrity sha512-ILEIE97kDZvF9Wb9f6h5aXK4swSlKGUcOEGiIYb2OOu/IrDU9iwj0fD//SsA6E5ibwJxpEvhullJY4Sl4GcpAw==
wrap-ansi@^6.2.0:
version "6.2.0"
resolved "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz"