def test_failed_finalizer_fixture(executed_docstring_source):
    """
    >>> import pytest

    >>> @pytest.fixture
    ... def failed_finalizer_fixture(request):
    ...     def fixture_finalizer():
    ...         assert False
    ...     request.addfinalizer(fixture_finalizer)
    ...
    ... def test_failed_finalizer_fixture_example(failed_finalizer_fixture):
    ...     pass
    """

    assert_that(executed_docstring_source.allure_report,
                has_test_case("test_failed_finalizer_fixture_example",
                              with_status("failed"),
                              has_status_details(with_message_contains("AssertionError"),
                                                 with_trace_contains("def fixture_finalizer():")
                                                 ),
                              has_container(executed_docstring_source.allure_report,
                                            has_after("{fixture}::{finalizer}".format(
                                                fixture="failed_finalizer_fixture",
                                                finalizer="fixture_finalizer"),
                                                with_status("failed"),
                                                has_status_details(with_message_contains("AssertionError"),
                                                                   with_trace_contains("fixture_finalizer")
                                                                   ),
                                            ),
                                            )
                              )
                )
def test_pytest_bytes_data_in_assert(executed_docstring_source):
    """
    >>> import allure

    >>> def test_pytest_bytes_data_in_assert_example():
    ...     with allure.step("Step"):
    ...         assert "0\\x82" == 1
    """

    assert_that(
        executed_docstring_source.allure_report,
        has_test_case(
            "test_pytest_bytes_data_in_assert_example", with_status("failed"),
            has_status_details(
                with_message_contains(
                    "AssertionError: assert \'0\\x82\' == 1"),
                with_trace_contains(
                    "def test_pytest_bytes_data_in_assert_example():")),
            has_step(
                "Step", with_status("failed"),
                has_status_details(
                    with_message_contains(
                        "AssertionError: assert \'0\\x82\' == 1"),
                    with_trace_contains(
                        "test_pytest_bytes_data_in_assert_example")))))
Beispiel #3
0
def test_pytest_fail_fixture(executed_docstring_source):
    """
    >>> import pytest

    >>> @pytest.fixture
    ... def pytest_fail_fixture():
    ...     pytest.fail()

    >>> def test_pytest_fail_fixture_example(pytest_fail_fixture):
    ...     pass
    """

    assert_that(
        executed_docstring_source.allure_report,
        has_test_case(
            "test_pytest_fail_fixture_example", with_status("failed"),
            has_status_details(
                with_message_contains("Failed: <Failed instance>"),
                with_trace_contains("def pytest_fail_fixture():")),
            has_container(
                executed_docstring_source.allure_report,
                has_before(
                    "pytest_fail_fixture",
                    with_status("failed"),
                    has_status_details(
                        with_message_contains("Failed: <Failed instance>"),
                        with_trace_contains("pytest_fail_fixture")),
                ),
            )))
def test_xfail_fixture(executed_docstring_source):
    """
    >>> import pytest

    >>> @pytest.fixture
    ... def broken_fixture():
    ...     raise NotImplementedError

    >>> @pytest.mark.xfail()
    ... def test_xfail_fixture_example(broken_fixture):
    ...     pass
    """

    assert_that(
        executed_docstring_source.allure_report,
        has_test_case(
            "test_xfail_fixture_example", with_status("skipped"),
            has_status_details(with_message_contains("NotImplementedError"),
                               with_trace_contains("def broken_fixture():")),
            has_container(
                executed_docstring_source.allure_report,
                has_before(
                    "broken_fixture",
                    with_status("broken"),
                    has_status_details(
                        with_message_contains("NotImplementedError"),
                        with_trace_contains("broken_fixture")),
                ),
            )))
Beispiel #5
0
def test_pytest_failed_finalizer_fixture(executed_docstring_source):
    """
    >>> import pytest

    >>> @pytest.fixture
    ... def pytest_failed_finalizer_fixture(request):
    ...     def fixture_finalizer():
    ...         pytest.fail()
    ...     request.addfinalizer(fixture_finalizer)

    >>> def test_pytest_failed_finalizer_fixture_example(pytest_failed_finalizer_fixture):
    ...     pass
    """

    assert_that(executed_docstring_source.allure_report,
                has_test_case("test_pytest_failed_finalizer_fixture_example",
                              with_status("failed"),
                              has_status_details(with_message_contains("Failed"),
                                                 with_trace_contains("def fixture_finalizer():")
                                                 ),
                              has_container(executed_docstring_source.allure_report,
                                            has_after("{fixture}::{finalizer}".format(
                                                fixture="pytest_failed_finalizer_fixture",
                                                finalizer="fixture_finalizer"),
                                                with_status("failed"),
                                                has_status_details(with_message_contains("Failed"),
                                                                   with_trace_contains("fixture_finalizer")
                                                                   ),
                                            ),
                                            )
                              )
                )
