Skip to content

Fixing except block to better handle missing users#106

Merged
bergsalex merged 4 commits into
mainfrom
hotfix/permissions-issue-when-user-has-never-logged-in-to-legacy-site
Apr 24, 2025
Merged

Fixing except block to better handle missing users#106
bergsalex merged 4 commits into
mainfrom
hotfix/permissions-issue-when-user-has-never-logged-in-to-legacy-site

Conversation

@bergsalex
Copy link
Copy Markdown
Collaborator

We were catching IndexError but not AttributeError, and both can signify a missing user.

@github-actions
Copy link
Copy Markdown

Test Coverage Report

============================= test session starts ==============================
platform linux -- Python 3.11.12, pytest-8.3.5, pluggy-1.5.0
rootdir: /home/runner/work/geneweaver-api/geneweaver-api
configfile: pyproject.toml
plugins: asyncio-0.21.2, cov-4.1.0, anyio-4.9.0
asyncio: mode=Mode.STRICT
collected 360 items

tests/controllers/test_api_standards.py ................................ [  8%]
........................................................................ [ 28%]
.sssssssssssssssssssss                                                   [ 35%]
tests/controllers/test_genes.py .............                            [ 38%]
tests/controllers/test_genesets.py ..................................... [ 48%]
......................                                                   [ 55%]
tests/controllers/test_monitor.py .                                      [ 55%]
tests/controllers/test_publications.py ........                          [ 57%]
tests/controllers/test_return_schemas.py .                               [ 57%]
tests/controllers/test_search.py ..                                      [ 58%]
tests/controllers/test_species.py ....                                   [ 59%]
tests/core/test_security.py ..........                                   [ 62%]
tests/services/io/test_read_file_contents.py ...............             [ 66%]
tests/services/test_gene.py ..............                               [ 70%]
tests/services/test_genset.py .......................................... [ 81%]
.............................................                            [ 94%]
tests/services/test_monitors.py ..                                       [ 95%]
tests/services/test_ontology.py ....                                     [ 96%]
tests/services/test_publications.py .......                              [ 98%]
tests/services/test_species.py .......                                   [100%]

