def testMultipleOfZero(self): """Attempts to find a multiple of zero.""" try: util.roundToMultiple(12, 0) except ZeroDivisionError: pass else: self.fail()
def testInteger(self): """Tests the function with integer arguments.""" for n, m, expected in self.TESTS: results = ( (util.roundToMultiple( n, m), expected), (util.roundToMultiple(-n, m), -expected), (util.roundToMultiple( n, -m), expected), (util.roundToMultiple(-n, -m), -expected)) for result, expected in results: self.assertEqual(result, expected) self.assertTrue(isinstance(result, int))
def testFloat(self): """Tests the function with float arguments.""" for test in self.TESTS: n, m, expected = (x / 100.0 for x in test) results = ( (util.roundToMultiple( n, m), expected), (util.roundToMultiple(-n, m), -expected), (util.roundToMultiple( n, -m), expected), (util.roundToMultiple(-n, -m), -expected)) for result, expected in results: self.assertEqual(result, expected) self.assertTrue(isinstance(result, float))
def testMixed(self): """Tests the function with mixed arguments.""" for n, m, expected in self.TESTS: results = ( (util.roundToMultiple(float( n), m), expected), (util.roundToMultiple(float(-n), m), -expected), (util.roundToMultiple(float( n), -m), expected), (util.roundToMultiple(float(-n), -m), -expected), (util.roundToMultiple( n, float( m)), expected), (util.roundToMultiple(-n, float( m)), -expected), (util.roundToMultiple( n, float(-m)), expected), (util.roundToMultiple(-n, float(-m)), -expected)) for result, expected in results: self.assertEqual(result, expected) self.assertTrue(isinstance(result, float))