Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
def test_dict_merge():
master = {'one': 1}
dataset.dict_merge(master, {'two': 2})
assert master == {'one': 1, 'two': 2}
dataset.dict_merge(master, {'two': 2})
assert master == {'one': 1, 'two': 2}
with pytest.raises(dataset.DatasetBuildError):
dataset.dict_merge(master, {'two': 3})
def test_enforce_unique_attributes():
assert dataset.enforce_unique_attributes({'key': [1]}, ['key'])
assert not dataset.enforce_unique_attributes({'key': ['undef']}, ['key'])
with pytest.raises(dataset.DatasetBuildError):
assert dataset.enforce_unique_attributes({'key': [1, 2]}, ['key'])
def merge_grib_keys(grib_keys, detected_grib_keys, default_grib_keys):
merged_grib_keys = {k: v for k, v in grib_keys.items()}
dataset.dict_merge(merged_grib_keys, detected_grib_keys)
for key, value in default_grib_keys.items():
if key not in merged_grib_keys:
merged_grib_keys[key] = value
return merged_grib_keys
def expand_dims(data_var):
coords_names = []
for coord_name in dataset.ALL_HEADER_DIMS + ALL_TYPE_OF_LEVELS:
if coord_name in data_var.coords and data_var.coords[coord_name].size == 1:
data_var = data_var.expand_dims(coord_name)
if coord_name in data_var.dims:
coords_names.append(coord_name)
return coords_names, data_var