diff options
| author | Pjotr Prins | 2026-04-05 11:43:35 +0200 |
|---|---|---|
| committer | Pjotr Prins | 2026-04-05 11:43:35 +0200 |
| commit | dbfeccada1550cfcfbedb9e92d3b13ccbf0e547f (patch) | |
| tree | 4ca11a0c443d5f8f429c248e5aa03b56b5b5805a /tests | |
| parent | 433e5670464565948ead89097190b303168e27f0 (diff) | |
| download | genecup-dbfeccada1550cfcfbedb9e92d3b13ccbf0e547f.tar.gz | |
Added test for esearch
Diffstat (limited to 'tests')
| -rw-r--r-- | tests/test_network_esearch.py | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/tests/test_network_esearch.py b/tests/test_network_esearch.py new file mode 100644 index 0000000..069f442 --- /dev/null +++ b/tests/test_network_esearch.py @@ -0,0 +1,24 @@ +"""Test PubMed esearch via edirect -- requires internet access. + +Run with: python -m unittest tests.test_network_esearch -v +""" + +import subprocess +import unittest + +class TestNetworkEsearch(unittest.TestCase): + def test_esearch_penk_stress(self): + """Search PubMed for Penk + stress, expect at least some PMIDs.""" + result = subprocess.run( + ["sh", "-c", + 'esearch -db pubmed -query "(stress) AND (Penk [tiab])" ' + '| efetch -format uid'], + capture_output=True, text=True, timeout=60) + self.assertEqual(result.returncode, 0, result.stderr) + pmids = result.stdout.strip().split("\n") + pmids = [p for p in pmids if p.strip()] + print(f" Found {len(pmids)} PMIDs for Penk+stress") + self.assertGreater(len(pmids), 0, "Expected at least 1 PMID") + +if __name__ == "__main__": + unittest.main() |
