cli: initial deno tests for basic-integrity cli plugin (ref. #66)

merge-requests/23/head
Michał 'rysiek' Woźniak 2022-12-12 23:30:24 +00:00
rodzic c6e04e9ca0
commit 78b37cb7f0
1 zmienionych plików z 46 dodań i 0 usunięć

Wyświetl plik

@ -0,0 +1,46 @@
import { assert } from "https://deno.land/std@0.167.0/testing/asserts.ts";
Deno.test("plugin load", async () => {
const bi = await import('../../plugins/basic-integrity/cli.js')
assert("name" in bi)
assert(bi.name == "basic-integrity")
assert("description" in bi)
assert("actions" in bi)
});
Deno.test("get-integrity action defined", async () => {
const bi = await import('../../plugins/basic-integrity/cli.js')
assert("get-integrity" in bi.actions)
const gi = bi.actions["get-integrity"]
assert("run" in gi)
assert("description" in gi)
assert("arguments" in gi)
const gia = gi.arguments
assert("_" in gia)
assert("algorithm" in gia)
assert("output" in gia)
assert("name" in gia._)
assert("description" in gia._)
assert("description" in gia.algorithm)
assert("collect" in gia.algorithm)
assert(gia.algorithm.collect)
assert("string" in gia.algorithm)
assert(gia.algorithm.string)
assert("description" in gia.output)
assert("collect" in gia.output)
assert(!gia.output.collect)
assert("string" in gia.output)
assert(gia.output.string)
});
// this is a separate test in order to catch any changing defaults
Deno.test("get-integrity action defaults", async () => {
const bi = await import('../../plugins/basic-integrity/cli.js')
const gia = bi.actions["get-integrity"].arguments
assert("default" in gia.algorithm)
assert(gia.algorithm.default == "SHA-256")
assert("default" in gia.output)
assert(gia.output.default == "json")
});
//TODO cont.