2024-12-30 10:39:28 +01:00
|
|
|
import { $, createWalletViaCli, getMoneroCTags, prepareCli, prepareMoneroC } from "./utils.ts";
|
2024-10-16 07:55:11 +02:00
|
|
|
|
|
|
|
|
const coin = Deno.env.get("COIN");
|
|
|
|
|
if (coin !== "monero" && coin !== "wownero") {
|
|
|
|
|
throw new Error("COIN env var invalid or missing");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
Deno.test(`Regression tests (${coin})`, async (t) => {
|
|
|
|
|
await Deno.remove("./tests/wallets", { recursive: true }).catch(() => {});
|
|
|
|
|
await Deno.mkdir("./tests/wallets", { recursive: true });
|
|
|
|
|
|
|
|
|
|
const tags = await getMoneroCTags();
|
|
|
|
|
const latestTag = tags[0];
|
2024-12-30 10:39:28 +01:00
|
|
|
await Promise.all([prepareMoneroC(coin, "next"), await prepareMoneroC(coin, latestTag), prepareCli(coin)]);
|
2024-10-16 07:55:11 +02:00
|
|
|
|
|
|
|
|
await t.step("Simple (next, latest, next)", async () => {
|
|
|
|
|
const walletInfo = await createWalletViaCli(coin, "dog", "sobaka");
|
|
|
|
|
|
|
|
|
|
for (const version of ["next", latestTag, "next"]) {
|
|
|
|
|
await $`deno run -A ./tests/compare.ts ${coin} ${version} ${JSON.stringify(walletInfo)}`;
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
await Deno.remove("./tests/wallets", { recursive: true }).catch(() => {});
|
|
|
|
|
});
|