Skip to content

Commit 9c90315

Browse files
committed
fix(cadcclient): more robust switching of stdout
1 parent b5b915a commit 9c90315

2 files changed

Lines changed: 19 additions & 16 deletions

File tree

dtcli/utilities/cadcclient.py

Lines changed: 17 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -239,20 +239,23 @@ def size(directory: str, namespace: str = "cadc:CHIMEFRB", timeout: int = 60) ->
239239
query = query.replace("//", "/")
240240
logger.info(f"Running query: {query}")
241241
buffer = StringIO()
242-
sys.stdout = buffer
243-
_, _, queryClient = _connect()
244-
queryClient.query( # type: ignore
245-
query=query,
246-
output_file=None,
247-
response_format="csv",
248-
tmptable=None,
249-
lang="ADQL",
250-
timeout=timeout,
251-
data_only=True,
252-
no_column_names=True,
253-
)
254-
content = buffer.getvalue()
255-
sys.stdout = sys.__stdout__
242+
original_stdout = sys.stdout
243+
try:
244+
sys.stdout = buffer
245+
_, _, queryClient = _connect()
246+
queryClient.query( # type: ignore
247+
query=query,
248+
output_file=None,
249+
response_format="csv",
250+
tmptable=None,
251+
lang="ADQL",
252+
timeout=timeout,
253+
data_only=True,
254+
no_column_names=True,
255+
)
256+
content = buffer.getvalue()
257+
finally:
258+
sys.stdout = original_stdout
256259
return float(content.split("\n")[0])
257260

258261

tests/test_cli.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ def test_cli_help(runner: CliRunner) -> None:
3939
Args:
4040
runner (CliRunner) -> None: Click runner.
4141
"""
42-
result = runner.invoke(datatrail)
42+
result = runner.invoke(datatrail, "--help")
4343
expected_response = """Usage: cli [OPTIONS] COMMAND [ARGS]...
4444
4545
Datatrail Command Line Interface.
@@ -66,7 +66,7 @@ def test_cli_config_help(runner: CliRunner) -> None:
6666
Args:
6767
runner (CliRunner) -> None: Click runner.
6868
"""
69-
result = runner.invoke(datatrail, ["config"])
69+
result = runner.invoke(datatrail, ["config", "--help"])
7070
expected_response = """Usage: cli config [OPTIONS] COMMAND [ARGS]...
7171
7272
Datatrail CLI Configuration.

0 commit comments

Comments
 (0)