Как использовать pytest, чтобы проверить, что ошибка НЕ возникает

Позволять'Предположим, у нас есть что-то подобное:

import py, pytest

ERROR1 = ' --- Error : value < 5! ---'
ERROR2 = ' --- Error : value > 10! ---'

class MyError(Exception):
    def __init__(self, m):
        self.m = m

    def __str__(self):
        return self.m

def foo(i):
    if i < 5:
        raise MyError(ERROR1)
    elif i > 10:
        raise MyError(ERROR2)
    return i


# ---------------------- TESTS -------------------------
def test_foo1():
    with pytest.raises(MyError) as e:
        foo(3)
    assert ERROR1 in str(e)

def test_foo2():
    with pytest.raises(MyError) as e:
        foo(11)
    assert ERROR2 in str(e)

def test_foo3():
        ....
        foo(7)
         ....

Q: Как я могу сделать test_foo3 () для проверки, что MyError не вызывается? Это'очевидно, что я мог просто проверить:

def test_foo3():
    assert foo(7) == 7

но я хочу проверить это с помощью pytest.raises (). Возможно ли это как-нибудь? Например: в случае, эта функция "Foo» не имеет возвращаемого значения вообще,

def foo(i):
    if i < 5:
        raise MyError(ERROR1)
    elif i > 10:
        raise MyError(ERROR2)

имело бы смысл проверить этот путь, imho.

Ответы на вопрос(3)

Ваш ответ на вопрос