diff options
| -rw-r--r-- | bitbake/lib/toaster/tests/functional/test_project_config.py | 50 |
1 files changed, 4 insertions, 46 deletions
diff --git a/bitbake/lib/toaster/tests/functional/test_project_config.py b/bitbake/lib/toaster/tests/functional/test_project_config.py index dbee36aa4e..41149e5e55 100644 --- a/bitbake/lib/toaster/tests/functional/test_project_config.py +++ b/bitbake/lib/toaster/tests/functional/test_project_config.py | |||
| @@ -7,7 +7,6 @@ | |||
| 7 | # | 7 | # |
| 8 | 8 | ||
| 9 | import string | 9 | import string |
| 10 | import random | ||
| 11 | import pytest | 10 | import pytest |
| 12 | from django.urls import reverse | 11 | from django.urls import reverse |
| 13 | from selenium.webdriver import Keys | 12 | from selenium.webdriver import Keys |
| @@ -18,9 +17,6 @@ from selenium.webdriver.common.by import By | |||
| 18 | 17 | ||
| 19 | from .utils import get_projectId_from_url | 18 | from .utils import get_projectId_from_url |
| 20 | 19 | ||
| 21 | |||
| 22 | @pytest.mark.django_db | ||
| 23 | @pytest.mark.order("last") | ||
| 24 | class TestProjectConfig(SeleniumFunctionalTestCase): | 20 | class TestProjectConfig(SeleniumFunctionalTestCase): |
| 25 | project_id = None | 21 | project_id = None |
| 26 | PROJECT_NAME = 'TestProjectConfig' | 22 | PROJECT_NAME = 'TestProjectConfig' |
| @@ -28,42 +24,6 @@ class TestProjectConfig(SeleniumFunctionalTestCase): | |||
| 28 | INVALID_PATH_CHAR_TEXT = 'The directory path cannot include spaces or ' \ | 24 | INVALID_PATH_CHAR_TEXT = 'The directory path cannot include spaces or ' \ |
| 29 | 'any of these characters' | 25 | 'any of these characters' |
| 30 | 26 | ||
| 31 | def _create_project(self, project_name): | ||
| 32 | """ Create/Test new project using: | ||
| 33 | - Project Name: Any string | ||
| 34 | - Release: Any string | ||
| 35 | - Merge Toaster settings: True or False | ||
| 36 | """ | ||
| 37 | self.get(reverse('newproject')) | ||
| 38 | self.wait_until_visible('#new-project-name', poll=2) | ||
| 39 | self.find("#new-project-name").send_keys(project_name) | ||
| 40 | select = Select(self.find("#projectversion")) | ||
| 41 | select.select_by_value('3') | ||
| 42 | |||
| 43 | # check merge toaster settings | ||
| 44 | checkbox = self.find('.checkbox-mergeattr') | ||
| 45 | if not checkbox.is_selected(): | ||
| 46 | checkbox.click() | ||
| 47 | |||
| 48 | if self.PROJECT_NAME != 'TestProjectConfig': | ||
| 49 | # Reset project name if it's not the default one | ||
| 50 | self.PROJECT_NAME = 'TestProjectConfig' | ||
| 51 | |||
| 52 | self.find("#create-project-button").click() | ||
| 53 | |||
| 54 | try: | ||
| 55 | self.wait_until_visible('#hint-error-project-name', poll=2) | ||
| 56 | url = reverse('project', args=(TestProjectConfig.project_id, )) | ||
| 57 | self.get(url) | ||
| 58 | self.wait_until_visible('#config-nav', poll=3) | ||
| 59 | except TimeoutException: | ||
| 60 | self.wait_until_visible('#config-nav', poll=3) | ||
| 61 | |||
| 62 | def _random_string(self, length): | ||
| 63 | return ''.join( | ||
| 64 | random.choice(string.ascii_letters) for _ in range(length) | ||
| 65 | ) | ||
| 66 | |||
| 67 | def _get_config_nav_item(self, index): | 27 | def _get_config_nav_item(self, index): |
| 68 | config_nav = self.find('#config-nav') | 28 | config_nav = self.find('#config-nav') |
| 69 | return config_nav.find_elements(By.TAG_NAME, 'li')[index] | 29 | return config_nav.find_elements(By.TAG_NAME, 'li')[index] |
| @@ -72,12 +32,10 @@ class TestProjectConfig(SeleniumFunctionalTestCase): | |||
| 72 | """ Navigate to project BitBake variables page """ | 32 | """ Navigate to project BitBake variables page """ |
| 73 | # check if the menu is displayed | 33 | # check if the menu is displayed |
| 74 | if TestProjectConfig.project_id is None: | 34 | if TestProjectConfig.project_id is None: |
| 75 | self._create_project(project_name=self._random_string(10)) | 35 | TestProjectConfig.project_id = self.create_new_project(self.PROJECT_NAME, '3', None, True) |
| 76 | current_url = self.driver.current_url | 36 | |
| 77 | TestProjectConfig.project_id = get_projectId_from_url(current_url) | 37 | url = reverse('projectconf', args=(TestProjectConfig.project_id,)) |
| 78 | else: | 38 | self.get(url) |
| 79 | url = reverse('projectconf', args=(TestProjectConfig.project_id,)) | ||
| 80 | self.get(url) | ||
| 81 | self.wait_until_visible('#config-nav', poll=3) | 39 | self.wait_until_visible('#config-nav', poll=3) |
| 82 | bbv_page_link = self._get_config_nav_item(9) | 40 | bbv_page_link = self._get_config_nav_item(9) |
| 83 | bbv_page_link.click() | 41 | bbv_page_link.click() |
