Mercurial > treepkg
view test/test_notifications.py @ 310:26c15a0f0e52
When stopping because of an error, do not raise the exception again as
it leads to confusing double tracebacks in the log. Instead, simply log
the reason for the stopping and stop in the same way a stop instruction
is handled.
author | Bernhard Herzog <bh@intevation.de> |
---|---|
date | Wed, 02 Dec 2009 14:46:37 +0000 |
parents | faeeac2c4c71 |
children | f06f707d9fda |
line wrap: on
line source
# Copyright (C) 2009 by Intevation GmbH # Authors: # Bernhard Herzog <bh@intevation.de> # # This program is free software under the GPL (>=v2) # Read the file COPYING coming with the software for details. import sys import os import unittest from filesupport import FileTestMixin from treepkg.run import call, capture_output, SubprocessError class TestListNotifications(unittest.TestCase, FileTestMixin): treepkg_cfg_template = """\ [DEFAULT] tracks_dir: %(tracksdir)s root_cmd: true pbuilderrc: deb_email: packager@example.com deb_fullname: Sample Packager pkg_revision_template: treepkg%%%%(pkg_revision)d handle_dependencies: False [treepkg] check_interval: 3600 instructions_file: [pkg_kdepim] svn_url: svn://anonsvn.kde.org/home/kde/branches/kdepim/enterprise/kdepim base_dir: %%(tracks_dir)s/kdepim packager_class: recipes.kde_enterprise_3_5.kdepim """ track_files = [("kdepim", [("pkg", [("704195-31", [("status", "TreePackagerStatus 0.0\n"), ("src", []), ("binary", [])]), ("702432-47", [("status", "\n".join(("TreePackagerStatus 0.0", "status: error", "notification_mail: notification_pending", ""))), ("src", []), ("binary", [])])])])] def setUp(self): self.bindir = os.path.join(os.path.dirname(__file__), os.pardir, "bin") self.listpendingnotifications \ = os.path.join(self.bindir, "listpendingnotifications.py") self.tracksdir = self.create_files("tracks", self.track_files) config = self.treepkg_cfg_template % dict(tracksdir=self.tracksdir) self.config_file = self.create_temp_file("treepkg.cfg", config) def test_listpendingnotifications(self): cmd = [sys.executable, self.listpendingnotifications, "--config-file=" + self.config_file] self.assertEquals(capture_output(cmd), "error kdepim 702432 47\n")