From ee8bd215ba7ec44131b78ea19b03988ab1130c36 Mon Sep 17 00:00:00 2001
From: Anuj Tripathi <149668092+anuj452005@users.noreply.github.com>
Date: Fri, 20 Feb 2026 13:30:26 +0530
Subject: [PATCH] Mock test_class_labels in test_learning_curve_task.py
---
.../tasks/data_description_20.xml | 15 ++++++++++
.../mock_responses/tasks/data_features_20.xml | 22 +++++++++++++++
tests/files/mock_responses/tasks/task_801.xml | 22 +++++++++++++++
tests/test_tasks/test_learning_curve_task.py | 28 ++++++++++++++++---
4 files changed, 83 insertions(+), 4 deletions(-)
create mode 100644 tests/files/mock_responses/tasks/data_description_20.xml
create mode 100644 tests/files/mock_responses/tasks/data_features_20.xml
create mode 100644 tests/files/mock_responses/tasks/task_801.xml
diff --git a/tests/files/mock_responses/tasks/data_description_20.xml b/tests/files/mock_responses/tasks/data_description_20.xml
new file mode 100644
index 000000000..c502b0d3e
--- /dev/null
+++ b/tests/files/mock_responses/tasks/data_description_20.xml
@@ -0,0 +1,15 @@
+
+ 20
+ diabetes
+ 1
+ Pima Indians Diabetes dataset.
+ ARFF
+ 2014-04-06T23:19:24
+ Public
+ https://test.openml.org/data/download/20/dataset_20.arff
+ 20
+ class
+ public
+ active
+ 00000000000000000000000000000000
+
diff --git a/tests/files/mock_responses/tasks/data_features_20.xml b/tests/files/mock_responses/tasks/data_features_20.xml
new file mode 100644
index 000000000..bd6a18218
--- /dev/null
+++ b/tests/files/mock_responses/tasks/data_features_20.xml
@@ -0,0 +1,22 @@
+
+
+ 0
+ preg
+ numeric
+ false
+ false
+ false
+ 0
+
+
+ 1
+ class
+ nominal
+ tested_negative
+ tested_positive
+ true
+ false
+ false
+ 0
+
+
diff --git a/tests/files/mock_responses/tasks/task_801.xml b/tests/files/mock_responses/tasks/task_801.xml
new file mode 100644
index 000000000..909efd225
--- /dev/null
+++ b/tests/files/mock_responses/tasks/task_801.xml
@@ -0,0 +1,22 @@
+
+ 801
+ 3
+ Learning Curve
+
+
+ 20
+ class
+
+
+
+
+ 13
+ crossvalidation
+ https://test.openml.org/api_splits/get/801/Task_801_splits.arff
+ 1
+ 10
+
+ true
+
+
+
diff --git a/tests/test_tasks/test_learning_curve_task.py b/tests/test_tasks/test_learning_curve_task.py
index 465d9c0be..eadb2579a 100644
--- a/tests/test_tasks/test_learning_curve_task.py
+++ b/tests/test_tasks/test_learning_curve_task.py
@@ -1,10 +1,15 @@
# License: BSD 3-Clause
from __future__ import annotations
+import requests
+from unittest import mock
+
import pandas as pd
import pytest
+import openml
from openml.tasks import TaskType, get_task
+from openml.testing import create_request_response
from .test_supervised_task import OpenMLSupervisedTaskTest
@@ -34,7 +39,22 @@ def test_download_task(self):
assert task.task_type_id == TaskType.LEARNING_CURVE
assert task.dataset_id == 20
- @pytest.mark.test_server()
- def test_class_labels(self):
- task = get_task(self.task_id)
- assert task.class_labels == ["tested_negative", "tested_positive"]
+
+@mock.patch.object(requests.Session, "get")
+def test_class_labels(mock_get, test_files_directory, test_api_key):
+ task_response = create_request_response(
+ status_code=200,
+ content_filepath=test_files_directory / "mock_responses" / "tasks" / "task_801.xml",
+ )
+ description_response = create_request_response(
+ status_code=200,
+ content_filepath=test_files_directory / "mock_responses" / "tasks" / "data_description_20.xml",
+ )
+ features_response = create_request_response(
+ status_code=200,
+ content_filepath=test_files_directory / "mock_responses" / "tasks" / "data_features_20.xml",
+ )
+ mock_get.side_effect = [task_response, description_response, features_response]
+
+ task = openml.tasks.get_task(801)
+ assert task.class_labels == ["tested_negative", "tested_positive"]