39 lines
957 B
Python
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()
|