blob: cfdab3c31f944e8532899bda170e325b2b708504 (
plain) (
blame)
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
|
import click
def test_command_no_parens(runner):
@click.command
def cli():
click.echo("hello")
result = runner.invoke(cli)
assert result.exception is None
assert result.output == "hello\n"
def test_custom_command_no_parens(runner):
class CustomCommand(click.Command):
pass
class CustomGroup(click.Group):
command_class = CustomCommand
@click.group(cls=CustomGroup)
def grp():
pass
@grp.command
def cli():
click.echo("hello custom command class")
result = runner.invoke(cli)
assert result.exception is None
assert result.output == "hello custom command class\n"
def test_group_no_parens(runner):
@click.group
def grp():
click.echo("grp1")
@grp.command
def cmd1():
click.echo("cmd1")
@grp.group
def grp2():
click.echo("grp2")
@grp2.command
def cmd2():
click.echo("cmd2")
result = runner.invoke(grp, ["cmd1"])
assert result.exception is None
assert result.output == "grp1\ncmd1\n"
result = runner.invoke(grp, ["grp2", "cmd2"])
assert result.exception is None
assert result.output == "grp1\ngrp2\ncmd2\n"
def test_params_argument(runner):
opt = click.Argument(["a"])
@click.command(params=[opt])
@click.argument("b")
def cli(a, b):
click.echo(f"{a} {b}")
assert cli.params[0].name == "a"
assert cli.params[1].name == "b"
result = runner.invoke(cli, ["1", "2"])
assert result.output == "1 2\n"
|