tcga-downloader/tests/test_cli.py
2026-01-16 14:52:19 +08:00

39 lines
957 B
Python

from tcga_downloader.cli import build_parser
def test_cli_has_subcommands():
parser = build_parser()
subparsers = parser._subparsers
assert subparsers is not None
from unittest.mock import patch
from tcga_downloader.cli import main
def test_cli_query_writes_manifest(tmp_path, monkeypatch):
args = [
"tcga-downloader",
"query",
"--project",
"TCGA-BRCA",
"--data-type",
"Gene Expression",
"--out",
str(tmp_path / "m.tsv"),
]
monkeypatch.setattr("sys.argv", args)
with patch("tcga_downloader.cli.query_files") as q:
q.return_value = [
{
"file_id": "f1",
"file_name": "a.tsv",
"data_type": "Gene Expression",
"data_format": "TSV",
"file_size": 123,
"md5sum": "abc",
}
]
main()
assert (tmp_path / "m.tsv").exists()