def test_failed_fixture(executed_docstring_source):
    """
    >>> import pytest

    >>> @pytest.fixture
    ... def failed_fixture():
    ...     assert False

    >>> def test_failed_fixture_example(failed_fixture):
    ...     pass
    """

    assert_that(executed_docstring_source.allure_report,
                has_test_case("test_failed_fixture_example",
                              with_status("failed"),
                              has_status_details(with_message_contains("AssertionError"),
                                                 with_trace_contains("def failed_fixture():")
                                                 ),
                              has_container(executed_docstring_source.allure_report,
                                            has_before("failed_fixture",
                                                       with_status("failed"),
                                                       has_status_details(with_message_contains("AssertionError"),
                                                                          with_trace_contains("failed_fixture")
                                                                          ),
                                                       ),
                                            )
                              )
                )
Beispiel #7
0
def test_skip_fixture(executed_docstring_source):
    """
    >>> import pytest

    >>> @pytest.fixture
    ... def skip_fixture():
    ...     pytest.skip()

    >>> @pytest.mark.xfail()
    ... def test_skip_fixture_example(skip_fixture):
    ...     pass
    """

    assert_that(
        executed_docstring_source.allure_report,
        has_test_case(
            "test_skip_fixture_example", with_status("skipped"),
            has_status_details(
                with_message_contains("Skipped: <Skipped instance>")),
            has_container(
                executed_docstring_source.allure_report,
                has_before(
                    "skip_fixture",
                    with_status("skipped"),
                    has_status_details(
                        with_message_contains("Skipped: <Skipped instance>"),
                        with_trace_contains("skip_fixture")),
                ),
            )))
def test_pytest_fail_fixture(executed_docstring_source):
    """
    >>> import pytest

    >>> @pytest.fixture
    ... def pytest_fail_fixture():
    ...     pytest.fail()

    >>> def test_pytest_fail_fixture_example(pytest_fail_fixture):
    ...     pass
    """

    assert_that(executed_docstring_source.allure_report,
                has_test_case("test_pytest_fail_fixture_example",
                              with_status("failed"),
                              has_status_details(with_message_contains("Failed: <Failed instance>"),
                                                 with_trace_contains("def pytest_fail_fixture():")
                                                 ),
                              has_container(executed_docstring_source.allure_report,
                                            has_before("pytest_fail_fixture",
                                                       with_status("failed"),
                                                       has_status_details(
                                                           with_message_contains("Failed: <Failed instance>"),
                                                           with_trace_contains("pytest_fail_fixture")
                                                       ),
                                                       ),
                                            )
                              )
                )
def test_broken_fixture(executed_docstring_source):
    """
    >>> import pytest

    >>> @pytest.fixture
    ... def broken_fixture():
    ...     raise IndexError

    >>> def test_broken_fixture_example(broken_fixture):
    ...     pass
    """

    assert_that(executed_docstring_source.allure_report,
                has_test_case("test_broken_fixture_example",
                              with_status("broken"),
                              has_status_details(with_message_contains("IndexError"),
                                                 with_trace_contains("def broken_fixture():")
                                                 ),
                              has_container(executed_docstring_source.allure_report,
                                            has_before("broken_fixture",
                                                       with_status("broken"),
                                                       has_status_details(with_message_contains("IndexError"),
                                                                          with_trace_contains("broken_fixture")
                                                                          ),
                                                       ),
                                            )
                              )
                )
Beispiel #10
0
 def test_passed_with_step(self):
     assert_that(
         self.allure_report,
         has_test_case(
             'Passed Case With Step', with_status('passed'),
             has_step(RobotBasicKeywords.NO_OPERATION,
                      with_status('passed'))))
