Skip to content
Snippets Groups Projects
Commit 56dc55d8 authored by André Anjos's avatar André Anjos :speech_balloon:
Browse files

[datasets] Fix check() function and add test

parent 80c66e9b
No related branches found
No related tags found
1 merge request!28Filelist datasets
Pipeline #39336 passed
......@@ -94,15 +94,13 @@ class CSVDataset:
samples = samples[:limit]
for pos, sample in enumerate(samples):
try:
assert len(sample) == len(self.fieldnames), (
f"Entry {pos} in subset {name} has {len(sample)} "
f"entries instead of {len(self.fieldnames)} "
f"(expected). Fix file '{self._subsets[name]}'"
)
sample.data # triggers loading
sample.data # may trigger data loading
logger.info(f"{sample.key}: OK")
except Exception as e:
logger.error(f"{sample.key}: {e}")
logger.error(
f"Found error loading entry {pos} in subset {name} "
f"from file '{self._subsets[name]}': {e}"
)
errors += 1
return errors
......
......@@ -114,14 +114,15 @@ class JSONDataset:
samples = samples[:limit]
for pos, sample in enumerate(samples):
try:
assert len(sample) == len(self.fieldnames), (
f"Entry {pos} in subset {name} of protocol "
f"{proto} has {len(sample)} entries instead of "
f"{len(self.fieldnames)} (expected). Fix file "
f"'{self._protocols[proto]}'"
)
sample.data # check data can be loaded
sample.data # may trigger data loading
logger.info(f"{sample.key}: OK")
except Exception as e:
logger.error(
f"Found error loading entry {pos} in subset {name} "
f"of protocol {proto} from file "
f"'{self._protocols[proto]}': {e}"
)
errors += 1
except Exception as e:
logger.error(f"{sample.key}: {e}")
errors += 1
......
......@@ -46,6 +46,7 @@ def test_csv_loading():
)
dataset = CSVDataset(subsets, fieldnames, _raw_data_loader)
dataset.check()
data = dataset.subsets()
......@@ -81,6 +82,7 @@ def test_json_loading():
dataset = JSONDataset(protocols, fieldnames, _raw_data_loader)
data = dataset.subsets("default")
dataset.check()
nose.tools.eq_(len(data["train"]), 75)
for k in data["train"]:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment