def test_no_hyphen(self): # CF explicitly prohibits hyphen, even though it is fine in NetCDF. self.assertEqual(Saver.cf_valid_var_name('valid-netcdf'), 'valid_netcdf')
def test_leading_number(self): self.assertEqual(Saver.cf_valid_var_name('2invalid'), 'var_2invalid')
def test_leading_invalid(self): self.assertEqual(Saver.cf_valid_var_name('?invalid'), 'var__invalid')
def test_special_chars(self): self.assertEqual(Saver.cf_valid_var_name('inv?alid'), 'inv_alid')
def test_leading_underscore(self): self.assertEqual(Saver.cf_valid_var_name('_invalid'), 'var__invalid')
def test_leading_invalid(self): self.assertEqual(Saver.cf_valid_var_name("?invalid"), "var__invalid")
def test_no_replacement(self): self.assertEqual(Saver.cf_valid_var_name('valid_Nam3'), 'valid_Nam3')
def test_leading_number(self): self.assertEqual(Saver.cf_valid_var_name("2invalid"), "var_2invalid")