def test_skip_finalizer_fixture(executed_docstring_source):
    """
    >>> import pytest

    >>> @pytest.fixture
    ... def skip_finalizer_fixture(request):
    ...     def fixture_finalizer():
    ...         pytest.skip()
    ...     request.addfinalizer(fixture_finalizer)

    >>> def test_skip_finalizer_fixture_example(skip_finalizer_fixture):
    ...     pass
    """

    assert_that(executed_docstring_source.allure_report,
                has_test_case("test_skip_finalizer_fixture_example",
                              with_status("passed"),
                              has_container(executed_docstring_source.allure_report,
                                            has_after("{fixture}::{finalizer}".format(
                                                fixture="skip_finalizer_fixture",
                                                finalizer="fixture_finalizer"),
                                                with_status("skipped"),
                                                has_status_details(with_message_contains("Skipped: <Skipped instance>"),
                                                                   with_trace_contains("fixture_finalizer")
                                                                   ),
                                            ),
                                            )
                              )
                )
Beispiel #12
0
def test_xfail_step_failure(executed_docstring_source):
    """
    >>> import pytest
    >>> import allure

    >>> @pytest.mark.xfail()
    ... def test_xfail_step_failure_example():
    ...     with allure.step("Step"):
    ...         assert False
    """

    assert_that(executed_docstring_source.allure_report,
                has_test_case("test_xfail_step_failure_example",
                              with_status("skipped"),
                              has_status_details(with_message_contains("AssertionError"),
                                                 with_trace_contains("def test_xfail_step_failure_example():")
                                                 ),
                              has_step("Step",
                                       with_status("failed"),
                                       has_status_details(with_message_contains("AssertionError"),
                                                          with_trace_contains("test_xfail_step_failure_example")
                                                          )
                                       )
                              )
                )
Beispiel #13
0
def test_failed_fixture(executed_docstring_source):
    """
    >>> import pytest

    >>> @pytest.fixture
    ... def failed_fixture():
    ...     assert False

    >>> def test_failed_fixture_example(failed_fixture):
    ...     pass
    """

    assert_that(
        executed_docstring_source.allure_report,
        has_test_case(
            "test_failed_fixture_example", with_status("failed"),
            has_status_details(with_message_contains("AssertionError"),
                               with_trace_contains("def failed_fixture():")),
            has_container(
                executed_docstring_source.allure_report,
                has_before(
                    "failed_fixture",
                    with_status("failed"),
                    has_status_details(with_message_contains("AssertionError"),
                                       with_trace_contains("failed_fixture")),
                ),
            )))
Beispiel #14
0
 def test_different_status_steps(self):
     assert_that(
         self.allure_report,
         has_test_case(
             'Different Status Steps',
             all_of(
                 has_step_with_keyword_log(RobotBasicKeywords.NO_OPERATION,
                                           with_status('passed')),
                 has_step_with_keyword_log(RobotBasicKeywords.FAIL,
                                           with_status('failed')))))
Beispiel #15
0
 def test_failed_with_details(self):
     assert_that(self.allure_report, has_test_case('Failed Case With Message',
                                                   with_status('failed'),
                                                   has_status_details(with_message_contains('Failed Details')
                                                                      )
                                                   )
                 )
Beispiel #16
0
def test_passed(executed_docstring_source):
    """
    >>> def test_passed_example():
    ...     pass
    """

    assert_that(executed_docstring_source.allure_report,
                has_test_case("test_passed_example", with_status("passed")))
def test_pytest_flakes(allured_testdir):
    """
    >>> from os.path import *
    >>> def test_pytest_flakes_example():
    ...     assert True
    """

    allured_testdir.parse_docstring_source()
    allured_testdir.run_with_allure("--flakes")

    assert_that(
        allured_testdir.allure_report,
        has_test_case("flake-8", with_status("broken")),
    )

    assert_that(
        allured_testdir.allure_report,
        has_test_case("test_pytest_flakes_example", with_status("passed")))
def test_passed(executed_docstring_source):
    """
    >>> def test_passed_example():
    ...     pass
    """

    assert_that(executed_docstring_source.allure_report,
                has_test_case("test_passed_example",
                              with_status("passed")
                              )
                )
def test_skip_in_step(executed_docstring_source):
    """
    >>> import pytest
    >>> import allure

    >>> def test_skip_in_step_example():
    ...     with allure.step("Step"):
    ...         pytest.skip()
    """

    assert_that(
        executed_docstring_source.allure_report,
        has_test_case(
            "test_skip_in_step_example", with_status("skipped"),
            has_status_details(
                with_message_contains("Skipped: <Skipped instance>")),
            has_step(
                "Step", with_status("skipped"),
                has_status_details(
                    with_message_contains("Skipped: <Skipped instance>"),
                    with_trace_contains("test_skip_in_step")))))
