From 23f9b1c38445c3406723356e284681bd860a908b Mon Sep 17 00:00:00 2001 From: Helmut Merz Date: Fri, 8 Mar 2024 10:02:40 +0100 Subject: [PATCH] always call test files explicitly: tests/standard (=sqlite) or tests/postgres --- tests/config.py | 10 ++-------- tests/postgres.py | 33 +++++++++++++++++++++++++++++++++ tests/standard.py | 24 ++++++++++++++++++++++++ tests/test_storage.py | 38 -------------------------------------- tests/tlib.py | 16 ++++++++++++---- 5 files changed, 71 insertions(+), 50 deletions(-) create mode 100644 tests/postgres.py create mode 100644 tests/standard.py delete mode 100644 tests/test_storage.py diff --git a/tests/config.py b/tests/config.py index c3617c8..4a19f36 100644 --- a/tests/config.py +++ b/tests/config.py @@ -8,16 +8,10 @@ server_port = '8999' # storage settings -# PostgreSQL -#import scopes.storage.db.postgres -dbengine = 'postgresql+psycopg' -dbname = 'testdb' -dbuser = 'testuser' -dbpassword = 'secret' -dbschema = 'testing' - # SQLite dbengine = 'sqlite' dbname = 'var/test.db' +dbuser = None +dbpassword = None dbschema = None diff --git a/tests/postgres.py b/tests/postgres.py new file mode 100644 index 0000000..f7fe524 --- /dev/null +++ b/tests/postgres.py @@ -0,0 +1,33 @@ +#! /usr/bin/python + +"""Tests for the 'scopes.storage' package - using PostgreSQL.""" + +from datetime import datetime +import unittest + +# PostgreSQL-specific settings +import scopes.storage.db.postgres +import config +config.dbengine = 'postgresql+psycopg' +config.dbname = 'testdb' +config.dbuser = 'testuser' +config.dbpassword = 'secret' +config.dbschema = 'testing' + +import tlib + +class Test(unittest.TestCase): + + def test_001_tracking(self): + tlib.test_tracking(self) + + def test_002_folder(self): + tlib.test_folder(self) + +def suite(): + return unittest.TestSuite(( + unittest.TestLoader().loadTestsFromTestCase(Test), + )) + +if __name__ == '__main__': + unittest.main(defaultTest='suite') diff --git a/tests/standard.py b/tests/standard.py new file mode 100644 index 0000000..cffa9fd --- /dev/null +++ b/tests/standard.py @@ -0,0 +1,24 @@ +#! /usr/bin/python + +"""Tests for the 'scopes.storage' package.""" + +from datetime import datetime +import unittest + +import tlib + +class Test(unittest.TestCase): + + def test_001_tracking(self): + tlib.test_tracking(self) + + def test_002_folder(self): + tlib.test_folder(self) + +def suite(): + return unittest.TestSuite(( + unittest.TestLoader().loadTestsFromTestCase(Test), + )) + +if __name__ == '__main__': + unittest.main(defaultTest='suite') diff --git a/tests/test_storage.py b/tests/test_storage.py deleted file mode 100644 index cd8be3b..0000000 --- a/tests/test_storage.py +++ /dev/null @@ -1,38 +0,0 @@ -#! /usr/bin/python - -"""Tests for the 'scopes.storage' package.""" - -import config - -from datetime import datetime -import unittest - -import scopes.storage.common -from scopes.storage.common import commit, Storage, getEngine, sessionFactory -#from scopes.storage import proxy -from scopes.storage import folder, tracking - -engine = getEngine(config.dbengine, config.dbname, config.dbuser, config.dbpassword) -scopes.storage.common.engine = engine -scopes.storage.common.Session = sessionFactory(engine) - -storage = Storage(schema=config.dbschema) - -import tlib - -class Test(unittest.TestCase): - "Basic tests for the cco.storage package." - - def test_001_tracking(self): - tlib.test_tracking(self, storage) - - def test_002_folder(self): - tlib.test_folder(self, storage) - -def suite(): - return unittest.TestSuite(( - unittest.TestLoader().loadTestsFromTestCase(Test), - )) - -if __name__ == '__main__': - unittest.main(defaultTest='suite') diff --git a/tests/tlib.py b/tests/tlib.py index 00fa6d7..dac6db3 100644 --- a/tests/tlib.py +++ b/tests/tlib.py @@ -1,12 +1,20 @@ """The real test implementations""" - +import config from datetime import datetime from scopes.storage import folder, tracking -from scopes.storage.common import commit + +import scopes.storage.common +from scopes.storage.common import commit, Storage, getEngine, sessionFactory + +engine = getEngine(config.dbengine, config.dbname, config.dbuser, config.dbpassword) +scopes.storage.common.engine = engine +scopes.storage.common.Session = sessionFactory(engine) + +storage = Storage(schema=config.dbschema) -def test_tracking(self, storage): +def test_tracking(self): storage.dropTable('tracks') tracks = storage.create(tracking.Container) @@ -55,7 +63,7 @@ def test_tracking(self, storage): commit(storage.session) -def test_folder(self, storage): +def test_folder(self): storage.dropTable('folders') root = folder.Root(storage) self.assertEqual(list(root.keys()), [])