Skip to content

Output repeats #286

@GammaGames

Description

@GammaGames

Command used to run pytest

pytest -rP

Test file

import pytest

@pytest.fixture
def before_after(request):
    print(f"Before test - {request.param[0]}")
    yield
    print(f"After test - {request.param[1]}")

@pytest.mark.parametrize("before_after", [[1, 2]], indirect=True)
def test_1(before_after):
    print("Test 1")
    assert True

@pytest.mark.parametrize("before_after", [["a", "b"]], indirect=True)
def test_2(before_after):
    print("Test 2")
    assert True

Output

When pytest-sugar is not installed:

============================================= test session starts =============================================
platform linux -- Python 3.12.6, pytest-8.3.3, pluggy-1.5.0
rootdir: /test
collected 2 items                                                                                             

test/test_main.py ..                                                                                    [100%]

=================================================== PASSES ====================================================
____________________________________________ test_1[before_after0] ____________________________________________
-------------------------------------------- Captured stdout setup --------------------------------------------
Before test - 1
-------------------------------------------- Captured stdout call ---------------------------------------------
Test 1
------------------------------------------ Captured stdout teardown -------------------------------------------
After test - 2
____________________________________________ test_2[before_after0] ____________________________________________
-------------------------------------------- Captured stdout setup --------------------------------------------
Before test - a
-------------------------------------------- Captured stdout call ---------------------------------------------
Test 2
------------------------------------------ Captured stdout teardown -------------------------------------------
After test - b
============================================== 2 passed in 0.02s ==============================================

When pytest-sugar is installed:

Test session starts (platform: linux, Python 3.12.6, pytest 8.3.3, pytest-sugar 1.0.0)
rootdir: /test
plugins: sugar-1.0.0
collected 2 items                                                                                             

 test_main.py ✓✓                                                                                100% ██████████
=================================================== PASSES ====================================================
____________________________________________ test_1[before_after0] ____________________________________________
-------------------------------------------- Captured stdout setup --------------------------------------------
Before test - 1
____________________________________________ test_1[before_after0] ____________________________________________
-------------------------------------------- Captured stdout setup --------------------------------------------
Before test - 1
-------------------------------------------- Captured stdout call ---------------------------------------------
Test 1
____________________________________________ test_1[before_after0] ____________________________________________
-------------------------------------------- Captured stdout setup --------------------------------------------
Before test - 1
-------------------------------------------- Captured stdout call ---------------------------------------------
Test 1
------------------------------------------ Captured stdout teardown -------------------------------------------
After test - 2
____________________________________________ test_2[before_after0] ____________________________________________
-------------------------------------------- Captured stdout setup --------------------------------------------
Before test - a
____________________________________________ test_2[before_after0] ____________________________________________
-------------------------------------------- Captured stdout setup --------------------------------------------
Before test - a
-------------------------------------------- Captured stdout call ---------------------------------------------
Test 2
____________________________________________ test_2[before_after0] ____________________________________________
-------------------------------------------- Captured stdout setup --------------------------------------------
Before test - a
-------------------------------------------- Captured stdout call ---------------------------------------------
Test 2
------------------------------------------ Captured stdout teardown -------------------------------------------
After test - b

Results (0.03s):
       2 passed

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions