summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/test_basic.py22
1 files changed, 22 insertions, 0 deletions
diff --git a/tests/test_basic.py b/tests/test_basic.py
index ec4df7d..573bcbf 100644
--- a/tests/test_basic.py
+++ b/tests/test_basic.py
@@ -180,6 +180,28 @@ def test_boolean_option(runner):
assert result.output == '%s\n' % (default)
+def test_boolean_conversion(runner):
+ for default in True, False:
+ @click.command()
+ @click.option('--flag', default=default, type=bool)
+ def cli(flag):
+ click.echo(flag)
+
+ for value in 'true', 't,' '1', 'yes', 'y':
+ result = runner.invoke(cli, ['--flag', value])
+ assert not result.exception
+ assert result.output == 'True\n'
+
+ for value in 'false', 'f', '0', 'no', 'n':
+ result = runner.invoke(cli, ['--flag', value])
+ assert not result.exception
+ assert result.output == 'False\n'
+
+ result = runner.invoke(cli, [])
+ assert not result.exception
+ assert result.output == '%s\n' % default
+
+
def test_file_option(runner):
@click.command()
@click.option('--file', type=click.File('w'))