MCPcopy Index your code
hub / github.com/python/cpython / test_c_integral

Method test_c_integral

Lib/test/test_decimal.py:5306–5335  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

5304 "=%d.1" % maxsize)
5305
5306 def test_c_integral(self):
5307 Decimal = C.Decimal
5308 Inexact = C.Inexact
5309 localcontext = C.localcontext
5310
5311 x = Decimal(10)
5312 self.assertEqual(x.to_integral(), 10)
5313 self.assertRaises(TypeError, x.to_integral, '10')
5314 self.assertRaises(TypeError, x.to_integral, 10, 'x')
5315 self.assertRaises(TypeError, x.to_integral, 10)
5316
5317 self.assertEqual(x.to_integral_value(), 10)
5318 self.assertRaises(TypeError, x.to_integral_value, '10')
5319 self.assertRaises(TypeError, x.to_integral_value, 10, 'x')
5320 self.assertRaises(TypeError, x.to_integral_value, 10)
5321
5322 self.assertEqual(x.to_integral_exact(), 10)
5323 self.assertRaises(TypeError, x.to_integral_exact, '10')
5324 self.assertRaises(TypeError, x.to_integral_exact, 10, 'x')
5325 self.assertRaises(TypeError, x.to_integral_exact, 10)
5326
5327 with localcontext() as c:
5328 x = Decimal("99999999999999999999999999.9").to_integral_value(ROUND_UP)
5329 self.assertEqual(x, Decimal('100000000000000000000000000'))
5330
5331 x = Decimal("99999999999999999999999999.9").to_integral_exact(ROUND_UP)
5332 self.assertEqual(x, Decimal('100000000000000000000000000'))
5333
5334 c.traps[Inexact] = True
5335 self.assertRaises(Inexact, Decimal("999.9").to_integral_exact, ROUND_UP)
5336
5337 def test_c_funcs(self):
5338 # Invalid arguments

Callers

nothing calls this directly

Calls 6

to_integral_valueMethod · 0.95
to_integral_exactMethod · 0.95
DecimalClass · 0.85
localcontextFunction · 0.85
assertEqualMethod · 0.45
assertRaisesMethod · 0.45

Tested by

no test coverage detected