def test_illegal_cases(): illegal_cases = ((4, 0), (infinity, 0), (-infinity, 0)) for illegal_case in illegal_cases: with cute_testing.RaiseAssertor() as raise_assertor_0: cute_divmod(*illegal_case) with cute_testing.RaiseAssertor() as raise_assertor_1: divmod(*illegal_case) with cute_testing.RaiseAssertor() as raise_assertor_2: cute_floor_div(*illegal_case) assert logic_tools.all_equivalent(( type(raise_assertor_0.exception), type(raise_assertor_1.exception), type(raise_assertor_2.exception), ))
def test_meaningful_cases(): meaningful_cases = ( (infinity, 3), (infinity, 300.5), (infinity, -3), (infinity, -300.5), (-infinity, 3), (-infinity, 300.5), (-infinity, -3), (-infinity, -300.5), (3, infinity), (3, -infinity), (-3, infinity), (-3, -infinity), (300.5, infinity), (300.5, -infinity), (-300.5, infinity), (-300.5, -infinity), (0, infinity), (0, -infinity), ) for meaningful_numerator, meaningful_denominator in meaningful_cases: cute_quotient, cute_remainder = cute_divmod(meaningful_numerator, meaningful_denominator) assert cute_equal( cute_quotient, cute_floor_div(meaningful_numerator, meaningful_denominator)) assert (cute_quotient == (meaningful_numerator / meaningful_denominator)) or \ (0 <= ((meaningful_numerator / meaningful_denominator) - cute_quotient) < 1)
def test_illegal_cases(): illegal_cases = ( (4, 0), (infinity, 0), (-infinity, 0) ) for illegal_case in illegal_cases: with cute_testing.RaiseAssertor() as raise_assertor_0: cute_divmod(*illegal_case) with cute_testing.RaiseAssertor() as raise_assertor_1: divmod(*illegal_case) with cute_testing.RaiseAssertor() as raise_assertor_2: cute_floor_div(*illegal_case) assert logic_tools.all_equal(( type(raise_assertor_0.exception), type(raise_assertor_1.exception), type(raise_assertor_2.exception), ))
def test_meaningful_cases(): if sys_tools.is_pypy: # todo: When version of Pypy with bug 1873 is released, remove this # skipping. raise nose.SkipTest meaningful_cases = ( (infinity, 3), (infinity, 300.5), (infinity, -3), (infinity, -300.5), (-infinity, 3), (-infinity, 300.5), (-infinity, -3), (-infinity, -300.5), (3, infinity), (3, -infinity), (-3, infinity), (-3, -infinity), (300.5, infinity), (300.5, -infinity), (-300.5, infinity), (-300.5, -infinity), (0, infinity), (0, -infinity), ) for meaningful_numerator, meaningful_denominator in meaningful_cases: cute_quotient, cute_remainder = cute_divmod(meaningful_numerator, meaningful_denominator) assert cute_equal( cute_quotient, cute_floor_div(meaningful_numerator, meaningful_denominator)) assert (cute_quotient == (meaningful_numerator / meaningful_denominator)) or \ (0 <= ((meaningful_numerator / meaningful_denominator) - cute_quotient) < 1)
def test_degenerate_cases(): degenerate_cases = ((4, 5), (-1234, 23), (0, 512), (452.5, 613.451), (234.234, -3453), (-23.3, 4), (infinity, infinity), (infinity, -infinity), (-infinity, infinity), (-infinity, -infinity)) for degenerate_case in degenerate_cases: assert cute_equal(cute_divmod(*degenerate_case), divmod(*degenerate_case)) assert cute_equal( cute_divmod(*degenerate_case)[0], cute_floor_div(*degenerate_case), degenerate_case[0] // degenerate_case[1])
def test_degenerate_cases(): degenerate_cases = ( (4, 5), (-1234, 23), (0, 512), (452.5, 613.451), (234.234, -3453), (-23.3, 4), (infinity, infinity), (infinity, -infinity), (-infinity, infinity), (-infinity, -infinity) ) for degenerate_case in degenerate_cases: assert cute_equal(cute_divmod(*degenerate_case), divmod(*degenerate_case)) assert cute_equal(cute_divmod(*degenerate_case)[0], cute_floor_div(*degenerate_case), degenerate_case[0] // degenerate_case[1])
def test_meaningful_cases(): meaningful_cases = ( (infinity, 3), (infinity, 300.5), (infinity, -3), (infinity, -300.5), (-infinity, 3), (-infinity, 300.5), (-infinity, -3), (-infinity, -300.5), (3, infinity), (3, -infinity), (-3, infinity), (-3, -infinity), (300.5, infinity), (300.5, -infinity), (-300.5, infinity), (-300.5, -infinity), (0, infinity), (0, -infinity), ) for meaningful_numerator, meaningful_denominator in meaningful_cases: cute_quotient, cute_remainder = cute_divmod(meaningful_numerator, meaningful_denominator) assert cute_equal(cute_quotient, cute_floor_div(meaningful_numerator, meaningful_denominator)) assert (cute_quotient == (meaningful_numerator / meaningful_denominator)) or \ (0 <= ((meaningful_numerator / meaningful_denominator) - cute_quotient) < 1)
def test_meaningful_cases(): if sys_tools.is_pypy: # todo: When version of Pypy with bug 1873 is released, remove this # skipping. raise nose.SkipTest meaningful_cases = ( (infinity, 3), (infinity, 300.5), (infinity, -3), (infinity, -300.5), (-infinity, 3), (-infinity, 300.5), (-infinity, -3), (-infinity, -300.5), (3, infinity), (3, -infinity), (-3, infinity), (-3, -infinity), (300.5, infinity), (300.5, -infinity), (-300.5, infinity), (-300.5, -infinity), (0, infinity), (0, -infinity), ) for meaningful_numerator, meaningful_denominator in meaningful_cases: cute_quotient, cute_remainder = cute_divmod(meaningful_numerator, meaningful_denominator) assert cute_equal(cute_quotient, cute_floor_div(meaningful_numerator, meaningful_denominator)) assert (cute_quotient == (meaningful_numerator / meaningful_denominator)) or \ (0 <= ((meaningful_numerator / meaningful_denominator) - cute_quotient) < 1)