Skip to content

Commit 8fbf39e

Browse files
add: test for dataset comparison and ignore fields (#1370)
1 parent 82d8ffa commit 8fbf39e

File tree

2 files changed

+19
-2
lines changed

2 files changed

+19
-2
lines changed

openml/datasets/dataset.py

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -329,13 +329,26 @@ def __eq__(self, other: Any) -> bool:
329329
"version",
330330
"upload_date",
331331
"url",
332+
"_parquet_url",
332333
"dataset",
333334
"data_file",
335+
"format",
336+
"cache_format",
337+
}
338+
339+
cache_fields = {
340+
"_dataset",
341+
"data_file",
342+
"data_pickle_file",
343+
"data_feather_file",
344+
"feather_attribute_file",
345+
"parquet_file",
334346
}
335347

336348
# check that common keys and values are identical
337-
self_keys = set(self.__dict__.keys()) - server_fields
338-
other_keys = set(other.__dict__.keys()) - server_fields
349+
ignore_fields = server_fields | cache_fields
350+
self_keys = set(self.__dict__.keys()) - ignore_fields
351+
other_keys = set(other.__dict__.keys()) - ignore_fields
339352
return self_keys == other_keys and all(
340353
self.__dict__[key] == other.__dict__[key] for key in self_keys
341354
)

tests/test_datasets/test_dataset.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -309,6 +309,10 @@ def test_lazy_loading_metadata(self):
309309
assert _dataset.features == _compare_dataset.features
310310
assert _dataset.qualities == _compare_dataset.qualities
311311

312+
def test_equality_comparison(self):
313+
self.assertEqual(self.iris, self.iris)
314+
self.assertNotEqual(self.iris, self.titanic)
315+
self.assertNotEqual(self.titanic, 'Wrong_object')
312316

313317
class OpenMLDatasetTestOnTestServer(TestBase):
314318
def setUp(self):

0 commit comments

Comments
 (0)