diff options
author | Daniel Narvaez <dwnarvaez@gmail.com> | 2012-12-07 09:47:26 (GMT) |
---|---|---|
committer | Simon Schampijer <simon@laptop.org> | 2013-01-22 09:01:05 (GMT) |
commit | a1af468373c982cb9a87ea6564c293b71306664b (patch) | |
tree | 378b09f5cfbeaa549b5c36ce4b370d2a484c0a7a | |
parent | a7452747ff3046444bda8730b2226166df8b4b5c (diff) |
Add a test for the activities list palette
It doesn't really test the resulting UI yet but even just
constructing the widget can catch some bugs.
Acked-by: Simon Schampijer <simon@laptop.org>
-rw-r--r-- | Makefile.am | 8 | ||||
-rw-r--r-- | tests/data/activity.svg | 26 | ||||
-rw-r--r-- | tests/test_activitieslist.py | 49 |
3 files changed, 83 insertions, 0 deletions
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/tests/data/activity.svg b/tests/data/activity.svg new file mode 100644 index 0000000..8da7c63 --- /dev/null +++ b/tests/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()) |