def test_broken_step(executed_docstring_source):
    """
    >>> import allure

    >>> def test_broken_step_example():
    ...     with allure.step("Step"):
    ...         raise ZeroDivisionError
    """

    assert_that(
        executed_docstring_source.allure_report,
        has_test_case(
            "test_broken_step_example", with_status("broken"),
            has_status_details(
                with_message_contains("ZeroDivisionError"),
                with_trace_contains("def test_broken_step_example():")),
            has_step(
                "Step", with_status("broken"),
                has_status_details(
                    with_message_contains("ZeroDivisionError"),
                    with_trace_contains("test_broken_step_example")))))
def test_skipif_false(executed_docstring_source):
    """
    >>> import pytest

    >>> @pytest.mark.skipif(False, reason="Skip reason")
    ... def test_skipif_false_example():
    ...     pass
    """

    assert_that(
        executed_docstring_source.allure_report,
        has_test_case("test_skipif_false_example", with_status("passed")))
Beispiel #22
0
    def test_passed_status(self):
        """
        >>> import unittest

        >>> class TestStatusExample(unittest.TestCase):
        ...     def test_passed_example(self):
        ...         assert True
        """
        allure_report = run_docstring_example()
        assert_that(
            allure_report,
            has_test_case("test_passed_example", with_status("passed")))
def test_skip(executed_docstring_source):
    """
    >>> import pytest

    >>> def test_skip_example():
    ...     pytest.skip()
    """

    assert_that(
        executed_docstring_source.allure_report,
        has_test_case("test_skip_example", with_status("skipped"),
                      has_status_details(with_message_contains("Skipped"))))
Beispiel #24
0
def test_broken(executed_docstring_source):
    """
    >>> def test_broken_example():
    ...     raise IndentationError()
    """

    assert_that(
        executed_docstring_source.allure_report,
        has_test_case(
            "test_broken_example", with_status("broken"),
            has_status_details(
                with_message_contains("IndentationError"),
                with_trace_contains("def test_broken_example():"))))
Beispiel #25
0
def test_failed(executed_docstring_source):
    """
    >>> def test_failed_example():
    ...     assert False
    """

    assert_that(
        executed_docstring_source.allure_report,
        has_test_case(
            "test_failed_example", with_status("failed"),
            has_status_details(
                with_message_contains("AssertionError"),
                with_trace_contains("def test_failed_example():"))))
def test_broken(executed_docstring_source):
    """
    >>> def test_broken_example():
    ...     raise IndentationError()
    """

    assert_that(executed_docstring_source.allure_report,
                has_test_case("test_broken_example",
                              with_status("broken"),
                              has_status_details(with_message_contains("IndentationError"),
                                                 with_trace_contains("def test_broken_example():")
                                                 )
                              )
                )
def test_failed(executed_docstring_source):
    """
    >>> def test_failed_example():
    ...     assert False
    """

    assert_that(executed_docstring_source.allure_report,
                has_test_case("test_failed_example",
                              with_status("failed"),
                              has_status_details(with_message_contains("AssertionError"),
                                                 with_trace_contains("def test_failed_example():")
                                                 )
                              )
                )
def test_skipif_true(executed_docstring_source):
    """
    >>> import pytest

    >>> @pytest.mark.skipif(True, reason="Skip reason")
    ... def test_skipif_true_example():
    ...     pass
    """

    assert_that(
        executed_docstring_source.allure_report,
        has_test_case(
            "test_skipif_true_example", with_status("skipped"),
            has_status_details(with_message_contains("Skipped: Skip reason"))))
def test_xfail_do_not_raise_mentioned_exception(executed_docstring_source):
    """
    >>> import pytest

    >>> @pytest.mark.xfail(raises=AssertionError)
    ... def test_xfail_do_not_raise_mentioned_exception_example():
    ...     pass
    """

    assert_that(
        executed_docstring_source.allure_report,
        has_test_case("test_xfail_do_not_raise_mentioned_exception_example",
                      with_status("passed"),
                      has_status_details(with_message_contains("XPASS"), )))
def test_pytest_fail_in_step(executed_docstring_source):
    """
    >>> import pytest
    >>> import allure

    >>> def test_pytest_fail_in_step_example():
    ...     with allure.step("Step"):
    ...         pytest.fail()
    """

    assert_that(
        executed_docstring_source.allure_report,
        has_test_case(
            "test_pytest_fail_in_step_example", with_status("failed"),
            has_status_details(
                with_message_contains("Failed"),
                with_trace_contains(
                    "def test_pytest_fail_in_step_example():")),
            has_step(
                "Step", with_status("failed"),
                has_status_details(
                    with_message_contains("Failed"),
                    with_trace_contains("test_pytest_fail_in_step_example")))))
