a ze@s6ddlZddlZGdddejZedkr2edS)Nc@sDeZdZddZddZddZddZd d Zd d Zd dZ dS)PowTestc Cs|tkr@tddD]h}|t||dd|t||d|||t|dd|d|t|dd|dqtddD]"}|t||d|||qd}tddD]&}|td |||d kr|d }qtfD]V}ttd dttdd D]4}||}tdd D]}|| }t||qqqttfD]L}tddD]:}|d}||d } | dkr~qV|tt|| qVqHd\} } d\} } d\}}|j}|tkrd} |j}n"|tkrd} n|tkrd\} } t| | dD]}t| | dD]|}t||dD]f}|dkr|tks@|dkrZ|t t||||q|t||||t|||||qq qdS)Niirid g$@)i))r r )r) floatrange assertEqualpowintlist assertRaisesZeroDivisionErrorZassertAlmostEqual TypeError)selftypeiZpow2Z othertypeiijZjjZzeroexpZilZihZjlZjhklZkhZasseqkr!A/opt/bitninja-python-dojo/embedded/lib/python3.9/test/test_pow.pypowtests^           zPowTest.powtestcCs|tdSN)r#rrr!r!r" test_powint<szPowTest.test_powintcCs|tdSr$)r#rr%r!r!r" test_powfloat?szPowTest.test_powfloatc Cs|tdddtddd|tdddtddd|tdddtddd|tdddtddd|tdddtddd|tdddtddd|tdddtddd|tdddtddd|tdddtddd|tdddtddd|tdddtddd|tdddtdddtdd D]}td d D]}td d D]r}|d kr|d kr|t|||t||||d kr|d kr|tt|||tt|||qqqrdS) Nrirrr r ri)rrrr)rrrr r!r!r" test_otherBs2  zPowTest.test_othercCsGddd}d|dS)Nc@seZdZddZdS)z(PowTest.test_bug643260..TestRpowcSsdSr$r!)rotherr!r!r"__rpow__bsz1PowTest.test_bug643260..TestRpow.__rpow__N)__name__ __module__ __qualname__r.r!r!r!r"TestRpowasr2r!)rr2r!r!r"test_bug643260`szPowTest.test_bug643260cCs|j}d}|t|dd|t|ddtddD]$}|t|t||d@rRdpTdq4tdd D]B}td |}|d rdpd}|t||||t|| |qd||ddS) NggNݯbg?gNݯr r rrrrg@)rrrr)reqabnZfivetoZexpectedr!r!r"test_bug705231fs" zPowTest.test_bug705231c CstddD]}tddD]}|j||dZ|dkrt||dkrt|d|}|||||||d|d|t|d|t|d||t|d |t|d ||t|d |t|d |n|tt|d|Wdn1s0Y|tt|d|Wdn1s:0Y|tt|d |Wdn1sr0YWdq1s0Yqq dS) Ni2)r5mrrr)rr*rii)rZsubTestmathgcdrrr ValueError)rr5r:invr!r!r"test_negative_exponent{s   , , zPowTest.test_negative_exponentN) r/r0r1r#r&r'r,r3r8r@r!r!r!r"rs6r__main__)r<ZunittestZTestCaserr/mainr!r!r!r"s