diff --git a/ci/test_python.sh b/ci/test_python.sh index d6e92e8d1a5..6988b105029 100755 --- a/ci/test_python.sh +++ b/ci/test_python.sh @@ -111,6 +111,11 @@ popd rapids-logger "pytest networkx using nx-cugraph backend" pushd python/nx-cugraph ./run_nx_tests.sh +# Individually run tests that are skipped above b/c they may run out of memory +PYTEST_NO_SKIP=True ./run_nx_tests.sh -k --cov-append "TestDAG and test_antichains" +PYTEST_NO_SKIP=True ./run_nx_tests.sh -k --cov-append "TestMultiDiGraph_DAGLCA and test_all_pairs_lca_pairs_without_lca" +PYTEST_NO_SKIP=True ./run_nx_tests.sh -k --cov-append "TestDAGLCA and test_all_pairs_lca_pairs_without_lca" +PYTEST_NO_SKIP=True ./run_nx_tests.sh -k --cov-append "TestEfficiency and test_using_ego_graph" # run_nx_tests.sh outputs coverage data, so check that total coverage is >0.0% # in case nx-cugraph failed to load but fallback mode allowed the run to pass. _coverage=$(coverage report|grep "^TOTAL") diff --git a/python/nx-cugraph/nx_cugraph/interface.py b/python/nx-cugraph/nx_cugraph/interface.py index 73eb70807ad..3f6449f571a 100644 --- a/python/nx-cugraph/nx_cugraph/interface.py +++ b/python/nx-cugraph/nx_cugraph/interface.py @@ -12,6 +12,7 @@ # limitations under the License. from __future__ import annotations +import os import sys import networkx as nx @@ -246,6 +247,15 @@ def key(testpath): key("test_tree_isomorphism.py:test_positive"): too_slow, key("test_tree_isomorphism.py:test_negative"): too_slow, key("test_efficiency.py:TestEfficiency.test_using_ego_graph"): maybe_oom, + key("test_dag.py:TestDAG.test_antichains"): maybe_oom, + key( + "test_lowest_common_ancestors.py:" + "TestDAGLCA.test_all_pairs_lca_pairs_without_lca" + ): maybe_oom, + key( + "test_lowest_common_ancestors.py:" + "TestMultiDiGraph_DAGLCA.test_all_pairs_lca_pairs_without_lca" + ): maybe_oom, # These repeatedly call `bfs_layers`, which converts the graph every call key( "test_vf2pp.py:TestGraphISOVF2pp.test_custom_graph2_different_labels" @@ -280,6 +290,8 @@ def key(testpath): "test_matching_order_all_branches" ): too_slow, } + if os.environ.get("PYTEST_NO_SKIP", False): + skip.clear() for item in items: kset = set(item.keywords)