示例#1
0
 def test_verbose_conflict_resolution(self):
     names = [['d', 'c', 'a'], ['d', 'c', 'b']]
     resolved = column_names(NameStrategy.CONCATENATE_CONFLICTS, names)
     self.assertEqual(['a_d', 'b_d'], resolved)
     resolved = column_names(NameStrategy.CONCATENATE_CONFLICTS_VERBOSE, names)
     self.assertEqual(['a_c_d', 'b_c_d'], resolved)
     resolved = column_names(NameStrategy.CONCATENATE_ALWAYS, names)
     self.assertEqual(['a_c_d', 'b_c_d'], resolved)
示例#2
0
 def test_overlapping_names(self):
     names = [['b'], ['b', 'a'], ['b', 'a', 'z']]
     resolved = column_names(NameStrategy.CONCATENATE_CONFLICTS, names)
     self.assertEqual(['b', 'a_b', 'z_a_b'], resolved)
     resolved = column_names(NameStrategy.CONCATENATE_CONFLICTS_VERBOSE, names)
     self.assertEqual(['b', 'a_b', 'z_a_b'], resolved)
     resolved = column_names(NameStrategy.CONCATENATE_ALWAYS, names)
     self.assertEqual(['b', 'a_b', 'z_a_b'], resolved)
示例#3
0
 def test_simple_resolution(self):
     names = [['a'], ['b']]
     resolved = column_names(NameStrategy.CONCATENATE_CONFLICTS, names)
     self.assertEqual(['a', 'b'], resolved)
     resolved = column_names(NameStrategy.CONCATENATE_CONFLICTS_VERBOSE, names)
     self.assertEqual(['a', 'b'], resolved)
     resolved = column_names(NameStrategy.CONCATENATE_ALWAYS, names)
     self.assertEqual(['a', 'b'], resolved)
示例#4
0
 def test_tuple_naming(self):
     names = [['c', 'a'], ['b']]
     resolved = column_names(NameStrategy.MULTI_INDEX, names)
     self.assertEqual([('a', 'c'), ('b', '')], resolved)
示例#5
0
 def test_exact_match(self):
     self.assertRaises(ValueError, lambda: column_names(NameStrategy.CONCATENATE_CONFLICTS, [['b'], ['b']]))