33 lines
1 KiB
Python
33 lines
1 KiB
Python
import unittest
|
|
|
|
import koji
|
|
|
|
|
|
class EnumTestCase(unittest.TestCase):
|
|
|
|
def test_enum_create_alpha(self):
|
|
""" Test that we can create an Enum with alphabet names """
|
|
koji.Enum(('one', 'two', 'three'))
|
|
|
|
def test_enum_bracket_access(self):
|
|
""" Test bracket access. """
|
|
test = koji.Enum(('one', 'two', 'three'))
|
|
self.assertEquals(test['one'], 0)
|
|
self.assertEquals(test['two'], 1)
|
|
self.assertEquals(test['three'], 2)
|
|
|
|
with self.assertRaises(KeyError):
|
|
test['does not exist']
|
|
|
|
def test_enum_getter_access(self):
|
|
""" Test getter access. """
|
|
test = koji.Enum(('one', 'two', 'three'))
|
|
self.assertEquals(test.get('one'), 0)
|
|
self.assertEquals(test.get('two'), 1)
|
|
self.assertEquals(test.get('three'), 2)
|
|
self.assertEquals(test.get('does not exist'), None)
|
|
|
|
def test_enum_slice_access(self):
|
|
""" Test slice access. """
|
|
test = koji.Enum(('one', 'two', 'three'))
|
|
self.assertEquals(test[1:], ('two', 'three'))
|