Coverage for tests/unit/dataset/test_configs.py: 100%

13 statements  

« prev     ^ index     » next       coverage.py v7.6.12, created at 2025-03-24 00:33 -0600

1from maze_dataset import MazeDatasetConfig 

2from maze_dataset.dataset.configs import MAZE_DATASET_CONFIGS 

3 

4 

5def test_get_configs(): 

6 keys: list[str] = list(MAZE_DATASET_CONFIGS.keys()) 

7 assert len(keys) > 0, "There must be at least one key in the configs" 

8 assert all([isinstance(key, str) for key in keys]), f"Keys must be strings: {keys}" 

9 assert all( 

10 [isinstance(MAZE_DATASET_CONFIGS[key], MazeDatasetConfig) for key in keys], 

11 ), f"Values must be dictionaries: {MAZE_DATASET_CONFIGS}" 

12 

13 assert len(MAZE_DATASET_CONFIGS.keys()) == len(MAZE_DATASET_CONFIGS) 

14 assert len(MAZE_DATASET_CONFIGS.items()) == len(MAZE_DATASET_CONFIGS) 

15 assert len(MAZE_DATASET_CONFIGS.values()) == len(MAZE_DATASET_CONFIGS) 

16 

17 assert all([isinstance(key, str) for key in MAZE_DATASET_CONFIGS]), ( 

18 f".keys() must be strings: {MAZE_DATASET_CONFIGS.keys()}" 

19 ) 

20 assert all( 

21 [ 

22 isinstance(value, MazeDatasetConfig) 

23 for value in MAZE_DATASET_CONFIGS.values() 

24 ], 

25 ), f".values() must be configs: {MAZE_DATASET_CONFIGS.values()}" 

26 assert all( 

27 [ 

28 isinstance(key, str) and isinstance(value, MazeDatasetConfig) 

29 for key, value in MAZE_DATASET_CONFIGS.items() 

30 ], 

31 ), f".items() must be (str, config) tuples {MAZE_DATASET_CONFIGS.items()}"