CI: three Oracle-only tests in test_cypher_compiled.py never run, as -k oracle doesn't select them

Open Beginner friendly
#178 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
1/5
Estimated time
Under an hour
Newbie friendliness
88/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Active
Tech stack
python
Domain
ci-cd, testing

Research direction

Read the Oracle job configuration in .github/workflows and the three listed tests in tests/integration/test_cypher_compiled.py, along with their sync copies. Run the provided ORACLE_TESTS=true uv run pytest --collect-only -q -k oracle tests/integration/test_cypher_compiled.py command to confirm they are omitted. Done when all three Oracle-only tests match the job’s selection and are collected.

Written by the indexing model from the issue text.

Description

CI runs the Oracle tests with pytest -k oracle (.github/workflows, the Oracle job), which picks the tests whose name or parameters say oracle. Three tests in tests/integration/test_cypher_compiled.py (and their sync copies) are skipped unless Oracle is configured, take no oracle parameter, and don't say oracle in their names, so no CI job runs them: the main job skips them, and the Oracle job deselects them.

  • test_nodes_of_two_labels_a_transaction_has_made_and_not_yet_committed_are_found_by_both (line ~320)
  • test_a_text_past_32_kb_set_on_two_nodes_beside_a_whole_float_or_not_leaves_the_session_open (line ~343, the #131 regression test)
  • test_a_text_past_32_kb_in_a_map_parameter_read_and_set_on_two_nodes_leaves_the_session_open (line ~367, the #145 regression test)

Checked with ORACLE_TESTS=true uv run pytest --collect-only -q -k oracle tests/integration/test_cypher_compiled.py: none of the three is collected.

Fix: name each ..._on_oracle (as the #144 test is named), or mark the Oracle-only tests so -k oracle matches them.

Dominant language
Python
Stars
1
Forks
0
Avg merge
1h 32m
Merged PRs (30d)
149

Getting set up

This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from liberation-data/drivine-python

All issues in liberation-data/drivine-python

Similar issues

More Python issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.