[tracker/sam/test-utils: 1/2] functional-tests: Add tracker_test_main()
- From: Sam Thursfield <sthursfield src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [tracker/sam/test-utils: 1/2] functional-tests: Add tracker_test_main()
- Date: Mon, 23 Mar 2020 01:51:48 +0000 (UTC)
commit cea00f6b139098a962f2fa0908618bade2e6c936
Author: Sam Thursfield <sam afuera me uk>
Date: Sat Mar 21 16:51:39 2020 +0100
functional-tests: Add tracker_test_main()
This wraps unittest.main() but also sets up logging correctly.
Previously the logging setup happened as a sideeffect of importing
the 'configuration' module, which was not a good approach.
tests/functional-tests/cli.py | 2 +-
tests/functional-tests/coalesce.py | 2 +-
tests/functional-tests/collation.py | 2 +-
tests/functional-tests/concurrent-query.py | 2 +-
tests/functional-tests/configuration.py | 16 ++--------------
tests/functional-tests/distance.py | 2 +-
tests/functional-tests/fixtures.py | 22 ++++++++++++++++++++++
tests/functional-tests/fts-functions.py | 2 +-
tests/functional-tests/graph.py | 2 +-
tests/functional-tests/group-concat.py | 2 +-
tests/functional-tests/insertion.py | 2 +-
tests/functional-tests/notifier.py | 2 +-
tests/functional-tests/ontology-changes.py | 3 ++-
tests/functional-tests/query.py | 2 +-
tests/functional-tests/sparql-bugs.py | 2 +-
15 files changed, 38 insertions(+), 27 deletions(-)
---
diff --git a/tests/functional-tests/cli.py b/tests/functional-tests/cli.py
index 63d330384..45696a612 100644
--- a/tests/functional-tests/cli.py
+++ b/tests/functional-tests/cli.py
@@ -54,4 +54,4 @@ class TestCli(fixtures.TrackerCommandLineTestCase):
if __name__ == '__main__':
- unittest.main(verbosity=2)
+ fixtures.tracker_test_main()
diff --git a/tests/functional-tests/coalesce.py b/tests/functional-tests/coalesce.py
index e03ac2644..f8961edf7 100644
--- a/tests/functional-tests/coalesce.py
+++ b/tests/functional-tests/coalesce.py
@@ -116,4 +116,4 @@ class TestCoalesce (fixtures.TrackerSparqlDirectTest):
if __name__ == '__main__':
- ut.main(verbosity=2)
+ fixtures.tracker_test_main()
diff --git a/tests/functional-tests/collation.py b/tests/functional-tests/collation.py
index db662c4d9..2b46b46e2 100644
--- a/tests/functional-tests/collation.py
+++ b/tests/functional-tests/collation.py
@@ -132,4 +132,4 @@ if __name__ == "__main__":
* Check what happens in non-english encoding
* Dynamic change of collation (not implemented yet in tracker)
""")
- ut.main(verbosity=2)
+ fixtures.tracker_test_main()
diff --git a/tests/functional-tests/concurrent-query.py b/tests/functional-tests/concurrent-query.py
index 90a0eb80c..9620756b4 100644
--- a/tests/functional-tests/concurrent-query.py
+++ b/tests/functional-tests/concurrent-query.py
@@ -105,4 +105,4 @@ class TestConcurrentQueryBus(fixtures.TrackerSparqlBusTest, ConcurrentQueryTests
if __name__ == "__main__":
- ut.main(verbosity=2)
+ fixtures.tracker_test_main()
diff --git a/tests/functional-tests/configuration.py b/tests/functional-tests/configuration.py
index 60db8cade..d49d228f7 100644
--- a/tests/functional-tests/configuration.py
+++ b/tests/functional-tests/configuration.py
@@ -69,17 +69,5 @@ def get_environment_int(variable, default=0):
return default
-if get_environment_boolean('TRACKER_TESTS_VERBOSE'):
- # Output all logs to stderr
- logging.basicConfig(stream=sys.stderr, level=logging.DEBUG)
-else:
- # Output some messages from D-Bus daemon to stderr by default. In practice,
- # only errors and warnings should be output here unless the environment
- # contains G_MESSAGES_DEBUG= and/or TRACKER_VERBOSITY=1 or more.
- handler_stderr = logging.StreamHandler(stream=sys.stderr)
- handler_stderr.addFilter(logging.Filter('trackertestutils.dbusdaemon.stderr'))
- handler_stdout = logging.StreamHandler(stream=sys.stderr)
- handler_stdout.addFilter(logging.Filter('trackertestutils.dbusdaemon.stdout'))
- logging.basicConfig(level=logging.INFO,
- handlers=[handler_stderr, handler_stdout],
- format='%(message)s')
+def tests_verbose():
+ return get_environment_boolean('TRACKER_TESTS_VERBOSE')
diff --git a/tests/functional-tests/distance.py b/tests/functional-tests/distance.py
index 47e016b3a..746153b1c 100644
--- a/tests/functional-tests/distance.py
+++ b/tests/functional-tests/distance.py
@@ -126,4 +126,4 @@ class TestDistanceFunctions (fixtures.TrackerSparqlDirectTest):
if __name__ == '__main__':
- ut.main(verbosity=2)
+ fixtures.tracker_test_main()
diff --git a/tests/functional-tests/fixtures.py b/tests/functional-tests/fixtures.py
index 46a392d61..7b4beea84 100644
--- a/tests/functional-tests/fixtures.py
+++ b/tests/functional-tests/fixtures.py
@@ -34,6 +34,7 @@ import pathlib
import multiprocessing
import shutil
import subprocess
+import sys
import tempfile
import unittest as ut
@@ -43,6 +44,27 @@ import configuration as cfg
log = logging.getLogger(__name__)
+def tracker_test_main():
+ """Entry point that all functional-test modules must call."""
+
+ if cfg.tests_verbose():
+ # Output all logs to stderr
+ logging.basicConfig(stream=sys.stderr, level=logging.DEBUG)
+ else:
+ # Output some messages from D-Bus daemon to stderr by default. In practice,
+ # only errors and warnings should be output here unless the environment
+ # contains G_MESSAGES_DEBUG= and/or TRACKER_VERBOSITY=1 or more.
+ handler_stderr = logging.StreamHandler(stream=sys.stderr)
+ handler_stderr.addFilter(logging.Filter('trackertestutils.dbusdaemon.stderr'))
+ handler_stdout = logging.StreamHandler(stream=sys.stderr)
+ handler_stdout.addFilter(logging.Filter('trackertestutils.dbusdaemon.stdout'))
+ logging.basicConfig(level=logging.INFO,
+ handlers=[handler_stderr, handler_stdout],
+ format='%(message)s')
+
+ ut.main(verbosity=2)
+
+
class TrackerSparqlDirectTest(ut.TestCase):
"""
Fixture for tests using a direct (local) connection to a Tracker database.
diff --git a/tests/functional-tests/fts-functions.py b/tests/functional-tests/fts-functions.py
index a92a8ff3f..e1b33bc1c 100644
--- a/tests/functional-tests/fts-functions.py
+++ b/tests/functional-tests/fts-functions.py
@@ -127,4 +127,4 @@ class TestFTSFunctions (fixtures.TrackerSparqlDirectTest):
if __name__ == '__main__':
- ut.main(verbosity=2)
+ fixtures.tracker_test_main()
diff --git a/tests/functional-tests/graph.py b/tests/functional-tests/graph.py
index f24323769..1b93df467 100644
--- a/tests/functional-tests/graph.py
+++ b/tests/functional-tests/graph.py
@@ -146,4 +146,4 @@ class TestGraphs (fixtures.TrackerSparqlDirectTest):
if __name__ == '__main__':
- ut.main(verbosity=2)
+ fixtures.tracker_test_main()
diff --git a/tests/functional-tests/group-concat.py b/tests/functional-tests/group-concat.py
index 9b471d71c..7cb2e907e 100644
--- a/tests/functional-tests/group-concat.py
+++ b/tests/functional-tests/group-concat.py
@@ -89,4 +89,4 @@ class TestGroupConcat (fixtures.TrackerSparqlDirectTest):
if __name__ == '__main__':
- ut.main(verbosity=2)
+ fixtures.tracker_test_main()
diff --git a/tests/functional-tests/insertion.py b/tests/functional-tests/insertion.py
index cd56fa85c..fc1f3671e 100644
--- a/tests/functional-tests/insertion.py
+++ b/tests/functional-tests/insertion.py
@@ -787,4 +787,4 @@ class TrackerStorePhoneNumberTest (fixtures.TrackerSparqlDirectTest):
if __name__ == "__main__":
- ut.main(verbosity=2)
+ fixtures.tracker_test_main()
diff --git a/tests/functional-tests/notifier.py b/tests/functional-tests/notifier.py
index c6265f0d1..fc708f92b 100644
--- a/tests/functional-tests/notifier.py
+++ b/tests/functional-tests/notifier.py
@@ -176,4 +176,4 @@ class TrackerBusNotifierTest (fixtures.TrackerSparqlBusTest, TrackerNotifierTest
if __name__ == "__main__":
- ut.main(verbosity=2)
+ fixtures.tracker_test_main()
diff --git a/tests/functional-tests/ontology-changes.py b/tests/functional-tests/ontology-changes.py
index 867159e35..753b1eb4a 100644
--- a/tests/functional-tests/ontology-changes.py
+++ b/tests/functional-tests/ontology-changes.py
@@ -39,6 +39,7 @@ import trackertestutils.dconf
import trackertestutils.helpers
import configuration as cfg
+import fixtures
RDFS_RANGE = "http://www.w3.org/2000/01/rdf-schema#range"
@@ -909,4 +910,4 @@ class PropertyRelegationTest (OntologyChangeTestTemplate):
if __name__ == "__main__":
- ut.main(verbosity=2)
+ fixtures.tracker_test_main()
diff --git a/tests/functional-tests/query.py b/tests/functional-tests/query.py
index e9ec3fabd..18a29b6f1 100644
--- a/tests/functional-tests/query.py
+++ b/tests/functional-tests/query.py
@@ -70,4 +70,4 @@ class TrackerBusQueryTest (fixtures.TrackerSparqlBusTest, TrackerQueryTests):
if __name__ == "__main__":
- ut.main(verbosity=2)
+ fixtures.tracker_test_main()
diff --git a/tests/functional-tests/sparql-bugs.py b/tests/functional-tests/sparql-bugs.py
index 9d6f527d4..ff997d2f1 100644
--- a/tests/functional-tests/sparql-bugs.py
+++ b/tests/functional-tests/sparql-bugs.py
@@ -239,4 +239,4 @@ class TrackerStoreSparqlBugsTests (fixtures.TrackerSparqlDirectTest):
if __name__ == "__main__":
- ut.main(verbosity=2)
+ fixtures.tracker_test_main()
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]