~reviewer/hello-hut

ref: e1715ad00241b3512413fc617dbe598946404226 hello-hut/tests/test_cli.py -rw-r--r-- 600 bytes
e1715ad0 — Mira Okafor docs: add a contributing guide 4 months ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import io
import unittest
from contextlib import redirect_stdout

from hello_hut.cli import main


def run(*argv):
    out = io.StringIO()
    with redirect_stdout(out):
        code = main(list(argv))
    return code, out.getvalue()


class CliTest(unittest.TestCase):
    def test_count(self):
        code, out = run("Ada", "--count", "3")
        self.assertEqual(code, 0)
        self.assertEqual(out.splitlines(), ["Hello, Ada!"] * 3)

    def test_count_must_be_positive(self):
        code, out = run("Ada", "--count", "0")
        self.assertEqual(code, 2)
        self.assertEqual(out, "")