Пример #1
0
def test_add_sub_pol():
    p = ao.Polynomial(1, 2, 3)
    r = ao.Polynomial(3, 4)
    q = p + r
    s = p - r
    assert q.coef == ao.Polynomial(4, 6, 3).coef
    assert s.coef == ao.Polynomial(-2, -2, 3).coef
Пример #2
0
def test_mul_scalar():
    p = ao.Polynomial(1, 2, 3)
    r = 2 * p
    q = p * 2
    assert r.coef == ao.Polynomial(2, 4, 6).coef
    assert q.coef == ao.Polynomial(2, 4, 6).coef
Пример #3
0
def test_change_coef():
    try:
        p = ao.Polynomial(2)
        p.coef = [1, 2, 3]
    except AttributeError as err:
        assert str(err) == "can't set attribute"
Пример #4
0
def test_update_coef():
    p = ao.Polynomial(2)
    p.coef["x1"] = 4.5
    assert p.degree == 1
Пример #5
0
def test_init_bad_value():
    try:
        p = ao.Polynomial("2")
    except TypeError as err:
        assert str(err) == ao.MSG_ERROR_VAL.format("Coefficients", "str")
Пример #6
0
def test_change_degree():
    try:
        p = ao.Polynomial(2)
        p.degree = 5
    except AttributeError as err:
        assert str(err) == "can't set attribute"
Пример #7
0
def test_init_no_value():
    try:
        p = ao.Polynomial()
    except TypeError as err:
        assert str(err) == ao.MSG_ERROR_ARG
Пример #8
0
def test_init_args():
    p = ao.Polynomial(1, 2, 3)
    assert p.coef == {"x0": 1, "x1": 2, "x2": 3}
    assert p.degree == 2
Пример #9
0
def test_init_kw():
    p = ao.Polynomial(x9=3, x2=1.0)
    assert p.coef == {"x9": 3, "x2": 1.0}
    assert p.degree == 9
Пример #10
0
def test_init_args_kw():
    p = ao.Polynomial(1, 2, 3, x10=12)
    assert p.coef == {"x0": 1, "x1": 2, "x2": 3, "x10": 12}
    assert p.degree == 10
Пример #11
0
def test_bad_eval():
    try:
        p = ao.Polynomial(1, 2, 3)
        p("5")
    except TypeError as err:
        assert str(err) == ao.MSG_ERROR_VAL.format("Value", "str")
Пример #12
0
def test_eval():
    p = ao.Polynomial(1, 2, 3)
    assert p(5) == 86
Пример #13
0
def test_mul_other():
    try:
        p = ao.Polynomial(1, 2, 3)
        r = [2] * p
    except TypeError as err:
        assert str(err) == ao.MSG_ERROR_OPER.format(" *: 'list' ")
Пример #14
0
def test_mul_pol():
    p = ao.Polynomial(1, 2, 3)
    r = ao.Polynomial(3, 4)
    q = p * r
    assert q.coef == ao.Polynomial(3, 10, 17, 12).coef
Пример #15
0
def test_init_bad_key():
    try:
        p = ao.Polynomial(badkey=1)
    except TypeError as err:
        assert str(err) == ao.MSG_ERROR_KW.format("badkey")
Пример #16
0
def test_add_other():
    try:
        p = ao.Polynomial(1, 2, 3)
        r = p + 1
    except TypeError as err:
        assert str(err) == ao.MSG_ERROR_OPER.format(" +: 'int' ")
Пример #17
0
def test_sub_other():
    try:
        p = ao.Polynomial(1, 2, 3)
        r = p - 1.8
    except TypeError as err:
        assert str(err) == ao.MSG_ERROR_OPER.format(" -: 'float' ")