aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlassane Yattara <alassane.yattara@savoirfairelinux.com>2023-11-01 22:58:00 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2023-11-09 14:46:25 +0000
commit346178af84ed0a24b571a1f482d76cf1b33d9560 (patch)
tree2e041e3beef09c00b40fbf37b69ab311458301c4
parent12d7f8b08f34ff5e7ef81c89660c06f46d559d43 (diff)
downloadbitbake-contrib-346178af84ed0a24b571a1f482d76cf1b33d9560.tar.gz
Toaster: Write UI TestCase create new Dunfell project
Test create new project using: - Project Name: Any string - Release: Yocto Project 3.1 "Dunfell" (option value: 5) - Merge Toaster settings: False Signed-off-by: Alassane Yattara <alassane.yattara@savoirfairelinux.com>
-rw-r--r--lib/toaster/tests/functional/test_create_new_project.py38
1 files changed, 38 insertions, 0 deletions
diff --git a/lib/toaster/tests/functional/test_create_new_project.py b/lib/toaster/tests/functional/test_create_new_project.py
index c6345e5bc..cd690e1a1 100644
--- a/lib/toaster/tests/functional/test_create_new_project.py
+++ b/lib/toaster/tests/functional/test_create_new_project.py
@@ -132,3 +132,41 @@ class TestCreateNewProject(SeleniumFunctionalTestCase):
"//span[@id='project-release-title']"
).text),
'The project release is not defined')
+
+ def test_create_new_project_dunfull(self):
+ """ Test create new project using:
+ - Project Name: Any string
+ - Release: Yocto Project 3.1 "Dunfell" (option value: 5)
+ - Merge Toaster settings: False
+ """
+ release = 'Yocto Project 3.1 "Dunfell"'
+ project_name = 'projectdunfull'
+ self.get(reverse('newproject'))
+ self.driver.find_element(By.ID,
+ "new-project-name").send_keys(project_name)
+
+ select = Select(self.find('#projectversion'))
+ select.select_by_value(str(5))
+
+ # check merge toaster settings
+ checkbox = self.find('.checkbox-mergeattr')
+ if checkbox.is_selected():
+ checkbox.click()
+
+ self.driver.find_element(By.ID, "create-project-button").click()
+
+ element = self.wait_until_visible('#project-created-notification')
+ self.assertTrue(self.element_exists('#project-created-notification'),
+ 'Project creation notification not shown')
+ self.assertTrue(project_name in element.text,
+ "New project name not in new project notification")
+ self.assertTrue(Project.objects.filter(name=project_name).count(),
+ "New project not found in database")
+
+ # check release
+ self.assertTrue(re.search(
+ release,
+ self.driver.find_element(By.XPATH,
+ "//span[@id='project-release-title']"
+ ).text),
+ 'The project release is not defined')