Beispiel #1
0
class TestBag(unittest.TestCase):

    def setUp(self):
        self.bag = Bag()

    def test_is_empty(self):
        self.assertTrue(self.bag.is_empty())
        self.bag.add(3)
        self.assertTrue(not self.bag.is_empty())

    def test_size(self):
        self.assertEqual(self.bag.size(), 0)
        self.bag.add(3)
        self.assertEqual(self.bag.size(), 1)

    def test_add(self):
        self.bag.add(3)
        self.assertEqual(self.bag._a, [3])  # This code smells.

    def test_each(self):
        self.bag.add(3)
        self.bag.add('foo')
        self.bag.add([])
        lst = []
        self.bag.each(lambda x: lst.append(x))
        self.assertEqual([3, 'foo', []], lst)