Beispiel #31
0
    def test_broken_status(self):
        """
        >>> import unittest

        >>> class TestStatusExample(unittest.TestCase):
        ...     def test_broken_example(self):
        ...         raise Exception("my error")
        """
        allure_report = run_docstring_example()
        assert_that(
            allure_report,
            has_test_case(
                "test_broken_example", with_status("broken"),
                has_status_details(with_message_contains("my error"))))
def test_broken_step(executed_docstring_source):
    """
    >>> import allure

    >>> def test_broken_step_example():
    ...     with allure.step("Step"):
    ...         raise ZeroDivisionError
    """

    assert_that(executed_docstring_source.allure_report,
                has_test_case("test_broken_step_example",
                              with_status("broken"),
                              has_status_details(with_message_contains("ZeroDivisionError"),
                                                 with_trace_contains("def test_broken_step_example():")
                                                 ),
                              has_step("Step",
                                       with_status("broken"),
                                       has_status_details(with_message_contains("ZeroDivisionError"),
                                                          with_trace_contains("test_broken_step_example")
                                                          )
                                       )
                              )
                )
Beispiel #33
0
    def test_failed_status(self):
        """
        >>> import unittest

        >>> class TestStatusExample(unittest.TestCase):
        ...     def test_failed_example(self):
        ...         assert False, "my message"
        """
        allure_report = run_docstring_example()
        assert_that(
            allure_report,
            has_test_case(
                "test_failed_example", with_status("failed"),
                has_status_details(with_message_contains("my message"))))
Beispiel #34
0
    def test_skipped_status(self):
        """
        >>> import unittest

        >>> class TestStatusExample(unittest.TestCase):
        ...     def test_skipped_example(self):
        ...         self.skipTest('my skip reason')
        """
        allure_report = run_docstring_example()
        assert_that(
            allure_report,
            has_test_case(
                "test_skipped_example", with_status("skipped"),
                has_status_details(with_message_contains("my skip reason"))))
def test_pytest_flakes(allured_testdir):
    """
    >>> from os.path import *
    >>> def test_pytest_flakes_example():
    ...     assert True
    """

    allured_testdir.parse_docstring_source()
    allured_testdir.run_with_allure("--flakes")

    assert_that(allured_testdir.allure_report,
                has_test_case("test_pytest_flakes.py",
                              with_status("broken")
                              ),

                )

    assert_that(allured_testdir.allure_report,
                has_test_case("test_pytest_flakes_example",
                              with_status("passed")
                              )

                )
def test_pytest_bytes_data_in_assert(executed_docstring_source):
    """
    >>> import allure

    >>> def test_pytest_bytes_data_in_assert_example():
    ...     with allure.step("Step"):
    ...         assert "0\\x82" == 1
    """

    assert_that(executed_docstring_source.allure_report,
                has_test_case("test_pytest_bytes_data_in_assert_example",
                              with_status("failed"),
                              has_status_details(with_message_contains("AssertionError: assert \'0\\x82\' == 1"),
                                                 with_trace_contains("def test_pytest_bytes_data_in_assert_example():")
                                                 ),
                              has_step("Step",
                                       with_status("failed"),
                                       has_status_details(
                                           with_message_contains("AssertionError: assert \'0\\x82\' == 1"),
                                           with_trace_contains("test_pytest_bytes_data_in_assert_example")
                                       )
                                       )
                              )
                )
def test_pytest_fail_in_step(executed_docstring_source):
    """
    >>> import pytest
    >>> import allure

    >>> def test_pytest_fail_in_step_example():
    ...     with allure.step("Step"):
    ...         pytest.fail()
    """

    assert_that(executed_docstring_source.allure_report,
                has_test_case("test_pytest_fail_in_step_example",
                              with_status("failed"),
                              has_status_details(with_message_contains("Failed: <Failed instance>"),
                                                 with_trace_contains("def test_pytest_fail_in_step_example():")
                                                 ),
                              has_step("Step",
                                       with_status("failed"),
                                       has_status_details(with_message_contains("Failed: <Failed instance>"),
                                                          with_trace_contains("test_pytest_fail_in_step_example")
                                                          )
                                       )
                              )
                )
