[Toaster] [review-request][PATCH 3/3] toaster: Test that exception isn't thrown by project page
Michael Wood
michael.g.wood at intel.com
Wed Oct 14 07:10:37 PDT 2015
Thanks - Now pushed to toaster-next and upstream
On 22/09/15 17:41, Elliot Smith wrote:
> Add a test which checks that an exception is no longer thrown
> for the /toastergui/project/X page for the default project.
>
> Note that we still get a spinning dialogue box on this page
> because the default project has no configuration to display,
> but at least it doesn't fail altogether.
>
> [YOCTO #8277]
>
> Signed-off-by: Elliot Smith <elliot.smith at intel.com>
> ---
> bitbake/lib/toaster/toastergui/tests.py | 33 ++++++++++++++++++++++++++++++++-
> 1 file changed, 32 insertions(+), 1 deletion(-)
>
> diff --git a/bitbake/lib/toaster/toastergui/tests.py b/bitbake/lib/toaster/toastergui/tests.py
> index 4d1549b..437a45b 100644
> --- a/bitbake/lib/toaster/toastergui/tests.py
> +++ b/bitbake/lib/toaster/toastergui/tests.py
> @@ -376,4 +376,35 @@ class ProjectBuildsDisplayTest(TestCase):
> build2b = Build.objects.create(**self.project2_build_in_progress)
>
> build_rows = self._get_rows_for_project(self.project1.id)
> - self.assertEqual(len(build_rows), 2)
> \ No newline at end of file
> + self.assertEqual(len(build_rows), 2)
> +
> +class ProjectPageTests(TestCase):
> + """ Test project data at /project/X/ is displayed correctly """
> +
> + PROJECT_NAME = 'Command line builds'
> +
> + def test_command_line_builds_in_progress(self):
> + """
> + In progress builds should not cause an error to be thrown
> + when navigating to "command line builds" project page;
> + see https://bugzilla.yoctoproject.org/show_bug.cgi?id=8277
> + """
> +
> + # add the "command line builds" default project; this mirrors what
> + # we do in migration 0026_set_default_project.py
> + default_project = Project.objects.create_project(self.PROJECT_NAME, None)
> + default_project.is_default = True
> + default_project.save()
> +
> + # add an "in progress" build for the default project
> + now = timezone.now()
> + build = Build.objects.create(project=default_project,
> + started_on=now,
> + completed_on=now,
> + outcome=Build.IN_PROGRESS)
> +
> + # navigate to the project page for the default project
> + url = reverse("project", args=(default_project.id,))
> + response = self.client.get(url, follow=True)
> +
> + self.assertEqual(response.status_code, 200)
More information about the toaster
mailing list