简体   繁体   中英

How to pass command line arguments in deno test?

For example:

Deno.test({
  name: "Testing qr-html generation",
  fn: async () => {
    await createQRhtml();
    assertEquals(exists("out/qr.html"), true);
  }
});

createQRhtml() function takes arguments from command line. Specifically, first argument: Deno.args[0] .

How to specify here?

You can pass your CLI arguments after a double dash ( -- ) like this:

deno test args.test.ts -- hello

args.test.ts :

import {assert} from 'https://deno.land/std@0.109.0/testing/asserts.ts';

function isHello (str?: unknown): boolean {
  return str === 'hello';
}

Deno.test('First CLI argument is "hello"', () => {
  const [firstArg] = Deno.args;
  assert(isHello(firstArg));
});

You can learn about the test commmand and other commands in your CLI using the form:

deno help COMMAND_NAME

This is included in the output of deno help test :

USAGE:
    deno test [OPTIONS] [files]... [-- <SCRIPT_ARG>...]

See also: https://github.com/denoland/deno/issues/8096

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM