From a0195e7fd4263bbf0070b6383b58d0ee613e362f Mon Sep 17 00:00:00 2001 From: Marco Pesenti Gritti Date: Mon, 20 Aug 2007 12:34:29 +0200 Subject: [PATCH] Some initial work on graphics tests. --- sugar-emulator | 15 ++++++--- tests/graphics/common.py | 52 +++++++++++++++++++++++++++++++ tests/graphics/ticket2855.py | 23 ++++++++++++++ tests/{sugar => lib}/runall.py | 0 tests/{sugar => lib}/test_date.py | 0 5 files changed, 85 insertions(+), 5 deletions(-) create mode 100644 tests/graphics/common.py create mode 100644 tests/graphics/ticket2855.py rename tests/{sugar => lib}/runall.py (100%) rename tests/{sugar => lib}/test_date.py (100%) diff --git a/sugar-emulator b/sugar-emulator index 6ab92928..cba0d520 100755 --- a/sugar-emulator +++ b/sugar-emulator @@ -96,7 +96,7 @@ def _start_matchbox(): cmd = ['matchbox-window-manager'] cmd.extend(['-use_titlebar', 'no']) - cmd.extend(['-theme', 'olpc']) + cmd.extend(['-theme', 'sugar']) log.debug( 'Matchbox command: %s', " ".join( cmd) ) gobject.spawn_async(cmd, flags=gobject.SPAWN_SEARCH_PATH) @@ -150,14 +150,19 @@ def main(): os.environ['GTK2_RC_FILES'] = env.get_data_path(gtkrc_filename) print os.environ['GTK2_RC_FILES'] + command = ['dbus-launch', 'dbus-launch', '--exit-with-session'] + if not args: - program = 'sugar-shell' + command.append('sugar-shell') else: _start_matchbox() - program = args[0] + + if args[0].endswith('.py'): + command.append('python') + + command.append(args[0]) - command = ['dbus-launch', 'dbus-launch', '--exit-with-session', program] - log.info( "Attempting to launch sugar to replace this process: %s", " ".join(command) ) + log.info( "Attempting to launch sugar to replace this process: %s", " ".join(command)) os.execlp( *command ) if __name__ == "__main__": diff --git a/tests/graphics/common.py b/tests/graphics/common.py new file mode 100644 index 00000000..d6ca869a --- /dev/null +++ b/tests/graphics/common.py @@ -0,0 +1,52 @@ +# Copyright (C) 2007, Red Hat, Inc. +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2 of the License, or (at your option) any later version. +# +# This library 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 +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the +# Free Software Foundation, Inc., 59 Temple Place - Suite 330, +# Boston, MA 02111-1307, USA. + +import gtk + +from sugar.graphics.toolbutton import ToolButton + +class Test(gtk.VBox): + def __init__(self): + gtk.VBox.__init__(self) + +class TestPalette(Test): + def __init__(self): + Test.__init__(self) + + toolbar = gtk.Toolbar() + + button = ToolButton('stop') + toolbar.insert(button, -1) + button.show() + + self.pack_start(toolbar, False) + toolbar.show() + +class TestRunner(object): + def run(self, test): + window = gtk.Window() + window.connect("destroy", lambda w: gtk.main_quit()) + window.add(test) + test.show() + + window.show() + +def main(test): + runner = TestRunner() + runner.run(test) + + gtk.main() diff --git a/tests/graphics/ticket2855.py b/tests/graphics/ticket2855.py new file mode 100644 index 00000000..a54add98 --- /dev/null +++ b/tests/graphics/ticket2855.py @@ -0,0 +1,23 @@ +# Copyright (C) 2007, Red Hat, Inc. +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2 of the License, or (at your option) any later version. +# +# This library 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 +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the +# Free Software Foundation, Inc., 59 Temple Place - Suite 330, +# Boston, MA 02111-1307, USA. + +import common + +test = common.TestPalette() + +if __name__ == "__main__": + common.main(test) diff --git a/tests/sugar/runall.py b/tests/lib/runall.py similarity index 100% rename from tests/sugar/runall.py rename to tests/lib/runall.py diff --git a/tests/sugar/test_date.py b/tests/lib/test_date.py similarity index 100% rename from tests/sugar/test_date.py rename to tests/lib/test_date.py