diff --git a/tests/test_setups/test_setup_functions.py b/tests/test_setups/test_setup_functions.py
index 0df3a0b3b..b3727451e 100644
--- a/tests/test_setups/test_setup_functions.py
+++ b/tests/test_setups/test_setup_functions.py
@@ -7,6 +7,7 @@
import pandas as pd
import pytest
+import requests
import sklearn.base
import sklearn.naive_bayes
import sklearn.tree
@@ -147,12 +148,23 @@ def test_setup_list_filter_flow(self):
for setup_id in setups:
assert setups[setup_id].flow_id == flow_id
- @pytest.mark.test_server()
def test_list_setups_empty(self):
- setups = openml.setups.list_setups(setup=[0])
+ def _mock_get(_url, **_kwargs):
+ response = requests.Response()
+ response.status_code = 412
+ response.headers["Content-Encoding"] = "gzip"
+ response._content = (
+ ''
+ "674"
+ "No results"
+ ""
+ ).encode()
+ return response
+
+ with unittest.mock.patch.object(requests.Session, "get", side_effect=_mock_get):
+ setups = openml.setups.list_setups(setup=[0])
if len(setups) > 0:
raise ValueError("UnitTest Outdated, got somehow results")
-
assert isinstance(setups, dict)
@pytest.mark.production_server()
@@ -168,19 +180,34 @@ def test_list_setups_output_format(self):
assert isinstance(setups, pd.DataFrame)
assert len(setups) == 10
- @pytest.mark.test_server()
def test_setuplist_offset(self):
size = 10
- setups = openml.setups.list_setups(offset=0, size=size)
- assert len(setups) == size
- setups2 = openml.setups.list_setups(offset=size, size=size)
- assert len(setups2) == size
+
+ def _mock_get(url, **_kwargs):
+ start_id = 11 if "offset/10" in url else 1
+ items = "".join(
+ f"{i}"
+ f"1"
+ for i in range(start_id, start_id + size)
+ )
+ response = requests.Response()
+ response.status_code = 200
+ response.headers["Content-Encoding"] = "gzip"
+ response._content = (
+ f'{items}'
+ ).encode()
+ return response
+
+ with unittest.mock.patch.object(requests.Session, "get", side_effect=_mock_get):
+ setups = openml.setups.list_setups(offset=0, size=size)
+ assert len(setups) == size
+ setups2 = openml.setups.list_setups(offset=size, size=size)
+ assert len(setups2) == size
all = set(setups.keys()).union(setups2.keys())
assert len(all) == size * 2
- @pytest.mark.test_server()
def test_get_cached_setup(self):
openml.config.set_root_cache_directory(self.static_cache_dir)
openml.setups.functions._get_cached_setup(1)