From 9a41e7339de65b86823c9da8633e4232f2ec82d8 Mon Sep 17 00:00:00 2001 From: pyalex Date: Wed, 10 Nov 2021 07:29:51 +0800 Subject: [PATCH 1/3] Correct cleanup after usage e2e tests Signed-off-by: pyalex --- .../tests/integration/e2e/test_usage_e2e.py | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/sdk/python/tests/integration/e2e/test_usage_e2e.py b/sdk/python/tests/integration/e2e/test_usage_e2e.py index c05ce8daf4e..e5ae2a0a89b 100644 --- a/sdk/python/tests/integration/e2e/test_usage_e2e.py +++ b/sdk/python/tests/integration/e2e/test_usage_e2e.py @@ -31,10 +31,15 @@ def dummy_exporter(): yield event_log -@pytest.mark.integration -def test_usage_on(dummy_exporter): - usage._is_enabled = True +@pytest.fixture(scope="function") +def enabling_toggle(): + with patch("feast.usage._is_enabled") as p: + p.__bool__.return_value = True + yield p + +@pytest.mark.integration +def test_usage_on(dummy_exporter, enabling_toggle): _reload_feast() from feast.feature_store import FeatureStore @@ -65,8 +70,8 @@ def test_usage_on(dummy_exporter): @pytest.mark.integration -def test_usage_off(dummy_exporter): - usage._is_enabled = False +def test_usage_off(dummy_exporter, enabling_toggle): + enabling_toggle.__bool__.return_value = False _reload_feast() from feast.feature_store import FeatureStore @@ -94,9 +99,7 @@ def test_usage_off(dummy_exporter): @pytest.mark.integration -def test_exception_usage_on(dummy_exporter): - usage._is_enabled = True - +def test_exception_usage_on(dummy_exporter, enabling_toggle): _reload_feast() from feast.feature_store import FeatureStore From aa6f27f16bac2d0e3bcecfe011c595d76ff4c338 Mon Sep 17 00:00:00 2001 From: pyalex Date: Wed, 10 Nov 2021 07:38:05 +0800 Subject: [PATCH 2/3] do not override is_enabled directly Signed-off-by: pyalex --- sdk/python/tests/integration/e2e/test_usage_e2e.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sdk/python/tests/integration/e2e/test_usage_e2e.py b/sdk/python/tests/integration/e2e/test_usage_e2e.py index e5ae2a0a89b..76f2b22625e 100644 --- a/sdk/python/tests/integration/e2e/test_usage_e2e.py +++ b/sdk/python/tests/integration/e2e/test_usage_e2e.py @@ -19,7 +19,7 @@ import pytest -from feast import Entity, RepoConfig, ValueType, usage +from feast import Entity, RepoConfig, ValueType from feast.infra.online_stores.sqlite import SqliteOnlineStoreConfig @@ -114,8 +114,8 @@ def test_exception_usage_on(dummy_exporter, enabling_toggle): @pytest.mark.integration -def test_exception_usage_off(dummy_exporter): - usage._is_enabled = False +def test_exception_usage_off(dummy_exporter, enabling_toggle): + enabling_toggle.__bool__.return_value = False _reload_feast() from feast.feature_store import FeatureStore From 7dabb85dd46aa05434c40e076aa854fad9cce3da Mon Sep 17 00:00:00 2001 From: pyalex Date: Wed, 10 Nov 2021 12:41:11 +0800 Subject: [PATCH 3/3] reload modules after test Signed-off-by: pyalex --- sdk/python/tests/integration/e2e/test_usage_e2e.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/sdk/python/tests/integration/e2e/test_usage_e2e.py b/sdk/python/tests/integration/e2e/test_usage_e2e.py index 76f2b22625e..f55fbce55cf 100644 --- a/sdk/python/tests/integration/e2e/test_usage_e2e.py +++ b/sdk/python/tests/integration/e2e/test_usage_e2e.py @@ -37,6 +37,9 @@ def enabling_toggle(): p.__bool__.return_value = True yield p + # return to initial state + _reload_feast() + @pytest.mark.integration def test_usage_on(dummy_exporter, enabling_toggle):