def test_timeseries_profile_multi_ortho_time(self): ''' Ensures timeseries profile multi station ortho time detection works ''' with Dataset(resources.STATIC_FILES['timeseries-profile-multi-ortho-time']) as nc: for variable in util.get_geophysical_variables(nc): assert util.is_timeseries_profile_multi_ortho_time(nc, variable), "{} is timeseries-profile-multi-ortho-time".format(variable)
def check_dimensions(self, dataset): ''' Checks that the feature types of this dataset are consistent with a timeseries-profile-orthogonal dataset. :param netCDF4.Dataset dataset: An open netCDF dataset ''' results = [] required_ctx = TestCtx( BaseCheck.HIGH, 'All geophysical variables are timeseries-profile-ortho-time-incomplete-depth feature types' ) message = '{} must be a valid timeseries-profile-ortho-time-incomplete-depth feature type.' message += ' If it\'s multiple stations, it must have dimensions (station, time, z).' message += ' If it\'s a single station, it must have dimensions (time, z). x and y dimensions must be scalar or have' message += ' dimensions (station). time must be a coordinate variable with dimension (time) and z must' message += ' have dimensions (time, z) or (station, time, z) if it\'s a multi-station dataset.' for variable in util.get_geophysical_variables(dataset): is_valid = util.is_timeseries_profile_single_ortho_time( dataset, variable) is_valid = is_valid or util.is_timeseries_profile_multi_ortho_time( dataset, variable) required_ctx.assert_true(is_valid, message.format(variable)) results.append(required_ctx.to_result()) return results
def check_dimensions(self, dataset): ''' Checks that the feature types of this dataset are consistent with a timeseries-profile-orthogonal dataset. :param netCDF4.Dataset dataset: An open netCDF dataset ''' results = [] required_ctx = TestCtx(BaseCheck.HIGH, 'All geophysical variables are timeseries-profile-ortho-time-incomplete-depth feature types') message = '{} must be a valid timeseries-profile-ortho-time-incomplete-depth feature type.' message += ' If it\'s multiple stations, it must have dimensions (station, time, z).' message += ' If it\'s a single station, it must have dimensions (time, z). x and y dimensions must be scalar or have' message += ' dimensions (station). time must be a coordinate variable with dimension (time) and z must' message += ' have dimensions (time, z) or (station, time, z) if it\'s a multi-station dataset.' for variable in util.get_geophysical_variables(dataset): is_valid = util.is_timeseries_profile_single_ortho_time(dataset, variable) is_valid = is_valid or util.is_timeseries_profile_multi_ortho_time(dataset, variable) required_ctx.assert_true( is_valid, message.format(variable) ) results.append(required_ctx.to_result()) return results