I'll just remove them for now, and assume we'll eventually get round to adding Selenium tests for these cases.
Elliot On 7 March 2016 at 19:24, Smith, Elliot <[email protected]> wrote: > So would you suggest removing these for now and adding a separate issue to > create equivalent Selenium tests, once the UI test framework is cleaned up? > > Elliot > > On 7 March 2016 at 19:17, Michael Wood <[email protected]> wrote: > >> >> Not really that keen on mixing HTML/content tests with the django >> functional unit tests. To me this would be better tested by the >> selenium/front end tests. >> >> >> On 07/03/16 12:21, Elliot Smith wrote: >> >>> Add a basic test which checks that the CPU time subpage for >>> the build dashboard shows both the User and System CPU time columns >>> by default. >>> >>> [YOCTO #8842] >>> >>> Signed-off-by: Elliot Smith <[email protected]> >>> --- >>> bitbake/lib/toaster/toastergui/tests.py | 45 >>> ++++++++++++++++++++++++++++++++- >>> 1 file changed, 44 insertions(+), 1 deletion(-) >>> >>> diff --git a/bitbake/lib/toaster/toastergui/tests.py >>> b/bitbake/lib/toaster/toastergui/tests.py >>> index 6b05916..b5862b7 100644 >>> --- a/bitbake/lib/toaster/toastergui/tests.py >>> +++ b/bitbake/lib/toaster/toastergui/tests.py >>> @@ -29,7 +29,7 @@ from django.utils import timezone >>> from orm.models import Project, Release, BitbakeVersion, Package, >>> LogMessage >>> from orm.models import ReleaseLayerSourcePriority, LayerSource, Layer, >>> Build >>> from orm.models import Layer_Version, Recipe, Machine, ProjectLayer, >>> Target >>> -from orm.models import CustomImageRecipe, ProjectVariable >>> +from orm.models import CustomImageRecipe, ProjectVariable, Task >>> from orm.models import Branch, CustomImagePackage >>> import toastermain >>> @@ -1054,6 +1054,16 @@ class BuildDashboardTests(TestCase): >>> started_on=now, >>> completed_on=now) >>> + # target for build, so breadcrumb can display >>> + Target.objects.create(build=self.build1, target='bash', >>> task='build') >>> + >>> + # layer_version, recipe and task for build, so CPU time data >>> can display >>> + layer = Layer.objects.create() >>> + layer_version = Layer_Version.objects.create(layer=layer) >>> + recipe = Recipe.objects.create(name='zlib', >>> layer_version=layer_version) >>> + Task.objects.create(build=self.build1, recipe=recipe, order=1, >>> + outcome=Task.OUTCOME_SUCCESS) >>> + >>> # exception >>> msg1 = 'an exception was thrown' >>> self.exception_message = LogMessage.objects.create( >>> @@ -1123,3 +1133,36 @@ class BuildDashboardTests(TestCase): >>> section of the page >>> """ >>> self._check_for_log_message(self.critical_message) >>> + >>> + def test_cputime(self): >>> + """ >>> + Check that the system and user CPU time columns are displayed >>> + when the cputime subpage is shown >>> + """ >>> + url = reverse('cputime', args=(self.build1.id,)) >>> + response = self.client.get(url, follow=True) >>> + soup = BeautifulSoup(response.content) >>> + >>> + # check nav item is highlighted >>> + elements = soup.select('#nav li.active') >>> + self.assertEquals(len(elements), 1, >>> + 'should be one active nav element, ' + >>> + 'but found %s' % len(elements)) >>> + link_text = elements[0].find('a').text.strip() >>> + self.assertEquals(link_text, 'CPU time', >>> + 'active nav element should have text "CPU >>> time", ' + >>> + 'but text was %s' % link_text) >>> + >>> + # check page heading >>> + heading = soup.select('.page-header h1')[0] >>> + self.assertEquals(heading.text.strip(), 'CPU time') >>> + >>> + # check CPU column headings are both present >>> + cpu_time_headings = ['System CPU time', 'User CPU time'] >>> + table_heading_links = soup.select('#otable th a') >>> + for link in table_heading_links: >>> + if link.text.strip() in cpu_time_headings: >>> + cpu_time_headings.remove(link.text) >>> + self.assertEquals(len(cpu_time_headings), 0, >>> + 'Both CPU time headings (user, system) ' + >>> + 'must be present; missing %s' % >>> cpu_time_headings) >>> >> >> --------------------------------------------------------------------- >> Intel Corporation (UK) Limited >> Registered No. 1134945 (England) >> Registered Office: Pipers Way, Swindon SN3 1RJ >> VAT No: 860 2173 47 >> >> This e-mail and any attachments may contain confidential material for >> the sole use of the intended recipient(s). Any review or distribution >> by others is strictly prohibited. If you are not the intended >> recipient, please contact the sender and delete all copies. >> >> -- >> _______________________________________________ >> toaster mailing list >> [email protected] >> https://lists.yoctoproject.org/listinfo/toaster >> > > > > -- > Elliot Smith > Software Engineer > Intel Open Source Technology Centre > -- Elliot Smith Software Engineer Intel Open Source Technology Centre
-- _______________________________________________ toaster mailing list [email protected] https://lists.yoctoproject.org/listinfo/toaster
