diff options
Diffstat (limited to 'bitbake/lib/toaster/toastergui/tests.py')
-rw-r--r-- | bitbake/lib/toaster/toastergui/tests.py | 40 |
1 files changed, 33 insertions, 7 deletions
diff --git a/bitbake/lib/toaster/toastergui/tests.py b/bitbake/lib/toaster/toastergui/tests.py index 4b93415e1e..69bbfd43e4 100644 --- a/bitbake/lib/toaster/toastergui/tests.py +++ b/bitbake/lib/toaster/toastergui/tests.py | |||
@@ -760,7 +760,7 @@ class AllBuildsPageTests(TestCase): | |||
760 | """ Task should be shown as suffix on build name """ | 760 | """ Task should be shown as suffix on build name """ |
761 | build = Build.objects.create(**self.project1_build_success) | 761 | build = Build.objects.create(**self.project1_build_success) |
762 | Target.objects.create(build=build, target='bash', task='clean') | 762 | Target.objects.create(build=build, target='bash', task='clean') |
763 | url = reverse("all-builds") | 763 | url = reverse('all-builds') |
764 | response = self.client.get(url, follow=True) | 764 | response = self.client.get(url, follow=True) |
765 | result = re.findall('bash:clean', response.content, re.MULTILINE) | 765 | result = re.findall('bash:clean', response.content, re.MULTILINE) |
766 | self.assertEqual(len(result), 3) | 766 | self.assertEqual(len(result), 3) |
@@ -768,20 +768,48 @@ class AllBuildsPageTests(TestCase): | |||
768 | def test_no_run_again_for_cli_build(self): | 768 | def test_no_run_again_for_cli_build(self): |
769 | """ "Run again" button should not be shown for command-line builds """ | 769 | """ "Run again" button should not be shown for command-line builds """ |
770 | build = Build.objects.create(**self.default_project_build_success) | 770 | build = Build.objects.create(**self.default_project_build_success) |
771 | url = reverse("all-builds") | 771 | url = reverse('all-builds') |
772 | response = self.client.get(url, follow=True) | 772 | response = self.client.get(url, follow=True) |
773 | soup = BeautifulSoup(response.content) | 773 | soup = BeautifulSoup(response.content) |
774 | 774 | ||
775 | element_id = 'build-result-%d' % build.id | 775 | attrs = {'data-latest-build-result': build.id} |
776 | result = soup.find('div', attrs=attrs) | ||
776 | 777 | ||
777 | # shouldn't see a run again button for command-line builds | 778 | # shouldn't see a run again button for command-line builds |
778 | run_again_button = soup.select('#%s button' % element_id) | 779 | run_again_button = result.select('button') |
779 | self.assertEqual(len(run_again_button), 0) | 780 | self.assertEqual(len(run_again_button), 0) |
780 | 781 | ||
781 | # should see a help icon for command-line builds | 782 | # should see a help icon for command-line builds |
782 | help_icon = soup.select('#%s i.get-help-green' % element_id) | 783 | help_icon = result.select('i.get-help-green') |
783 | self.assertEqual(len(help_icon), 1) | 784 | self.assertEqual(len(help_icon), 1) |
784 | 785 | ||
786 | def test_tooltips_on_project_name(self): | ||
787 | """ | ||
788 | A tooltip should be present next to the command line | ||
789 | builds project name in the all builds page, but not for | ||
790 | other projects | ||
791 | """ | ||
792 | build1 = Build.objects.create(**self.project1_build_success) | ||
793 | default_build = Build.objects.create(**self.default_project_build_success) | ||
794 | |||
795 | url = reverse('all-builds') | ||
796 | response = self.client.get(url, follow=True) | ||
797 | soup = BeautifulSoup(response.content) | ||
798 | |||
799 | # no help icon on non-default project name | ||
800 | result = soup.find('tr', attrs={'data-table-build-result': build1.id}) | ||
801 | name = result.select('td.project-name')[0] | ||
802 | icons = name.select('i.get-help') | ||
803 | self.assertEqual(len(icons), 0, | ||
804 | 'should not be a help icon for non-cli builds name') | ||
805 | |||
806 | # help icon on default project name | ||
807 | result = soup.find('tr', attrs={'data-table-build-result': default_build.id}) | ||
808 | name = result.select('td.project-name')[0] | ||
809 | icons = name.select('i.get-help') | ||
810 | self.assertEqual(len(icons), 1, | ||
811 | 'should be a help icon for cli builds name') | ||
812 | |||
785 | class ProjectPageTests(TestCase): | 813 | class ProjectPageTests(TestCase): |
786 | """ Test project data at /project/X/ is displayed correctly """ | 814 | """ Test project data at /project/X/ is displayed correctly """ |
787 | CLI_BUILDS_PROJECT_NAME = 'Command line builds' | 815 | CLI_BUILDS_PROJECT_NAME = 'Command line builds' |
@@ -811,5 +839,3 @@ class ProjectPageTests(TestCase): | |||
811 | response = self.client.get(url, follow=True) | 839 | response = self.client.get(url, follow=True) |
812 | 840 | ||
813 | self.assertEqual(response.status_code, 200) | 841 | self.assertEqual(response.status_code, 200) |
814 | |||
815 | |||