def test_condition_list(): xy = DotProduct(x, y) Ay = DotProduct(A, y) assert str(xy + Ay) == 'dot(x, y) + dot(A, y)' assert str(2 * (xy + Ay)) == '2 * dot(x, y) + 2 * dot(A, y)' assert str((xy + Ay) * 2) == '2 * dot(x, y) + 2 * dot(A, y)' assert str(2 * (xy + Ay) * 2) == '4 * dot(x, y) + 4 * dot(A, y)' assert str(2 * (xy + Ay) / 2) == 'dot(x, y) + dot(A, y)' assert str(2 * (xy + Ay) / 0.5) == '4 * dot(x, y) + 4 * dot(A, y)' assert str(xy + Ay + xy) == 'dot(x, y) + dot(A, y) + dot(x, y)' assert str((xy + Ay) + xy) == 'dot(x, y) + dot(A, y) + dot(x, y)' assert str(2 * (xy + Ay) + xy) == '2 * dot(x, y) + 2 * dot(A, y) + dot(x, y)' assert str(xy + (Ay + xy)) == 'dot(x, y) + dot(A, y) + dot(x, y)' assert str(xy + (Ay - xy)) == 'dot(x, y) + dot(A, y) + -dot(x, y)' assert str((xy + Ay) - xy) == 'dot(x, y) + dot(A, y) + -dot(x, y)' assert str(xy - (Ay + xy)) == 'dot(x, y) + -dot(A, y) + -dot(x, y)' assert str((xy + Ay) - 1) == 'dot(x, y) + dot(A, y) + -1' assert str((xy + Ay) + 1) == 'dot(x, y) + dot(A, y) + 1' assert str(1 - (xy + Ay)) == '-dot(x, y) + -dot(A, y) + 1' assert str(1 + (xy + Ay)) == 'dot(x, y) + dot(A, y) + 1' assert str((xy + Ay) + A) == 'dot(x, y) + dot(A, y) + A'
def test_dotproduct(): assert str(DotProduct(x, y)) == 'dot(x, y)' assert str(DotProduct(x, A)) == 'dot(x, A)' assert str(DotProduct(B, y)) == 'dot(B, y)' with pytest.raises(TypeError): DotProduct(B, A) with pytest.raises(TypeError): DotProduct(A, "B") with pytest.raises(TypeError): DotProduct(1, A) assert str(0.5 * DotProduct(x, y)) == '0.5 * dot(x, y)' assert str(0.5 * (0.5 * DotProduct(x, y))) == '0.25 * dot(x, y)' assert str(DotProduct(B, y) * 2) == '2 * dot(B, y)' with pytest.raises(TypeError): A * DotProduct(x, y) with pytest.raises(TypeError): DotProduct(x, y) * B assert str(DotProduct(x, y) / 2) == '0.5 * dot(x, y)' assert str((DotProduct(x, y) / 2) / 2) == '0.25 * dot(x, y)' assert str(2 * DotProduct(B, y) / 2) == 'dot(B, y)' with pytest.raises(TypeError): DotProduct(x, y) / B assert str(DotProduct(x, y) + 1) == 'dot(x, y) + 1' assert str(1 + DotProduct(x, y)) == 'dot(x, y) + 1' assert str(DotProduct(x, y) + DotProduct(B, y)) == 'dot(x, y) + dot(B, y)' assert str(DotProduct(x, y) + A) == 'dot(x, y) + A' assert str(B + DotProduct(x, y)) == 'dot(x, y) + B' assert str(-DotProduct(x, y)) == '-dot(x, y)' assert str(-(-DotProduct(x, y))) == 'dot(x, y)' assert str(DotProduct(x, y) - 1) == 'dot(x, y) + -1' assert str(1 - DotProduct(x, y)) == '-dot(x, y) + 1' assert str(DotProduct(x, y) - DotProduct(B, y)) == 'dot(x, y) + -dot(B, y)' assert str(DotProduct(x, y) - A) == 'dot(x, y) + -A' assert str(B - DotProduct(x, y)) == '-dot(x, y) + B'
def test_dotproduct(): assert str(DotProduct(x, y)) == "dot(x, y)" assert str(DotProduct(x, A)) == "dot(x, A)" assert str(DotProduct(B, y)) == "dot(B, y)" with pytest.raises(SpaParseError): DotProduct(B, A) with pytest.raises(SpaParseError): DotProduct(A, "B") with pytest.raises(SpaParseError): DotProduct(1, A) assert str(0.5 * DotProduct(x, y)) == "0.5 * dot(x, y)" assert str(0.5 * (0.5 * DotProduct(x, y))) == "0.25 * dot(x, y)" assert str(DotProduct(B, y) * 2) == "2 * dot(B, y)" with pytest.raises(TypeError): A * DotProduct(x, y) with pytest.raises(TypeError): DotProduct(x, y) * B assert str(DotProduct(x, y) / 2) == "0.5 * dot(x, y)" assert str((DotProduct(x, y) / 2) / 2) == "0.25 * dot(x, y)" assert str(2 * DotProduct(B, y) / 2) == "dot(B, y)" with pytest.raises(TypeError): DotProduct(x, y) / B assert str(DotProduct(x, y) + 1) == "dot(x, y) + 1" assert str(1 + DotProduct(x, y)) == "dot(x, y) + 1" assert str(DotProduct(x, y) + DotProduct(B, y)) == "dot(x, y) + dot(B, y)" assert str(DotProduct(x, y) + A) == "dot(x, y) + A" assert str(B + DotProduct(x, y)) == "dot(x, y) + B" assert str(-DotProduct(x, y)) == "-dot(x, y)" assert str(-(-DotProduct(x, y))) == "dot(x, y)" assert str(DotProduct(x, y) - 1) == "dot(x, y) + -1" assert str(1 - DotProduct(x, y)) == "-dot(x, y) + 1" assert str(DotProduct(x, y) - DotProduct(B, y)) == "dot(x, y) + -dot(B, y)" assert str(DotProduct(x, y) - A) == "dot(x, y) + -A" assert str(B - DotProduct(x, y)) == "-dot(x, y) + B"