1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
import { $, createWalletViaCli, downloadMoneroCli, getMoneroC, getMoneroCTags } from "./utils.ts";
Deno.test("Regression tests", 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];
await Promise.all([getMoneroC("next"), await getMoneroC(latestTag), downloadMoneroCli()]);
await t.step("Simple (next, latest, next)", async () => {
const walletInfo = await createWalletViaCli("dog", "sobaka");
for (const version of ["next", latestTag, "next"]) {
await $`deno run -A ./tests/compare.ts ${version} ${JSON.stringify(walletInfo)}`;
}
});
await t.step("All releases sequentially (all tags in the release order, next)", async () => {
tags.unshift("next");
const walletInfo = await createWalletViaCli("cat", "koshka");
for (const version of tags.toReversed()) {
if (version !== "next" && version !== tags[0]) await getMoneroC(version);
await $`deno run -A ./tests/compare.ts ${version} ${JSON.stringify(walletInfo)}`;
}
await Deno.remove("./tests/wallets", { recursive: true }).catch(() => {});
});
await Deno.remove("./tests/wallets", { recursive: true }).catch(() => {});
await Deno.remove("./tests/libs", { recursive: true }).catch(() => {});
});
|