Skip to content
Permalink
Machine-UART
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Go to file
 
 
Cannot retrieve contributors at this time
# test the functions imported from cmath
try:
from cmath import *
except ImportError:
print("SKIP")
raise SystemExit
# make sure these constants exist in cmath
print("%.5g" % e)
print("%.5g" % pi)
test_values_non_zero = []
base_values = (0.0, 0.5, 1.2345, 10.0)
for r in base_values:
for i in base_values:
if r != 0.0 or i != 0.0:
test_values_non_zero.append(complex(r, i))
if r != 0.0:
test_values_non_zero.append(complex(-r, i))
if i != 0.0:
test_values_non_zero.append(complex(r, -i))
if r != 0.0 and i != 0.0:
test_values_non_zero.append(complex(-r, -i))
test_values = [complex(0.0, 0.0)] + test_values_non_zero
print(test_values)
functions = [
("phase", phase, test_values),
("polar", polar, test_values),
(
"rect",
rect,
((0, 0), (0, 1), (0, -1), (1, 0), (-1, 0), (1, 1), (-1, 1), (1, -1), (123.0, -456.0)),
),
("exp", exp, test_values),
("log", log, test_values_non_zero),
("sqrt", sqrt, test_values),
("cos", cos, test_values),
("sin", sin, test_values),
]
for f_name, f, test_vals in functions:
print(f_name)
for val in test_vals:
if type(val) == tuple:
ret = f(*val)
else:
ret = f(val)
if type(ret) == float:
print("%.5g" % ret)
elif type(ret) == tuple:
print("%.5g %.5g" % ret)
else:
# some test (eg cmath.sqrt(-0.5)) disagree with CPython with tiny real part
real = ret.real
if abs(real) < 1e-6:
real = 0.0
print("complex(%.5g, %.5g)" % (real, ret.imag))
# test invalid type passed to cmath function
try:
log([])
except TypeError:
print("TypeError")