File: test_script_hello.py

package info (click to toggle)
python-milc 1.9.1-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 788 kB
  • sloc: python: 1,868; sh: 55; makefile: 3
file content (96 lines) | stat: -rw-r--r-- 4,062 bytes parent folder | download
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
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
from os import unlink
from tempfile import NamedTemporaryFile

from .common import check_assert, check_command, check_returncode


def test_hello():
    result = check_command('./hello')
    check_returncode(result)
    check_assert(result, 'Hello, World, from cli.log.info!' in result.stdout)
    check_assert(result, 'Hello, World, from cli.echo!' in result.stdout)


def test_hello_help():
    result = check_command('./hello', '--help')
    check_returncode(result)
    check_assert(result, '[-n NAME]' in result.stdout)
    check_assert(result, '[--no-comma]' in result.stdout)


def test_hello_no_color():
    result = check_command('./hello', '--no-color')
    check_returncode(result)
    if 'ℹ' in result.stdout:
        check_assert(result, result.stdout == 'ℹ Hello, World, from cli.log.info!\nHello, World, from cli.echo!\n')
    else:
        check_assert(result, result.stdout == 'INFO Hello, World, from cli.log.info!\nHello, World, from cli.echo!\n')


def test_hello_no_color_no_unicode():
    result = check_command('./hello', '--no-color', '--no-unicode')
    check_returncode(result)
    check_assert(result, result.stdout == 'INFO Hello, World, from cli.log.info!\nHello, World, from cli.echo!\n')


def test_hello_no_color_no_comma():
    result = check_command('./hello', '--no-color', '--no-comma')
    check_returncode(result)
    if 'ℹ' in result.stdout:
        check_assert(result, result.stdout == 'ℹ Hello World, from cli.log.info!\nHello World, from cli.echo!\n')
    else:
        check_assert(result, result.stdout == 'INFO Hello World, from cli.log.info!\nHello World, from cli.echo!\n')


def test_hello_no_color_no_unicode_no_comma():
    result = check_command('./hello', '--no-color', '--no-unicode', '--no-comma')
    check_returncode(result)
    check_assert(result, result.stdout == 'INFO Hello World, from cli.log.info!\nHello World, from cli.echo!\n')


def test_hello_no_color_log_file():
    log_file = NamedTemporaryFile(delete=False)
    result = check_command('./hello', '--no-color', '--log-file', log_file.name)
    check_returncode(result)
    if 'ℹ' in result.stdout:
        check_assert(result, result.stdout == 'ℹ Hello, World, from cli.log.info!\nHello, World, from cli.echo!\n')
    else:
        check_assert(result, result.stdout == 'INFO Hello, World, from cli.log.info!\nHello, World, from cli.echo!\n')
    log_file_contents = log_file.read().decode('utf-8')
    log_file.close()
    unlink(log_file.name)
    if 'Hello, World, from cli.log.info!' not in log_file_contents:
        print('Log File Contents:')
        print(log_file_contents)
        print()
        raise AssertionError


def test_hello_no_color_no_unicode_log_file():
    log_file = NamedTemporaryFile(delete=False)
    result = check_command('./hello', '--no-color', '--no-unicode', '--log-file', log_file.name)
    check_returncode(result)
    check_assert(result, result.stdout == 'INFO Hello, World, from cli.log.info!\nHello, World, from cli.echo!\n')
    log_file_contents = log_file.read().decode('utf-8')
    log_file.close()
    unlink(log_file.name)
    if 'Hello, World, from cli.log.info!' not in log_file_contents:
        print('Log File Contents:')
        print(log_file_contents)
        print()
        raise AssertionError


def test_hello_no_color_verbose():
    result = check_command('./hello', '--no-color', '-v')
    check_returncode(result)
    if '☐' in result.stdout:
        check_assert(result, result.stdout == '☐ You used -v you lucky person!\nℹ Hello, World, from cli.log.info!\nHello, World, from cli.echo!\n')
    else:
        check_assert(result, result.stdout == 'DEBUG You used -v you lucky person!\nINFO Hello, World, from cli.log.info!\nHello, World, from cli.echo!\n')


def test_hello_no_color_no_unicode_verbose():
    result = check_command('./hello', '--no-color', '--no-unicode', '-v')
    check_returncode(result)
    check_assert(result, result.stdout == 'DEBUG You used -v you lucky person!\nINFO Hello, World, from cli.log.info!\nHello, World, from cli.echo!\n')