Skip to content

Commit

Permalink
add tests for Omniglot dataset (#3461)
Browse files Browse the repository at this point in the history
Co-authored-by: Vasilis Vryniotis <datumbox@users.noreply.github.com>
  • Loading branch information
pmeier and datumbox authored Mar 1, 2021
1 parent e9a9493 commit 1e20b9d
Showing 1 changed file with 30 additions and 0 deletions.
30 changes: 30 additions & 0 deletions test/test_datasets.py
Original file line number Diff line number Diff line change
Expand Up @@ -1092,5 +1092,35 @@ def _create_split_files(self, root, video_files, fold, train):
return num_train_videos if train else (num_videos - num_train_videos)


class OmniglotTestCase(datasets_utils.ImageDatasetTestCase):
DATASET_CLASS = datasets.Omniglot

CONFIGS = datasets_utils.combinations_grid(background=(True, False))

def inject_fake_data(self, tmpdir, config):
target_folder = (
pathlib.Path(tmpdir) / "omniglot-py" / f"images_{'background' if config['background'] else 'evaluation'}"
)
os.makedirs(target_folder)

num_images = 0
for name in ("Alphabet_of_the_Magi", "Tifinagh"):
num_images += self._create_alphabet_folder(target_folder, name)

return num_images

def _create_alphabet_folder(self, root, name):
num_images_total = 0
for idx in range(torch.randint(1, 4, size=()).item()):
num_images = torch.randint(1, 4, size=()).item()
num_images_total += num_images

datasets_utils.create_image_folder(
root / name, f"character{idx:02d}", lambda image_idx: f"{image_idx:02d}.png", num_images
)

return num_images_total


if __name__ == "__main__":
unittest.main()

0 comments on commit 1e20b9d

Please sign in to comment.