diff --git a/.github/workflows/django.yml b/.github/workflows/django.yml index f53fc493..0e90cf20 100644 --- a/.github/workflows/django.yml +++ b/.github/workflows/django.yml @@ -49,7 +49,7 @@ jobs: pipenv run python manage.py makemigrations --check --dry-run pipenv run python manage.py collectstatic --noinput - name: Run Tests - run: pipenv run pytest --cov -n 4 + run: pipenv run pytest --cov -n auto - uses: actions/upload-artifact@v2 if: failure() with: diff --git a/Pipfile b/Pipfile index 8da6b80a..eb95aee6 100644 --- a/Pipfile +++ b/Pipfile @@ -54,7 +54,6 @@ pytz = "~=2020.5" reportlab = "~=3.5.59" requests = "~=2.25.1" retrying = "~=1.3.3" -selenium = "~=3.141.0" simplejson = "~=3.17.2" six = "~=1.15.0" soupsieve = "~=2.1" @@ -80,12 +79,13 @@ sentry-sdk = "*" diff-match-patch = "*" [dev-packages] +selenium = "~=3.141.0" pycodestyle = "*" coveralls = "*" django-coverage-plugin = "*" pytest-cov = "*" pytest-django = "*" -pytest-xdist = "*" +pytest-xdist = {extras = ["psutil"], version = "==2.2.0"} pluggy = "*" pytest-splinter = "*" pytest = "*" diff --git a/Pipfile.lock b/Pipfile.lock index 648e6c33..d1dac1f8 100644 --- a/Pipfile.lock +++ b/Pipfile.lock @@ -1,7 +1,7 @@ { "_meta": { "hash": { - "sha256": "472e927edcfd6141d88f3be8c51255c0de63d42987382aa472cf68557a00b089" + "sha256": "b6347b3cca2661389e6a099012804521918de31cda4fabe19ab0986ba3ced641" }, "pipfile-spec": 6, "requires": { @@ -665,7 +665,6 @@ "sha256:2d7131d7bc5a5b99a2d9b04aaf2612c411b03b8ca1b1ee8d3de5845a9be2cb3c", "sha256:deaf32b60ad91a4611b98d8002757f29e6f2c2d5fcaf202e1c9ad06d6772300d" ], - "index": "pypi", "version": "==3.141.0" }, "sentry-sdk": { @@ -1211,6 +1210,40 @@ "markers": "python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'", "version": "==0.13.1" }, + "psutil": { + "hashes": [ + "sha256:0066a82f7b1b37d334e68697faba68e5ad5e858279fd6351c8ca6024e8d6ba64", + "sha256:02b8292609b1f7fcb34173b25e48d0da8667bc85f81d7476584d889c6e0f2131", + "sha256:0ae6f386d8d297177fd288be6e8d1afc05966878704dad9847719650e44fc49c", + "sha256:0c9ccb99ab76025f2f0bbecf341d4656e9c1351db8cc8a03ccd62e318ab4b5c6", + "sha256:0dd4465a039d343925cdc29023bb6960ccf4e74a65ad53e768403746a9207023", + "sha256:12d844996d6c2b1d3881cfa6fa201fd635971869a9da945cf6756105af73d2df", + "sha256:1bff0d07e76114ec24ee32e7f7f8d0c4b0514b3fae93e3d2aaafd65d22502394", + "sha256:245b5509968ac0bd179287d91210cd3f37add77dad385ef238b275bad35fa1c4", + "sha256:28ff7c95293ae74bf1ca1a79e8805fcde005c18a122ca983abf676ea3466362b", + "sha256:36b3b6c9e2a34b7d7fbae330a85bf72c30b1c827a4366a07443fc4b6270449e2", + "sha256:52de075468cd394ac98c66f9ca33b2f54ae1d9bff1ef6b67a212ee8f639ec06d", + "sha256:5da29e394bdedd9144c7331192e20c1f79283fb03b06e6abd3a8ae45ffecee65", + "sha256:61f05864b42fedc0771d6d8e49c35f07efd209ade09a5afe6a5059e7bb7bf83d", + "sha256:6223d07a1ae93f86451d0198a0c361032c4c93ebd4bf6d25e2fb3edfad9571ef", + "sha256:6323d5d845c2785efb20aded4726636546b26d3b577aded22492908f7c1bdda7", + "sha256:6ffe81843131ee0ffa02c317186ed1e759a145267d54fdef1bc4ea5f5931ab60", + "sha256:74f2d0be88db96ada78756cb3a3e1b107ce8ab79f65aa885f76d7664e56928f6", + "sha256:74fb2557d1430fff18ff0d72613c5ca30c45cdbfcddd6a5773e9fc1fe9364be8", + "sha256:90d4091c2d30ddd0a03e0b97e6a33a48628469b99585e2ad6bf21f17423b112b", + "sha256:90f31c34d25b1b3ed6c40cdd34ff122b1887a825297c017e4cbd6796dd8b672d", + "sha256:99de3e8739258b3c3e8669cb9757c9a861b2a25ad0955f8e53ac662d66de61ac", + "sha256:c6a5fd10ce6b6344e616cf01cc5b849fa8103fbb5ba507b6b2dee4c11e84c935", + "sha256:ce8b867423291cb65cfc6d9c4955ee9bfc1e21fe03bb50e177f2b957f1c2469d", + "sha256:d225cd8319aa1d3c85bf195c4e07d17d3cd68636b8fc97e6cf198f782f99af28", + "sha256:ea313bb02e5e25224e518e4352af4bf5e062755160f77e4b1767dd5ccb65f876", + "sha256:ea372bcc129394485824ae3e3ddabe67dc0b118d262c568b4d2602a7070afdb0", + "sha256:f4634b033faf0d968bb9220dd1c793b897ab7f1189956e1aa9eae752527127d3", + "sha256:fcc01e900c1d7bee2a37e5d6e4f9194760a93597c97fee89c4ae51701de03563" + ], + "index": "pypi", + "version": "==5.8.0" + }, "py": { "hashes": [ "sha256:21b81bda15b66ef5e1a777a21c4dcd9c20ad3efd0b3f817e7a809035269e1bd3", @@ -1275,12 +1308,15 @@ "version": "==3.3.1" }, "pytest-xdist": { + "extras": [ + "psutil" + ], "hashes": [ - "sha256:2447a1592ab41745955fb870ac7023026f20a5f0bfccf1b52a879bd193d46450", - "sha256:718887296892f92683f6a51f25a3ae584993b06f7076ce1e1fd482e59a8220a2" + "sha256:1d8edbb1a45e8e1f8e44b1260583107fc23f8bc8da6d18cb331ff61d41258ecf", + "sha256:f127e11e84ad37cc1de1088cb2990f3c354630d428af3f71282de589c5bb779b" ], "index": "pypi", - "version": "==2.2.1" + "version": "==2.2.0" }, "requests": { "hashes": [ @@ -1295,7 +1331,6 @@ "sha256:2d7131d7bc5a5b99a2d9b04aaf2612c411b03b8ca1b1ee8d3de5845a9be2cb3c", "sha256:deaf32b60ad91a4611b98d8002757f29e6f2c2d5fcaf202e1c9ad06d6772300d" ], - "index": "pypi", "version": "==3.141.0" }, "six": { diff --git a/conftest.py b/conftest.py index 335d6057..b6032b85 100644 --- a/conftest.py +++ b/conftest.py @@ -24,17 +24,11 @@ def pytest_configure(): @pytest.fixture -def profile(db): - profile = Profile( +def logged_in_browser(live_server, browser): + profile, created = Profile.objects.get_or_create( username="EventTest", first_name="Event", last_name="Test", initials="ETU", is_superuser=True) profile.set_password("EventTestPassword") profile.save() - yield profile - profile.delete() - - -@pytest.fixture -def logged_in_browser(live_server, browser, profile): login_page = pages.LoginPage(browser.driver, live_server.url).open() login_page.login("EventTest", "EventTestPassword") return browser