[Sugar-devel] [PATCH sugar] Add a test for the activities list palette

Daniel Narvaez dwnarvaez at gmail.com
Fri Dec 7 12:43:32 EST 2012


activity.svg was misplaced here, resent the patch.

On 7 December 2012 10:52, Daniel Narvaez <dwnarvaez at gmail.com> wrote:
> From: Daniel Narvaez <dwnarvaez at gmail.com>
>
> It doesn't really test the resulting UI yet but even just
> constructing the widget can catch some bugs.
> ---
>  Makefile.am                  |    8 +++++++
>  data/activity.svg            |   26 ++++++++++++++++++++++
>  tests/test_activitieslist.py |   49 ++++++++++++++++++++++++++++++++++++++++++
>  3 files changed, 83 insertions(+)
>  create mode 100644 data/activity.svg
>  create mode 100644 tests/test_activitieslist.py
>
> diff --git a/Makefile.am b/Makefile.am
> index 9e252af..d024f44 100644
> --- a/Makefile.am
> +++ b/Makefile.am
> @@ -1,3 +1,5 @@
> +TESTS_TMPDIR=$(abs_builddir)/tests-tmp
> +
>  SUBDIRS = bin data po src extensions
>
>  DISTCLEANFILES =               \
> @@ -12,3 +14,9 @@ EXTRA_DIST =                    \
>         intltool-extract.in
>
>  DISTCHECK_CONFIGURE_FLAGS = --disable-update-mimedb
> +
> +test:
> +       cd $(top_srcdir)/tests && \
> +    mkdir -p $(TESTS_TMPDIR) && \
> +    TMPDIR=$(TESTS_TMPDIR) python -m unittest discover && \
> +    rm -rf $(TESTS_TMPDIR)
> diff --git a/data/activity.svg b/data/activity.svg
> new file mode 100644
> index 0000000..8da7c63
> --- /dev/null
> +++ b/data/activity.svg
> @@ -0,0 +1,26 @@
> +<?xml version="1.0" ?><!DOCTYPE svg  PUBLIC '-//W3C//DTD SVG 1.1//EN'  'http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd' [
> +       <!ENTITY stroke_color "#010101">
> +       <!ENTITY fill_color "#FFFFFF">
> +]>
> +<svg enable-background="new 0 0 55 55" height="55px" version="1.1" viewBox="0 0 55 55" width="55px" x="0px" xml:space="preserve" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" y="0px">
> +  <g display="block" id="activity-helloworld">
> +    <path d="M9.263,48.396c0.682,1.152,6.027,0.059,8.246-1.463   c2.102-1.432,3.207-2.596,4.336-2.596c1.133,0,12.54,0.92,20.935-5.715c7.225-5.707,9.773-13.788,4.52-21.437   c-5.252-7.644-13.832-9.08-20.878-8.56C16.806,9.342,4.224,16.91,4.677,28.313c0.264,6.711,3.357,9.143,4.922,10.703   c1.562,1.566,4.545,1.566,2.992,5.588C11.981,46.183,8.753,47.522,9.263,48.396z" display="inline" fill="&fill_color;" stroke="&stroke_color;" stroke-width="3.5"/>
> +  </g>
> +  <circle cx="27.375" cy="27.5" r="19.903"
> +     transform="matrix(0.6,0,0,0.6,10.95,11)"
> +     id="circle4" fill="&fill_color;" stroke="&stroke_color;" stroke-width="3.5" display="inline" />
> +  <g transform="matrix(0.6,0,0,0.6,10.95,11)" id="g6" style="display:inline">
> +    <path d="m 27.376,7.598 c 0,0 -11.205,8.394 -11.205,19.976 0,11.583 11.205,19.829 11.205,19.829"
> +       id="path8" fill="&fill_color;" stroke="&stroke_color;" stroke-width="3.5" />
> +    <path d="m 27.376,7.598 c 0,0 11.066,9.141 11.066,19.976 0,10.839 -11.066,19.829 -11.066,19.829"
> +       id="path10" fill="&fill_color;" stroke="&stroke_color;" stroke-width="3.5" />
> +    <line x1="27.375999" x2="27.375999" y1="7.598" y2="47.402"
> +       id="line12" fill="&fill_color;" stroke="&stroke_color;" stroke-width="3.5" />
> +    <line x1="27.375999" x2="27.375999" y1="7.598" y2="47.402"
> +       id="line14" fill="&fill_color;" stroke="&stroke_color;" stroke-width="3.5" />
> +    <line x1="27.375999" x2="27.375999" y1="7.598" y2="47.402"
> +       id="line16" fill="&fill_color;" stroke="&stroke_color;" stroke-width="3.5" />
> +    <line x1="7.4720001" x2="47.278" y1="27.5" y2="27.5"
> +       id="line18" fill="&fill_color;" stroke="&stroke_color;" stroke-width="3.5" />
> +  </g>
> +</svg>
> diff --git a/tests/test_activitieslist.py b/tests/test_activitieslist.py
> new file mode 100644
> index 0000000..c5d13ab
> --- /dev/null
> +++ b/tests/test_activitieslist.py
> @@ -0,0 +1,49 @@
> +# Copyright (C) 2012, Daniel Narvaez
> +#
> +# This program is free software; you can redistribute it and/or modify
> +# it under the terms of the GNU General Public License as published by
> +# the Free Software Foundation; either version 2 of the License, or
> +# (at your option) any later version.
> +#
> +# This program is distributed in the hope that it will be useful,
> +# but WITHOUT ANY WARRANTY; without even the implied warranty of
> +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> +# GNU General Public License for more details.
> +#
> +# You should have received a copy of the GNU General Public License
> +# along with this program; if not, write to the Free Software
> +# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
> +
> +import os
> +import unittest
> +
> +from jarabe.desktop.activitieslist import ActivityListPalette
> +
> +tests_dir = os.path.dirname(__file__)
> +data_dir = os.path.join(tests_dir, "data")
> +
> +class MockActivityInfo:
> +    def get_bundle_id(self):
> +        return "mock"
> +
> +    def get_activity_version(self):
> +        return 1
> +
> +    def get_is_favorite(self):
> +        return False
> +
> +    def get_icon(self):
> +        return os.path.join(data_dir, "activity.svg")
> +
> +    def get_name(self):
> +        return "mock"
> +
> +    def get_path(self):
> +        return "mock"
> +
> +    def is_user_activity(self):
> +        return True
> +
> +class TestActivitiesList(unittest.TestCase):
> +    def test_activity_list_palette(self):
> +        palette = ActivityListPalette(MockActivityInfo())
> --
> 1.7.10.4
>



-- 
Daniel Narvaez


More information about the Sugar-devel mailing list