Revision 4a3dd52d test/ganeti.compat_unittest.py

b/test/ganeti.compat_unittest.py
99 99
    self.assertEquals(compat.TryToRoman("19", convert=False), "19")
100 100

  
101 101

  
102
class TestUniqueFrozenset(unittest.TestCase):
103
  def testDuplicates(self):
104
    for values in [["", ""], ["Hello", "World", "Hello"]]:
105
      self.assertRaises(ValueError, compat.UniqueFrozenset, values)
106

  
107
  def testEmpty(self):
108
    self.assertEqual(compat.UniqueFrozenset([]), frozenset([]))
109

  
110
  def testUnique(self):
111
    self.assertEqual(compat.UniqueFrozenset([1, 2, 3]), frozenset([1, 2, 3]))
112

  
113
  def testGenerator(self):
114
    seq = ("Foo%s" % i for i in range(10))
115
    self.assertTrue(callable(seq.next))
116
    self.assertFalse(isinstance(seq, (list, tuple)))
117
    self.assertEqual(compat.UniqueFrozenset(seq),
118
                     frozenset(["Foo%s" % i for i in range(10)]))
119

  
120

  
102 121
if __name__ == "__main__":
103 122
  testutils.GanetiTestProgram()

Also available in: Unified diff