Beispiel #38
0
def test_call_pytest_fail(executed_docstring_source):
    """
    >>> import pytest

    >>> def test_call_pytest_fail_example():
    ...     pytest.fail()
    """

    assert_that(
        executed_docstring_source.allure_report,
        has_test_case(
            "test_call_pytest_fail_example", with_status("failed"),
            has_status_details(
                with_message_contains("Failed: <Failed instance>"),
                with_trace_contains("def test_call_pytest_fail_example():"))))
def test_xfail_with_reason_do_not_raise_mentioned_exception(executed_docstring_source):
    """
    >>> import pytest

    >>> @pytest.mark.xfail(raises=AssertionError, reason="Some reason")
    ... def test_xfail_with_reason_do_not_raise_mentioned_exception_example():
    ...     pass
    """

    assert_that(executed_docstring_source.allure_report,
                has_test_case("test_xfail_with_reason_do_not_raise_mentioned_exception_example",
                              with_status("passed"),
                              has_status_details(with_message_contains("XPASS Some reason"),
                                                 )
                              )
                )
def test_xfail_with_run_false_and_with_reason(executed_docstring_source):
    """
    >>> import pytest

    >>> @pytest.mark.xfail(run=False, reason="Some reason")
    ... def test_xfail_with_run_false_and_with_reason_example():
    ...     pass
    """

    assert_that(
        executed_docstring_source.allure_report,
        has_test_case(
            "test_xfail_with_run_false_and_with_reason_example",
            with_status("skipped"),
            has_status_details(
                with_message_contains("Failed: [NOTRUN] Some reason"))))
def test_pytest_docktest(allured_testdir):
    allured_testdir.testdir.makepyfile('''
        def some_func():
            """
            >>> some_func()
            True
            """
            return True

    ''')

    allured_testdir.run_with_allure("--doctest-modules")

    assert_that(allured_testdir.allure_report,
                has_test_case("test_pytest_docktest.some_func",
                              with_status("passed"))
                )
def test_call_pytest_fail_with_reason(executed_docstring_source):
    """
    >>> import pytest

    >>> def test_call_pytest_fail_with_reason_example():
    ...     pytest.fail("Fail message")
    """

    assert_that(executed_docstring_source.allure_report,
                has_test_case("test_call_pytest_fail_with_reason_example",
                              with_status("failed"),
                              has_status_details(with_message_contains("Fail message"),
                                                 with_trace_contains("def test_call_pytest_fail_with_reason_example():")
                                                 )
                              )

                )
def test_xfail_raise_not_mentioned_exception(executed_docstring_source):
    """
    >>> import pytest

    >>> @pytest.mark.xfail(raises=AssertionError)
    ... def test_xfail_raise_not_mentioned_exception_example():
    ...     raise ZeroDivisionError
    """

    assert_that(executed_docstring_source.allure_report,
                has_test_case("test_xfail_raise_not_mentioned_exception_example",
                              with_status("broken"),
                              has_status_details(with_message_contains("ZeroDivisionError"),
                                                 with_trace_contains(
                                                     "def test_xfail_raise_not_mentioned_exception_example():")
                                                 )
                              )
                )
Beispiel #44
0
def test_xfail_raise_not_mentioned_exception(executed_docstring_source):
    """
    >>> import pytest

    >>> @pytest.mark.xfail(raises=AssertionError)
    ... def test_xfail_raise_not_mentioned_exception_example():
    ...     raise ZeroDivisionError
    """

    assert_that(executed_docstring_source.allure_report,
                has_test_case("test_xfail_raise_not_mentioned_exception_example",
                              with_status("broken"),
                              has_status_details(with_message_contains("ZeroDivisionError"),
                                                 with_trace_contains(
                                                     "def test_xfail_raise_not_mentioned_exception_example():")
                                                 )
                              )
                )
def test_pytest_check(allured_testdir):
    """
    >>> import pytest_check as check
    >>> def test_pytest_check_example():
    ...     check.equal(1, 2, msg="First failure")
    ...     check.equal(1, 2, msg="Second failure")
    """

    allured_testdir.parse_docstring_source()
    allured_testdir.run_with_allure()

    assert_that(
        allured_testdir.allure_report,
        has_test_case(
            "test_pytest_check_example", with_status("failed"),
            has_status_details(with_message_contains("First failure"),
                               with_message_contains("Second failure"))),
    )