def test_change():
    assert change(0) == (0, 0, 0, 0)
    assert change(97) == (3, 2, 0, 2)
    assert change(8) == (0, 0, 1, 3)
    assert change(250) == (10, 0, 0, 0)
    assert change(144) == (5, 1, 1, 4)
    assert change(97) == (3, 2, 0, 2)
    assert change(100000000000) == (4000000000, 0, 0, 0)
    with pytest.raises(ValueError) as excinfo:
        change(-50)
    assert 'amount cannot be negative' == str(excinfo.value)
示例#2
0
文件: test.py 项目: rachelriv/cmsi386
    def test_change(self):
        """Test valid US change for a number of cents.

        Expected format: [quarter, dime, nickle, penny]
        """
        self.assertEqual(change(97), (3, 2, 0, 2))
        self.assertEqual(change(33.25), (1.0, 0.0, 1.0, 3.25))
        self.assertEqual(change(8), (0, 0, 1, 3))
        self.assertEqual(change(103), (4, 0, 0, 3))
        self.assertEqual(change(0), (0, 0, 0, 0))
        self.assertEqual(change(100000006), (4000000, 0, 1, 1))
        self.assertRaises(ValueError, change, -1)
        self.assertRaises(TypeError, change, "foo")
示例#3
0
 def test_change_produces_correct_answers_for_small_values(self):
     self.assertEqual(change(97), (3, 2, 0, 2))
     self.assertEqual(change(8), (0, 0, 1, 3))
     self.assertEqual(change(250), (10, 0, 0, 0))
     self.assertEqual(change(0), (0, 0, 0, 0))
     self.assertEqual(change(41), (1, 1, 1, 1))
示例#4
0
 def test_change_handles_large_inputs(self):
     self.assertEqual(change(2500000000001), (100000000000, 0, 0, 1))
示例#5
0
 def test_change_produces_correct_answers_for_small_values(self):
     self.assertEqual(change(97), (3, 2, 0, 2))
     self.assertEqual(change(8), (0, 0, 1, 3))
     self.assertEqual(change(250), (10, 0, 0, 0))
     self.assertEqual(change(0), (0, 0, 0, 0))
     self.assertEqual(change(41), (1, 1, 1, 1))
示例#6
0
 def test_change_handles_large_inputs(self):
     self.assertEqual(change(2500000000001), (100000000000, 0, 0, 1))