summaryrefslogtreecommitdiff
path: root/tests/frontend/help.py
blob: 3bc18499b4d723f6eadbd3ee4966f8ef85740a2c (plain)
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
# Pylint doesn't play well with fixtures and dependency injection from pytest
# pylint: disable=redefined-outer-name

import pytest
from buildstream.testing.runcli import cli  # pylint: disable=unused-import


def assert_help(cli_output):
    expected_start = "Usage: "
    if not cli_output.startswith(expected_start):
        raise AssertionError("Help output expected to begin with '{}',"
                             .format(expected_start) +
                             " output was: {}"
                             .format(cli_output))


def test_help_main(cli):
    result = cli.run(args=['--help'])
    result.assert_success()
    assert_help(result.output)


@pytest.mark.parametrize("command", [
    ('artifact'),
    ('build'),
    ('checkout'),
    ('shell'),
    ('show'),
    ('source'),
    ('workspace')
])
def test_help(cli, command):
    result = cli.run(args=[command, '--help'])
    result.assert_success()
    assert_help(result.output)