def test_valid(self):
     multiplier, limit = 10, 3
     out = list(fibonacci(multiplier, limit)())
     self.assertEqual([10, 10, 20], out)
 def test_negative_limit(self):
     multiplier, limit = 1, -1
     with self.assertRaises(ValueError):
         list(fibonacci(multiplier, limit)())
 def test_zero_limit(self):
     multiplier, limit = 1, 0
     out = list(fibonacci(multiplier, limit)())
     self.assertEqual([], out)
 def test_zero_multiplier(self):
     multiplier, limit = 0, 1
     out = list(fibonacci(multiplier, limit)())
     self.assertEqual([0], out)