예제 #1
0
 def test_decode_cf_with_conflicting_fill_missing_value(self):
     var = Variable(['t'], np.arange(10),
                    {'units': 'foobar',
                     'missing_value': 0,
                     '_FillValue': 1})
     self.assertRaisesRegexp(ValueError, "_FillValue and missing_value",
                             lambda: conventions.decode_cf_variable(var))
예제 #2
0
 def test_decode_cf_with_multiple_missing_values(self):
     original = Variable(['t'], [0, 1, 2],
                         {'missing_value': np.array([0, 1])})
     expected = Variable(['t'], [np.nan, np.nan, 2], {})
     with warnings.catch_warnings(record=True) as w:
         actual = conventions.decode_cf_variable(original)
         self.assertDatasetIdentical(expected, actual)
         self.assertIn('variable has multiple fill', str(w[0].message))
예제 #3
0
 def test_decode_cf_with_multiple_missing_values(self):
     original = Variable(['t'], [0, 1, 2],
                         {'missing_value': np.array([0, 1])})
     expected = Variable(['t'], [np.nan, np.nan, 2], {})
     with warnings.catch_warnings(record=True) as w:
         actual = conventions.decode_cf_variable(original)
         self.assertDatasetIdentical(expected, actual)
         self.assertIn('variable has multiple fill', str(w[0].message))
예제 #4
0
 def test_decode_cf_with_conflicting_fill_missing_value(self):
     var = Variable(['t'], np.arange(10), {
         'units': 'foobar',
         'missing_value': 0,
         '_FillValue': 1
     })
     self.assertRaisesRegexp(ValueError, "_FillValue and missing_value",
                             lambda: conventions.decode_cf_variable(var))