summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorDavid Lord <davidism@gmail.com>2021-10-25 08:38:49 -0700
committerDavid Lord <davidism@gmail.com>2021-10-25 08:38:49 -0700
commitdf114b1eb791dfa1175d138f3a2108bba9bca080 (patch)
tree1e7b3961ed7c2ce26ffed36c0cf1db8826daf6ee /tests
parent41f5b7a7967bb65910e8837bd4e8542a18feec6c (diff)
downloadclick-df114b1eb791dfa1175d138f3a2108bba9bca080.tar.gz
open_file hanldes pathlib.Path("-")
Diffstat (limited to 'tests')
-rw-r--r--tests/test_arguments.py4
-rw-r--r--tests/test_utils.py16
2 files changed, 18 insertions, 2 deletions
diff --git a/tests/test_arguments.py b/tests/test_arguments.py
index f4d7afd..b4719d6 100644
--- a/tests/test_arguments.py
+++ b/tests/test_arguments.py
@@ -120,9 +120,9 @@ def test_file_args(runner):
assert result.exit_code == 0
-def test_path_args(runner):
+def test_path_allow_dash(runner):
@click.command()
- @click.argument("input", type=click.Path(dir_okay=False, allow_dash=True))
+ @click.argument("input", type=click.Path(allow_dash=True))
def foo(input):
click.echo(input)
diff --git a/tests/test_utils.py b/tests/test_utils.py
index 271177d..519b1a6 100644
--- a/tests/test_utils.py
+++ b/tests/test_utils.py
@@ -320,6 +320,22 @@ def test_open_file(runner):
assert result.output == "foobar\nmeep\n"
+def test_open_file_pathlib_dash(runner):
+ @click.command()
+ @click.argument(
+ "filename", type=click.Path(allow_dash=True, path_type=pathlib.Path)
+ )
+ def cli(filename):
+ click.echo(str(type(filename)))
+
+ with click.open_file(filename) as f:
+ click.echo(f.read())
+
+ result = runner.invoke(cli, ["-"], input="value")
+ assert result.exception is None
+ assert result.output == "pathlib.Path\nvalue\n"
+
+
def test_open_file_ignore_errors_stdin(runner):
@click.command()
@click.argument("filename")