From 6c9e360927b27de54f395a36aef4cd322e034d47 Mon Sep 17 00:00:00 2001 From: Arona Jones Date: Sun, 14 Feb 2021 22:50:22 +0000 Subject: [PATCH] More regions for checklist interaction tests --- .github/workflows/django.yml | 14 ++- Pipfile | 1 + Pipfile.lock | 192 ++++++++++++++++++++++++++++++++- RIGS/tests/pages.py | 23 +++- RIGS/tests/test_interaction.py | 18 ++-- conftest.py | 6 +- templates/partials/button.html | 6 +- 7 files changed, 236 insertions(+), 24 deletions(-) diff --git a/.github/workflows/django.yml b/.github/workflows/django.yml index 0e90cf20..4d96fa51 100644 --- a/.github/workflows/django.yml +++ b/.github/workflows/django.yml @@ -10,12 +10,16 @@ jobs: build: if: "!contains(github.event.head_commit.message, '[ci skip]')" runs-on: ubuntu-latest - # strategy: - # matrix: - # browser: ['chrome'] + strategy: + matrix: + python: [3.9] + experimental: [false] + include: + - python: 3.10.0-alpha.5 + experimental: true + continue-on-error: ${{ matrix.experimental }} env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - # BROWSER: ${{ matrix.browser }} steps: - uses: actions/checkout@v2 - name: Cache Static Files @@ -31,7 +35,7 @@ jobs: - name: Set up Python uses: actions/setup-python@v2 with: - python-version: 3.9 + python-version: ${{ matrix.python }} - name: Cache python deps uses: actions/cache@v2 with: diff --git a/Pipfile b/Pipfile index eb95aee6..f014d216 100644 --- a/Pipfile +++ b/Pipfile @@ -89,6 +89,7 @@ pytest-xdist = {extras = ["psutil"], version = "==2.2.0"} pluggy = "*" pytest-splinter = "*" pytest = "*" +pypom = {extras = ["splinter"], version = "*"} [requires] python_version = "3.9" diff --git a/Pipfile.lock b/Pipfile.lock index d1dac1f8..dfe8e422 100644 --- a/Pipfile.lock +++ b/Pipfile.lock @@ -1,7 +1,7 @@ { "_meta": { "hash": { - "sha256": "b6347b3cca2661389e6a099012804521918de31cda4fabe19ab0986ba3ced641" + "sha256": "0753619e52ce97fd30a18327bdb679cc1ba3915a3fa617d29947c381d3929104" }, "pipfile-spec": 6, "requires": { @@ -1268,6 +1268,14 @@ "index": "pypi", "version": "==2.4.7" }, + "pypom": { + "hashes": [ + "sha256:4bdd57fceb72d7e6a3645cf6c9322f490d9cfb5d777eac2c851a3b658b813939", + "sha256:6772ec99f0a21a5bdc8c092007a8c813ed18359e67ed70258bbb233df5e28829" + ], + "index": "pypi", + "version": "==2.2.0" + }, "pytest": { "hashes": [ "sha256:9d1edf9e7d0b84d72ea3dbcdfd22b35fb543a5e8f2a60092dd578936bf63d7f9", @@ -1363,6 +1371,188 @@ ], "index": "pypi", "version": "==1.26.3" + }, + "zope.component": { + "hashes": [ + "sha256:607628e4c84f7887a69a958542b5c304663e726b73aba0882e3a3f059bff14f3", + "sha256:91628918218b3e6f6323de2a7b845e09ddc5cae131c034896c051b084bba3c92" + ], + "index": "pypi", + "version": "==4.6.2" + }, + "zope.deferredimport": { + "hashes": [ + "sha256:57b2345e7b5eef47efcd4f634ff16c93e4265de3dcf325afc7315ade48d909e1", + "sha256:9a0c211df44aa95f1c4e6d2626f90b400f56989180d3ef96032d708da3d23e0a" + ], + "index": "pypi", + "version": "==4.3.1" + }, + "zope.deprecation": { + "hashes": [ + "sha256:0d453338f04bacf91bbfba545d8bcdf529aa829e67b705eac8c1a7fdce66e2df", + "sha256:f1480b74995958b24ce37b0ef04d3663d2683e5d6debc96726eff18acf4ea113" + ], + "index": "pypi", + "version": "==4.4.0" + }, + "zope.event": { + "hashes": [ + "sha256:2666401939cdaa5f4e0c08cf7f20c9b21423b95e88f4675b1443973bdb080c42", + "sha256:5e76517f5b9b119acf37ca8819781db6c16ea433f7e2062c4afc2b6fbedb1330" + ], + "index": "pypi", + "version": "==4.5.0" + }, + "zope.hookable": { + "hashes": [ + "sha256:0194b9b9e7f614abba60c90b231908861036578297515d3d6508eb10190f266d", + "sha256:0c2977473918bdefc6fa8dfb311f154e7f13c6133957fe649704deca79b92093", + "sha256:17b8bdb3b77e03a152ca0d5ca185a7ae0156f5e5a2dbddf538676633a1f7380f", + "sha256:29d07681a78042cdd15b268ae9decffed9ace68a53eebeb61d65ae931d158841", + "sha256:36fb1b35d1150267cb0543a1ddd950c0bc2c75ed0e6e92e3aaa6ac2e29416cb7", + "sha256:3aed60c2bb5e812bbf9295c70f25b17ac37c233f30447a96c67913ba5073642f", + "sha256:3cac1565cc768911e72ca9ec4ddf5c5109e1fef0104f19f06649cf1874943b60", + "sha256:3d4bc0cc4a37c3cd3081063142eeb2125511db3c13f6dc932d899c512690378e", + "sha256:3f73096f27b8c28be53ffb6604f7b570fbbb82f273c6febe5f58119009b59898", + "sha256:522d1153d93f2d48aa0bd9fb778d8d4500be2e4dcf86c3150768f0e3adbbc4ef", + "sha256:523d2928fb7377bbdbc9af9c0b14ad73e6eaf226349f105733bdae27efd15b5a", + "sha256:5848309d4fc5c02150a45e8f8d2227e5bfda386a508bbd3160fed7c633c5a2fa", + "sha256:6781f86e6d54a110980a76e761eb54590630fd2af2a17d7edf02a079d2646c1d", + "sha256:6fd27921ebf3aaa945fa25d790f1f2046204f24dba4946f82f5f0a442577c3e9", + "sha256:70d581862863f6bf9e175e85c9d70c2d7155f53fb04dcdb2f73cf288ca559a53", + "sha256:81867c23b0dc66c8366f351d00923f2bc5902820a24c2534dfd7bf01a5879963", + "sha256:81db29edadcbb740cd2716c95a297893a546ed89db1bfe9110168732d7f0afdd", + "sha256:86bd12624068cea60860a0759af5e2c3adc89c12aef6f71cf12f577e28deefe3", + "sha256:9c184d8f9f7a76e1ced99855ccf390ffdd0ec3765e5cbf7b9cada600accc0a1e", + "sha256:acc789e8c29c13555e43fe4bf9fcd15a65512c9645e97bbaa5602e3201252b02", + "sha256:afaa740206b7660d4cc3b8f120426c85761f51379af7a5b05451f624ad12b0af", + "sha256:b5f5fa323f878bb16eae68ea1ba7f6c0419d4695d0248bed4b18f51d7ce5ab85", + "sha256:bd89e0e2c67bf4ac3aca2a19702b1a37269fb1923827f68324ac2e7afd6e3406", + "sha256:c212de743283ec0735db24ec6ad913758df3af1b7217550ff270038062afd6ae", + "sha256:ca553f524293a0bdea05e7f44c3e685e4b7b022cb37d87bc4a3efa0f86587a8d", + "sha256:cab67065a3db92f636128d3157cc5424a145f82d96fb47159c539132833a6d36", + "sha256:d3b3b3eedfdbf6b02898216e85aa6baf50207f4378a2a6803d6d47650cd37031", + "sha256:d9f4a5a72f40256b686d31c5c0b1fde503172307beb12c1568296e76118e402c", + "sha256:df5067d87aaa111ed5d050e1ee853ba284969497f91806efd42425f5348f1c06", + "sha256:e2587644812c6138f05b8a41594a8337c6790e3baf9a01915e52438c13fc6bef", + "sha256:e27fd877662db94f897f3fd532ef211ca4901eb1a70ba456f15c0866a985464a", + "sha256:e427ebbdd223c72e06ba94c004bb04e996c84dec8a0fa84e837556ae145c439e", + "sha256:e583ad4309c203ef75a09d43434cf9c2b4fa247997ecb0dcad769982c39411c7", + "sha256:e760b2bc8ece9200804f0c2b64d10147ecaf18455a2a90827fbec4c9d84f3ad5", + "sha256:ea9a9cc8bcc70e18023f30fa2f53d11ae069572a162791224e60cd65df55fb69", + "sha256:ecb3f17dce4803c1099bd21742cd126b59817a4e76a6544d31d2cca6e30dbffd", + "sha256:ed794e3b3de42486d30444fb60b5561e724ee8a2d1b17b0c2e0f81e3ddaf7a87", + "sha256:ee885d347279e38226d0a437b6a932f207f691c502ee565aba27a7022f1285df", + "sha256:fd5e7bc5f24f7e3d490698f7b854659a9851da2187414617cd5ed360af7efd63", + "sha256:fe45f6870f7588ac7b2763ff1ce98cce59369717afe70cc353ec5218bc854bcc" + ], + "index": "pypi", + "version": "==5.0.1" + }, + "zope.interface": { + "hashes": [ + "sha256:05a97ba92c1c7c26f25c9f671aa1ef85ffead6cdad13770e5b689cf983adc7e1", + "sha256:07d61722dd7d85547b7c6b0f5486b4338001fab349f2ac5cabc0b7182eb3425d", + "sha256:0a990dcc97806e5980bbb54b2e46b9cde9e48932d8e6984daf71ef1745516123", + "sha256:150e8bcb7253a34a4535aeea3de36c0bb3b1a6a47a183a95d65a194b3e07f232", + "sha256:1743bcfe45af8846b775086471c28258f4c6e9ee8ef37484de4495f15a98b549", + "sha256:1b5f6c8fff4ed32aa2dd43e84061bc8346f32d3ba6ad6e58f088fe109608f102", + "sha256:21e49123f375703cf824214939d39df0af62c47d122d955b2a8d9153ea08cfd5", + "sha256:21f579134a47083ffb5ddd1307f0405c91aa8b61ad4be6fd5af0171474fe0c45", + "sha256:27c267dc38a0f0079e96a2945ee65786d38ef111e413c702fbaaacbab6361d00", + "sha256:299bde0ab9e5c4a92f01a152b7fbabb460f31343f1416f9b7b983167ab1e33bc", + "sha256:2ab88d8f228f803fcb8cb7d222c579d13dab2d3622c51e8cf321280da01102a7", + "sha256:2ced4c35061eea623bc84c7711eedce8ecc3c2c51cd9c6afa6290df3bae9e104", + "sha256:2dcab01c660983ba5e5a612e0c935141ccbee67d2e2e14b833e01c2354bd8034", + "sha256:32546af61a9a9b141ca38d971aa6eb9800450fa6620ce6323cc30eec447861f3", + "sha256:32b40a4c46d199827d79c86bb8cb88b1bbb764f127876f2cb6f3a47f63dbada3", + "sha256:3cc94c69f6bd48ed86e8e24f358cb75095c8129827df1298518ab860115269a4", + "sha256:42b278ac0989d6f5cf58d7e0828ea6b5951464e3cf2ff229dd09a96cb6ba0c86", + "sha256:495b63fd0302f282ee6c1e6ea0f1c12cb3d1a49c8292d27287f01845ff252a96", + "sha256:4af87cdc0d4b14e600e6d3d09793dce3b7171348a094ba818e2a68ae7ee67546", + "sha256:4b94df9f2fdde7b9314321bab8448e6ad5a23b80542dcab53e329527d4099dcb", + "sha256:4c48ddb63e2b20fba4c6a2bf81b4d49e99b6d4587fb67a6cd33a2c1f003af3e3", + "sha256:4df9afd17bd5477e9f8c8b6bb8507e18dd0f8b4efe73bb99729ff203279e9e3b", + "sha256:518950fe6a5d56f94ba125107895f938a4f34f704c658986eae8255edb41163b", + "sha256:538298e4e113ccb8b41658d5a4b605bebe75e46a30ceca22a5a289cf02c80bec", + "sha256:55465121e72e208a7b69b53de791402affe6165083b2ea71b892728bd19ba9ae", + "sha256:588384d70a0f19b47409cfdb10e0c27c20e4293b74fc891df3d8eb47782b8b3e", + "sha256:6278c080d4afffc9016e14325f8734456831124e8c12caa754fd544435c08386", + "sha256:64ea6c221aeee4796860405e1aedec63424cda4202a7ad27a5066876db5b0fd2", + "sha256:681dbb33e2b40262b33fd383bae63c36d33fd79fa1a8e4092945430744ffd34a", + "sha256:6936aa9da390402d646a32a6a38d5409c2d2afb2950f045a7d02ab25a4e7d08d", + "sha256:778d0ec38bbd288b150a3ae363c8ffd88d2207a756842495e9bffd8a8afbc89a", + "sha256:8251f06a77985a2729a8bdbefbae79ee78567dddc3acbd499b87e705ca59fe24", + "sha256:83b4aa5344cce005a9cff5d0321b2e318e871cc1dfc793b66c32dd4f59e9770d", + "sha256:844fad925ac5c2ad4faaceb3b2520ad016b5280105c6e16e79838cf951903a7b", + "sha256:8ceb3667dd13b8133f2e4d637b5b00f240f066448e2aa89a41f4c2d78a26ce50", + "sha256:92dc0fb79675882d0b6138be4bf0cec7ea7c7eede60aaca78303d8e8dbdaa523", + "sha256:9789bd945e9f5bd026ed3f5b453d640befb8b1fc33a779c1fe8d3eb21fe3fb4a", + "sha256:a2b6d6eb693bc2fc6c484f2e5d93bd0b0da803fa77bf974f160533e555e4d095", + "sha256:aab9f1e34d810feb00bf841993552b8fcc6ae71d473c505381627143d0018a6a", + "sha256:abb61afd84f23099ac6099d804cdba9bd3b902aaaded3ffff47e490b0a495520", + "sha256:adf9ee115ae8ff8b6da4b854b4152f253b390ba64407a22d75456fe07dcbda65", + "sha256:aedc6c672b351afe6dfe17ff83ee5e7eb6ed44718f879a9328a68bdb20b57e11", + "sha256:b7a00ecb1434f8183395fac5366a21ee73d14900082ca37cf74993cf46baa56c", + "sha256:ba32f4a91c1cb7314c429b03afbf87b1fff4fb1c8db32260e7310104bd77f0c7", + "sha256:cbd0f2cbd8689861209cd89141371d3a22a11613304d1f0736492590aa0ab332", + "sha256:e4bc372b953bf6cec65a8d48482ba574f6e051621d157cf224227dbb55486b1e", + "sha256:eccac3d9aadc68e994b6d228cb0c8919fc47a5350d85a1b4d3d81d1e98baf40c", + "sha256:efd550b3da28195746bb43bd1d815058181a7ca6d9d6aa89dd37f5eefe2cacb7", + "sha256:efef581c8ba4d990770875e1a2218e856849d32ada2680e53aebc5d154a17e20", + "sha256:f057897711a630a0b7a6a03f1acf379b6ba25d37dc5dc217a97191984ba7f2fc", + "sha256:f37d45fab14ffef9d33a0dc3bc59ce0c5313e2253323312d47739192da94f5fd", + "sha256:f44906f70205d456d503105023041f1e63aece7623b31c390a0103db4de17537" + ], + "index": "pypi", + "version": "==5.2.0" + }, + "zope.proxy": { + "hashes": [ + "sha256:00573dfa755d0703ab84bb23cb6ecf97bb683c34b340d4df76651f97b0bab068", + "sha256:092049280f2848d2ba1b57b71fe04881762a220a97b65288bcb0968bb199ec30", + "sha256:0cbd27b4d3718b5ec74fc65ffa53c78d34c65c6fd9411b8352d2a4f855220cf1", + "sha256:17fc7e16d0c81f833a138818a30f366696653d521febc8e892858041c4d88785", + "sha256:19577dfeb70e8a67249ba92c8ad20589a1a2d86a8d693647fa8385408a4c17b0", + "sha256:207aa914576b1181597a1516e1b90599dc690c095343ae281b0772e44945e6a4", + "sha256:219a7db5ed53e523eb4a4769f13105118b6d5b04ed169a283c9775af221e231f", + "sha256:2b50ea79849e46b5f4f2b0247a3687505d32d161eeb16a75f6f7e6cd81936e43", + "sha256:5903d38362b6c716e66bbe470f190579c530a5baf03dbc8500e5c2357aa569a5", + "sha256:5c24903675e271bd688c6e9e7df5775ac6b168feb87dbe0e4bcc90805f21b28f", + "sha256:5ef6bc5ed98139e084f4e91100f2b098a0cd3493d4e76f9d6b3f7b95d7ad0f06", + "sha256:61b55ae3c23a126a788b33ffb18f37d6668e79a05e756588d9e4d4be7246ab1c", + "sha256:63ddb992931a5e616c87d3d89f5a58db086e617548005c7f9059fac68c03a5cc", + "sha256:6943da9c09870490dcfd50c4909c0cc19f434fa6948f61282dc9cb07bcf08160", + "sha256:6ad40f85c1207803d581d5d75e9ea25327cd524925699a83dfc03bf8e4ba72b7", + "sha256:6b44433a79bdd7af0e3337bd7bbcf53dd1f9b0fa66bf21bcb756060ce32a96c1", + "sha256:6bbaa245015d933a4172395baad7874373f162955d73612f0b66b6c2c33b6366", + "sha256:7007227f4ea85b40a2f5e5a244479f6a6dfcf906db9b55e812a814a8f0e2c28d", + "sha256:74884a0aec1f1609190ec8b34b5d58fb3b5353cf22b96161e13e0e835f13518f", + "sha256:7d25fe5571ddb16369054f54cdd883f23de9941476d97f2b92eb6d7d83afe22d", + "sha256:7e162bdc5e3baad26b2262240be7d2bab36991d85a6a556e48b9dfb402370261", + "sha256:814d62678dc3a30f4aa081982d830b7c342cf230ffc9d030b020cb154eeebf9e", + "sha256:8878a34c5313ee52e20aa50b03138af8d472bae465710fb954d133a9bfd3c38d", + "sha256:a66a0d94e5b081d5d695e66d6667e91e74d79e273eee95c1747717ba9cb70792", + "sha256:a69f5cbf4addcfdf03dda564a671040127a6b7c34cf9fe4973582e68441b63fa", + "sha256:b00f9f0c334d07709d3f73a7cb8ae63c6ca1a90c790a63b5e7effa666ef96021", + "sha256:b6ed71e4a7b4690447b626f499d978aa13197a0e592950e5d7020308f6054698", + "sha256:bdf5041e5851526e885af579d2f455348dba68d74f14a32781933569a327fddf", + "sha256:be034360dd34e62608419f86e799c97d389c10a0e677a25f236a971b2f40dac9", + "sha256:cc8f590a5eed30b314ae6b0232d925519ade433f663de79cc3783e4b10d662ba", + "sha256:cd7a318a15fe6cc4584bf3c4426f092ed08c0fd012cf2a9173114234fe193e11", + "sha256:cf19b5f63a59c20306e034e691402b02055c8f4e38bf6792c23cad489162a642", + "sha256:cfc781ce442ec407c841e9aa51d0e1024f72b6ec34caa8fdb6ef9576d549acf2", + "sha256:dea9f6f8633571e18bc20cad83603072e697103a567f4b0738d52dd0211b4527", + "sha256:e4a86a1d5eb2cce83c5972b3930c7c1eac81ab3508464345e2b8e54f119d5505", + "sha256:e7106374d4a74ed9ff00c46cc00f0a9f06a0775f8868e423f85d4464d2333679", + "sha256:e98a8a585b5668aa9e34d10f7785abf9545fe72663b4bfc16c99a115185ae6a5", + "sha256:f64840e68483316eb58d82c376ad3585ca995e69e33b230436de0cdddf7363f9", + "sha256:f8f4b0a9e6683e43889852130595c8854d8ae237f2324a053cdd884de936aa9b", + "sha256:fc45a53219ed30a7f670a6d8c98527af0020e6fd4ee4c0a8fb59f147f06d816c" + ], + "index": "pypi", + "version": "==4.3.5" } } } diff --git a/RIGS/tests/pages.py b/RIGS/tests/pages.py index 3d473cd1..15986011 100644 --- a/RIGS/tests/pages.py +++ b/RIGS/tests/pages.py @@ -276,9 +276,28 @@ class CreateEventChecklist(FormPage): return '{event_id}' not in self.driver.current_url -class EditEventChecklist(CreateEventChecklist, **url_kwargs): - URL_TEMPLATE = reverse('ec_edit', url_kwargs['pk']) +class EditEventChecklist(CreateEventChecklist): + URL_TEMPLATE = '/event/checklist/{pk}/edit' + _vehicle_row_locator = ('xpath', "//tr[@id[starts-with(., 'vehicle') and not(contains(.,'new'))]]") + _crew_row_locator = ('xpath', "//tr[@id[starts-with(., 'crew') and not(contains(. 'new'))]]") + @property + def vehicles(self): + return [ + self.VehicleRow(self, el) for el in self.find_elements(*self._vehicle_row_locator) + ] + + class VehicleRow(Region): + _name_locator = ('xpath', "//input[@id[starts-with(., 'vehicle')]") + _select_locator = ('xpath', "//div[contains(@class, 'bootstrap-select')]") + + @property + def name(self): + return regions.TextBox(self, *_name_locator) + + @property + def vehicle(self): + return regions.BootstrapSelect(self, self.find_element(*self._select_locator)) class GenericList(BasePage): _search_selector = (By.CSS_SELECTOR, 'div.input-group:nth-child(2) > input:nth-child(1)') diff --git a/RIGS/tests/test_interaction.py b/RIGS/tests/test_interaction.py index 40022b05..ab9256af 100644 --- a/RIGS/tests/test_interaction.py +++ b/RIGS/tests/test_interaction.py @@ -737,16 +737,14 @@ def test_ec_create_medium(logged_in_browser, live_server, admin_user, medium_ra) def test_ec_create_vehicle(logged_in_browser, live_server, admin_user, checklist): page = pages.EditEventChecklist(logged_in_browser.driver, live_server.url, pk=checklist.pk).open() page.add_vehicle() - + assert len(page.vehicles) == 1 vehicle_name = 'Brian' - logged_in_browser.driver.find_element(By.XPATH, '//*[@name="vehicle_-1"]').send_keys(vehicle_name) - region = base_regions.BootstrapSelectElement(page, logged_in_browser.find_by(By.XPATH, '//tr[@id="vehicles_-1"]//div[contains(@class, "bootstrap-select")]')) - region.search(profile.name) - + page.vehicles[0].name = vehicle_name + page.vehicles[0].vehicle.search(admin_user.name) page.submit() assert page.success + # Check data is correct checklist.refresh_from_db() - vehicle = models.EventChecklistVehicle.objects.get(checklist=checklist.pk) assert vehicle_name == vehicle.vehicle @@ -755,15 +753,15 @@ def test_ec_create_crew(logged_in_browser, live_server, admin_user, checklist): page = pages.EditEventChecklist(logged_in_browser.driver, live_server.url, pk=checklist.pk).open() page.add_crew() role = "MIC" - crew_select = base_regions.BootstrapSelectElement(page, logged_in_browser.find_by(By.XPATH, '//tr[@id="crew_-1"]//div[contains(@class, "bootstrap-select")]')) - start_time = base_regions.DateTimePicker(page, logged_in_browser.find_by(By.XPATH, '//*[@name="start_-1"]')) - end_time = base_regions.DateTimePicker(page, logged_in_browser.find_by(By.XPATH, '//*[@name="end_-1"]')) + crew_select = base_regions.BootstrapSelectElement(page, logged_in_browser.find_by_xpath('//tr[@id="crew_-1"]//div[contains(@class, "bootstrap-select")]')[0]) + start_time = base_regions.DateTimePicker(page, logged_in_browser.find_by_xpath('//*[@name="start_-1"]')[0]) + end_time = base_regions.DateTimePicker(page, logged_in_browser.find_by_xpath('//*[@name="end_-1"]')[0]) start_time.set_value(timezone.make_aware(datetime.datetime(2015, 1, 1, 9, 0))) # TODO Test validation of end before start end_time.set_value(timezone.make_aware(datetime.datetime(2015, 1, 1, 10, 30))) crew_select.search(admin_user.name) - logged_in_browser.driver.find_element(By.XPATH, '//*[@name="role_-1"]').send_keys(role) + logged_in_browser.find_by_xpath('//*[@name="role_-1"]').send_keys(role) page.submit() assert page.success diff --git a/conftest.py b/conftest.py index cdb5dfd9..21d75d62 100644 --- a/conftest.py +++ b/conftest.py @@ -25,14 +25,14 @@ def pytest_configure(): @pytest.fixture def logged_in_browser(live_server, browser, db): - profile, created = Profile.objects.get_or_create( + profile = Profile.objects.create( username="EventTest", first_name="Event", last_name="Test", initials="ETU", is_superuser=True) profile.set_password("EventTestPassword") profile.save() login_page = pages.LoginPage(browser.driver, live_server.url).open() login_page.login("EventTest", "EventTestPassword") - return browser - + yield browser + profile.delete() @pytest.fixture(scope='session') def splinter_driver_kwargs(): diff --git a/templates/partials/button.html b/templates/partials/button.html index d69117bc..e13f527a 100644 --- a/templates/partials/button.html +++ b/templates/partials/button.html @@ -1,7 +1,7 @@ {% if submit %} - + {% elif pk %} - {{ text }} + {{ text }} {% else %} - {{ text }} + {{ text }} {% endif %}