From 5e13cce5010abb8ec81e53a29f2e8490c601dc0e Mon Sep 17 00:00:00 2001 From: Xavier Claessens <xavier.claessens@collabora.com> Date: Tue, 8 Sep 2015 09:26:09 -0400 Subject: [PATCH] tracker: make is_indexed and is_not_indexed raise exception instead Summary: They are now assert_indexed and assert_not_indexer. This provides more useful backtrace if an error occures. Reviewers: smcv, pwith Differential Revision: https://phabricator.apertis.org/D395 --- tracker/automated/test-tracker.py | 4 ++-- tracker/common.py | 12 ++++++++---- tracker/manual/test-removable-device.py | 2 +- 3 files changed, 11 insertions(+), 7 deletions(-) diff --git a/tracker/automated/test-tracker.py b/tracker/automated/test-tracker.py index 0c0de4d..675f02e 100755 --- a/tracker/automated/test-tracker.py +++ b/tracker/automated/test-tracker.py @@ -50,11 +50,11 @@ class TrackerTest(unittest.TestCase): def assert_indexed(self, filename, extra=None): uri = 'file://%s/%s' % (self.homedir, filename) - self.assertTrue(self.indexer.is_indexed(uri, extra)) + self.indexer.assert_indexed(uri, extra) def assert_not_indexed(self, filename): uri = 'file://%s/%s' % (self.homedir, filename) - self.assertTrue(self.indexer.is_not_indexed(uri)) + self.indexer.assert_not_indexed(uri) def tracker_inital_tests(self): playable_query = '?urn bosch:playable true . ' diff --git a/tracker/common.py b/tracker/common.py index 052025d..c8bce6f 100644 --- a/tracker/common.py +++ b/tracker/common.py @@ -110,7 +110,7 @@ class TrackerIndexer(): self.wait_files = True self.loop.run() - def is_indexed(self, uri, extra=None): + def assert_indexed(self, uri, extra=None): query = ('select ?urn where { ' ' ?urn nie:url "%s" ; ' ' tracker:available true . ') % (uri) @@ -120,9 +120,13 @@ class TrackerIndexer(): # Must have one and only one result cursor = self.conn.query(query, None) - return cursor.next(None) and not cursor.next(None) + if not cursor.next(None): + raise Exception("Query '%s' returned no result" % query) + if cursor.next(None): + raise Exception("Query '%s' returned more than one result" % query) - def is_not_indexed(self, uri): + def assert_not_indexed(self, uri): query = ('select ?urn where { ?urn nie:url "%s" }') % (uri) cursor = self.conn.query(query, None) - return not cursor.next(None) + if cursor.next(None): + raise Exception("Query '%s' returned results" % query) diff --git a/tracker/manual/test-removable-device.py b/tracker/manual/test-removable-device.py index ce888d8..3808d63 100755 --- a/tracker/manual/test-removable-device.py +++ b/tracker/manual/test-removable-device.py @@ -36,7 +36,7 @@ class TestRemovableDevice(unittest.TestCase): def assert_indexed(self, filename, extra=None): uri = 'file://%s/%s' % (self.path, filename) - self.assertTrue(self.indexer.is_indexed(uri, extra)) + self.indexer.assert_indexed(uri, extra) def test_removable_device(self): print('Please insert storage ...') -- GitLab