=============================== warnings summary ===============================
tests/data/__init__.py:10
  /home/runner/work/geneweaver-api/geneweaver-api/tests/data/__init__.py:10: DeprecationWarning: read_text is deprecated. Use files() instead. Refer to https://importlib-resources.readthedocs.io/en/latest/using.html#migrating-from-legacy for migration advice.
    geneset_response_json = importlib.resources.read_text(

../../../../../opt/hostedtoolcache/Python/3.11.12/x64/lib/python3.11/importlib/resources/_legacy.py:80: 11 warnings
  /opt/hostedtoolcache/Python/3.11.12/x64/lib/python3.11/importlib/resources/_legacy.py:80: DeprecationWarning: open_text is deprecated. Use files() instead. Refer to https://importlib-resources.readthedocs.io/en/latest/using.html#migrating-from-legacy for migration advice.
    with open_text(package, resource, encoding, errors) as fp:

tests/data/__init__.py:13
  /home/runner/work/geneweaver-api/geneweaver-api/tests/data/__init__.py:13: DeprecationWarning: read_text is deprecated. Use files() instead. Refer to https://importlib-resources.readthedocs.io/en/latest/using.html#migrating-from-legacy for migration advice.
    geneset_w_gene_id_type_json = importlib.resources.read_text(

tests/data/__init__.py:17
  /home/runner/work/geneweaver-api/geneweaver-api/tests/data/__init__.py:17: DeprecationWarning: read_text is deprecated. Use files() instead. Refer to https://importlib-resources.readthedocs.io/en/latest/using.html#migrating-from-legacy for migration advice.
    geneset_list_response_json = importlib.resources.read_text("tests.data", "geneset.json")

tests/data/__init__.py:19
  /home/runner/work/geneweaver-api/geneweaver-api/tests/data/__init__.py:19: DeprecationWarning: read_text is deprecated. Use files() instead. Refer to https://importlib-resources.readthedocs.io/en/latest/using.html#migrating-from-legacy for migration advice.
    gene_homologus_ids_json = importlib.resources.read_text(

tests/data/__init__.py:23
  /home/runner/work/geneweaver-api/geneweaver-api/tests/data/__init__.py:23: DeprecationWarning: read_text is deprecated. Use files() instead. Refer to https://importlib-resources.readthedocs.io/en/latest/using.html#migrating-from-legacy for migration advice.
    gene_id_mapping_json = importlib.resources.read_text("tests.data", "gene_maping.json")

tests/data/__init__.py:25
  /home/runner/work/geneweaver-api/geneweaver-api/tests/data/__init__.py:25: DeprecationWarning: read_text is deprecated. Use files() instead. Refer to https://importlib-resources.readthedocs.io/en/latest/using.html#migrating-from-legacy for migration advice.
    publications_json = importlib.resources.read_text("tests.data", "publications.json")

tests/data/__init__.py:27
  /home/runner/work/geneweaver-api/geneweaver-api/tests/data/__init__.py:27: DeprecationWarning: read_text is deprecated. Use files() instead. Refer to https://importlib-resources.readthedocs.io/en/latest/using.html#migrating-from-legacy for migration advice.
    jwt_test_keys_json = importlib.resources.read_text(

tests/data/__init__.py:31
  /home/runner/work/geneweaver-api/geneweaver-api/tests/data/__init__.py:31: DeprecationWarning: read_text is deprecated. Use files() instead. Refer to https://importlib-resources.readthedocs.io/en/latest/using.html#migrating-from-legacy for migration advice.
    species_json = importlib.resources.read_text("tests.data", "species.json")

tests/data/__init__.py:33
  /home/runner/work/geneweaver-api/geneweaver-api/tests/data/__init__.py:33: DeprecationWarning: read_text is deprecated. Use files() instead. Refer to https://importlib-resources.readthedocs.io/en/latest/using.html#migrating-from-legacy for migration advice.
    genes_json = importlib.resources.read_text("tests.data", "genes.json")

tests/data/__init__.py:35
  /home/runner/work/geneweaver-api/geneweaver-api/tests/data/__init__.py:35: DeprecationWarning: read_text is deprecated. Use files() instead. Refer to https://importlib-resources.readthedocs.io/en/latest/using.html#migrating-from-legacy for migration advice.
    monitors_json = importlib.resources.read_text("tests.data", "monitors.json")

tests/data/__init__.py:37
  /home/runner/work/geneweaver-api/geneweaver-api/tests/data/__init__.py:37: DeprecationWarning: read_text is deprecated. Use files() instead. Refer to https://importlib-resources.readthedocs.io/en/latest/using.html#migrating-from-legacy for migration advice.
    ontology_json = importlib.resources.read_text("tests.data", "ontology.json")

tests/controllers/test_genes.py: 10 warnings
tests/controllers/test_genesets.py: 2 warnings
  /opt/hostedtoolcache/Python/3.11.12/x64/lib/python3.11/site-packages/httpx/_models.py:408: DeprecationWarning: Use 'content=<...>' to upload raw bytes/text content.
    headers, stream = encode_request(

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html

---------- coverage: platform linux, python 3.11.12-final-0 ----------
Name                                            Stmts   Miss  Cover
-------------------------------------------------------------------
src/geneweaver/api/__init__.py                      5      2    60%
src/geneweaver/api/controller/__init__.py           0      0   100%
src/geneweaver/api/controller/api.py               14      0   100%
src/geneweaver/api/controller/genes.py             39      0   100%
src/geneweaver/api/controller/genesets.py          98      4    96%
src/geneweaver/api/controller/message.py           27      0   100%
src/geneweaver/api/controller/monitors.py          16      0   100%
src/geneweaver/api/controller/publications.py      35      0   100%
src/geneweaver/api/controller/search.py            21      0   100%
src/geneweaver/api/controller/species.py           17      0   100%
src/geneweaver/api/controller/utilities.py          9      0   100%
src/geneweaver/api/core/__init__.py                 0      0   100%
src/geneweaver/api/core/config.py                   2      0   100%
src/geneweaver/api/core/config_class.py            31      0   100%
src/geneweaver/api/core/exceptions.py              13      1    92%
src/geneweaver/api/core/security.py               121     20    83%
src/geneweaver/api/dependencies.py                 61     30    51%
src/geneweaver/api/main.py                          1      0   100%
src/geneweaver/api/schemas/__init__.py              0      0   100%
src/geneweaver/api/schemas/apimodels.py            61      6    90%
src/geneweaver/api/schemas/auth.py                 18      0   100%
src/geneweaver/api/schemas/messages.py             18     18     0%
src/geneweaver/api/schemas/score.py                13     13     0%
src/geneweaver/api/schemas/search.py               19      0   100%
src/geneweaver/api/services/__init__.py             0      0   100%
src/geneweaver/api/services/genes.py               45      0   100%
src/geneweaver/api/services/geneset.py            184      5    97%
src/geneweaver/api/services/io.py                   4      0   100%
src/geneweaver/api/services/monitors.py            10      0   100%
src/geneweaver/api/services/parse/__init__.py       0      0   100%
src/geneweaver/api/services/publications.py        47      0   100%
src/geneweaver/api/services/pubmeds.py              0      0   100%
src/geneweaver/api/services/species.py             18      3    83%
-------------------------------------------------------------------
TOTAL                                             947    102    89%
Coverage HTML written to dir htmlcov

Required test coverage of 60% reached. Total coverage: 89.23%
================= 339 passed, 21 skipped, 34 warnings in 5.13s =================

@bergsalex bergsalex temporarily deployed to jax-cluster-dev-10--dev April 23, 2025 18:26 — with GitHub Actions Inactive
@bergsalex bergsalex marked this pull request as ready for review April 23, 2025 18:28
@bergsalex bergsalex merged commit 308a28c into main Apr 24, 2025
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants