Skip to content
Draft

test #95

Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .github/workflows/pytest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,10 +34,10 @@ jobs:
- name: Run Pytest
run: |
launchable record build --name ${GITHUB_RUN_ID}
launchable record session --build ${GITHUB_RUN_ID} --test-suite pytest > session.txt
launchable record session --build ${GITHUB_RUN_ID} > session.txt

pytest --collect-only -q > test_list.txt
cat test_list.txt | launchable subset --session $(cat session.txt) --target 100% pytest > launchable-subset.txt
pytest tests/test.py --collect-only -q > test_list.txt
cat test_list.txt | launchable subset --session $(cat session.txt) --target 20% pytest > launchable-subset.txt

function record() {
# Record test results
Expand Down
6 changes: 3 additions & 3 deletions pytest/tests/conftest.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
def pytest_collection_modifyitems(session, config, items):
for item in items:
for marker in item.iter_markers():
item.user_properties.append(("name", marker.name))
item.user_properties.append(("args", marker.args))
item.user_properties.append(("kwargs", marker.kwargs))
item.user_properties.append(("marker_name", marker.name))
item.user_properties.append(("marker_args", str(marker.args)))
item.user_properties.append(("marker_kwargs", str(marker.kwargs)))
56 changes: 56 additions & 0 deletions pytest/tests/test.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
import pytest


class TestDeps:
set_this_thing = 0

# --- Independent tests for Launchable to potentially remove ---
def test_independent_a(self):
"""This test has no dependencies or ordering."""
assert True

def test_independent_b(self):
"""This test also has no dependencies or ordering."""
assert "hello" == "hello"
# -------------------------------------------------------------

@pytest.mark.order(1)
def test_dep_1(self):
TestDeps.set_this_thing += 1
assert TestDeps.set_this_thing == 1

@pytest.mark.order(2)
def test_dep_2(self):
TestDeps.set_this_thing += 1
assert TestDeps.set_this_thing == 2

@pytest.mark.order(3)
def test_dep_3(self):
TestDeps.set_this_thing += 1
assert TestDeps.set_this_thing == 3

@pytest.mark.order(4)
def test_dep_4(self):
TestDeps.set_this_thing += 1
assert TestDeps.set_this_thing == 4

@pytest.mark.order(5)
@pytest.mark.dependency()
def test_dep_5(self):
TestDeps.set_this_thing += 1
assert TestDeps.set_this_thing == 5

@pytest.mark.dependency(depends=["TestDeps::test_dep_5"])
def test_dep_6(self):
TestDeps.set_this_thing += 1
assert TestDeps.set_this_thing == 6

@pytest.mark.dependency(depends=["TestDeps::test_dep_6"])
def test_dep_7(self):
TestDeps.set_this_thing += 1
assert TestDeps.set_this_thing == 7

@pytest.mark.dependency(depends=["TestDeps::test_dep_7"])
def test_dep_8(self):
TestDeps.set_this_thing += 1
assert TestDeps.set_this_thing == 8