def test_GridArray_add_remove_backend(valid_grid_backend: GridBackend): assert valid_grid_backend.name not in GridArray.get_backends() GridArray.add_backend(valid_grid_backend) assert valid_grid_backend.name in GridArray.get_backends() GridArray.remove_backend(valid_grid_backend) assert valid_grid_backend.name not in GridArray.get_backends()
def _valid_grid_backend(): class DummyBackend: name = "dummy_backend" location = Path() def __init__(self, location: Union[str, Path]) -> None: raise NotImplementedError @staticmethod def is_valid_backend(location: Union[str, Path]) -> bool: ... dataset_name = str() dataset_label = str() dataset_unit = str() axes_names = [] axes_labels = [] axes_units = [] axes_min = np.empty(0) axes_max = np.empty(0) iteration = int() time_step = float() time_unit = str() shape = tuple() dtype = np.dtype("i") ndim = int() assert isinstance(DummyBackend, GridBackend) yield DummyBackend if DummyBackend.name in GridArray.get_backends(): GridArray.remove_backend(DummyBackend)