From ead63e70f1366db935c743d58ef393a026e3947b Mon Sep 17 00:00:00 2001 From: Matthew Roeschke Date: Mon, 7 Mar 2022 11:31:47 -0800 Subject: [PATCH 1/5] CI: Have arraymanager tests use PYTEST_TARGET --- ci/run_tests.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ci/run_tests.sh b/ci/run_tests.sh index aa6bb714af9dd..7dfad7aa43925 100755 --- a/ci/run_tests.sh +++ b/ci/run_tests.sh @@ -35,7 +35,7 @@ sh -c "$PYTEST_CMD" if [[ "$PANDAS_DATA_MANAGER" != "array" ]]; then # The ArrayManager tests should have already been run by PYTEST_CMD if PANDAS_DATA_MANAGER was already set to array - PYTEST_AM_CMD="PANDAS_DATA_MANAGER=array pytest -n $PYTEST_WORKERS --dist=loadfile $TEST_ARGS $COVERAGE pandas" + PYTEST_AM_CMD="PANDAS_DATA_MANAGER=array pytest -n $PYTEST_WORKERS --dist=loadfile $TEST_ARGS $COVERAGE $PYTEST_TARGET" if [[ "$PATTERN" ]]; then PYTEST_AM_CMD="$PYTEST_AM_CMD -m \"$PATTERN and arraymanager\"" From ff167836ca0754b477ea53e92b363aa3885a00fa Mon Sep 17 00:00:00 2001 From: Matthew Roeschke Date: Mon, 7 Mar 2022 13:34:43 -0800 Subject: [PATCH 2/5] Okay if no downstream tests are run for arraymanager --- ci/run_tests.sh | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/ci/run_tests.sh b/ci/run_tests.sh index 7dfad7aa43925..e254ca530c104 100755 --- a/ci/run_tests.sh +++ b/ci/run_tests.sh @@ -45,4 +45,11 @@ if [[ "$PANDAS_DATA_MANAGER" != "array" ]]; then echo $PYTEST_AM_CMD sh -c "$PYTEST_AM_CMD" + ret=$? + if [ "$ret" = 5 ]; then + # Okay if no tests are collected here e.g. downstream tests + echo "No tests collected. Exiting with 0 (instead of 5)." + exit 0 + fi + exit "$ret" fi From 5673f236846791c01a7454ee31c88210a0d3a150 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke Date: Mon, 7 Mar 2022 15:00:57 -0800 Subject: [PATCH 3/5] Confirm 5 is from pytest --- ci/run_tests.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/ci/run_tests.sh b/ci/run_tests.sh index e254ca530c104..a313b32cece2f 100755 --- a/ci/run_tests.sh +++ b/ci/run_tests.sh @@ -45,6 +45,7 @@ if [[ "$PANDAS_DATA_MANAGER" != "array" ]]; then echo $PYTEST_AM_CMD sh -c "$PYTEST_AM_CMD" + echo $? ret=$? if [ "$ret" = 5 ]; then # Okay if no tests are collected here e.g. downstream tests From 5dfe33fe000f9eb07ebe3c4bc7a81dbe551ba944 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke Date: Mon, 7 Mar 2022 15:33:12 -0800 Subject: [PATCH 4/5] only run if targeting pandas --- ci/run_tests.sh | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/ci/run_tests.sh b/ci/run_tests.sh index a313b32cece2f..71c0d4f0bb06a 100755 --- a/ci/run_tests.sh +++ b/ci/run_tests.sh @@ -33,9 +33,10 @@ fi echo $PYTEST_CMD sh -c "$PYTEST_CMD" -if [[ "$PANDAS_DATA_MANAGER" != "array" ]]; then +if [[ "$PANDAS_DATA_MANAGER" != "array" && $PYTEST_TARGET == "pandas" ]]; then # The ArrayManager tests should have already been run by PYTEST_CMD if PANDAS_DATA_MANAGER was already set to array - PYTEST_AM_CMD="PANDAS_DATA_MANAGER=array pytest -n $PYTEST_WORKERS --dist=loadfile $TEST_ARGS $COVERAGE $PYTEST_TARGET" + # If we're targeting specific files, e.g. test_downstream.py, don't run. + PYTEST_AM_CMD="PANDAS_DATA_MANAGER=array pytest -n $PYTEST_WORKERS --dist=loadfile $TEST_ARGS $COVERAGE pandas" if [[ "$PATTERN" ]]; then PYTEST_AM_CMD="$PYTEST_AM_CMD -m \"$PATTERN and arraymanager\"" @@ -45,12 +46,4 @@ if [[ "$PANDAS_DATA_MANAGER" != "array" ]]; then echo $PYTEST_AM_CMD sh -c "$PYTEST_AM_CMD" - echo $? - ret=$? - if [ "$ret" = 5 ]; then - # Okay if no tests are collected here e.g. downstream tests - echo "No tests collected. Exiting with 0 (instead of 5)." - exit 0 - fi - exit "$ret" fi From deeb4f90fe90e3c7cdbd72b15f23917b9f127c87 Mon Sep 17 00:00:00 2001 From: Matthew Roeschke Date: Mon, 7 Mar 2022 15:39:08 -0800 Subject: [PATCH 5/5] Forgot quotes --- ci/run_tests.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ci/run_tests.sh b/ci/run_tests.sh index 71c0d4f0bb06a..e6de5caf955fc 100755 --- a/ci/run_tests.sh +++ b/ci/run_tests.sh @@ -33,7 +33,7 @@ fi echo $PYTEST_CMD sh -c "$PYTEST_CMD" -if [[ "$PANDAS_DATA_MANAGER" != "array" && $PYTEST_TARGET == "pandas" ]]; then +if [[ "$PANDAS_DATA_MANAGER" != "array" && "$PYTEST_TARGET" == "pandas" ]]; then # The ArrayManager tests should have already been run by PYTEST_CMD if PANDAS_DATA_MANAGER was already set to array # If we're targeting specific files, e.g. test_downstream.py, don't run. PYTEST_AM_CMD="PANDAS_DATA_MANAGER=array pytest -n $PYTEST_WORKERS --dist=loadfile $TEST_ARGS $COVERAGE pandas"