File: test_confirmation_question.py

package info (click to toggle)
clikit 0.6.2-4
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 984 kB
  • sloc: python: 9,575; sh: 6; makefile: 3
file content (28 lines) | stat: -rw-r--r-- 745 bytes parent folder | download | duplicates (3)
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
from clikit.ui.components import ConfirmationQuestion


def test_ask(io):
    data = [
        ("", True),
        ("", False, False),
        ("y", True),
        ("yes", True),
        ("n", False),
        ("no", False),
    ]

    for d in data:
        io.set_input(d[0] + "\n")
        default = d[2] if len(d) > 2 else True
        question = ConfirmationQuestion("Do you like French fries?", default)
        assert d[1] == question.ask(io)


def test_ask_with_custom_answer(io):
    io.set_input("j\ny\n")

    question = ConfirmationQuestion("Do you like French fries?", False, "(?i)^(j|y)")
    assert question.ask(io)

    question = ConfirmationQuestion("Do you like French fries?", False, "(?i)^(j|y)")
    assert question.ask(io)