From 3828adc68b5e820b1a9e41ae41adc4aa73efa9f4 Mon Sep 17 00:00:00 2001 From: Dominik Moritz Date: Wed, 6 Mar 2013 16:19:19 +0100 Subject: [PATCH] [#560] Test datastore configuration --- ckanext/datastore/tests/test_configure.py | 39 +++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 ckanext/datastore/tests/test_configure.py diff --git a/ckanext/datastore/tests/test_configure.py b/ckanext/datastore/tests/test_configure.py new file mode 100644 index 00000000000..eb96c9bdc49 --- /dev/null +++ b/ckanext/datastore/tests/test_configure.py @@ -0,0 +1,39 @@ +import unittest + +import ckanext.datastore.plugin as plugin + + +class TestTypeGetters(unittest.TestCase): + def setUp(self): + self.p = plugin.DatastorePlugin() + + def test_legacy_mode_default(self): + assert not self.p.legacy_mode + + def test_set_legacy_mode(self): + assert not self.p.legacy_mode + c = { + 'sqlalchemy.url': 'bar', + 'ckan.datastore.write_url': 'foo' + } + try: + self.p.configure(c) + except Exception: + pass + assert self.p.legacy_mode + assert self.p.write_url == 'foo' + assert self.p.read_url == 'foo' + + def test_check_separate_db(self): + self.p.write_url = 'postgresql://u:pass@localhost/dt' + self.p.read_url = 'postgresql://u:pass@localhost/dt' + self.p.ckan_url = 'postgresql://u:pass@localhost/ckan' + + self.p.legacy_mode = True + try: + self.p._check_separate_db() + except Exception: + self.fail("_check_separate_db raise Exception unexpectedly!") + + self.p.legacy_mode = False + self.assertRaises(Exception, self.p._check_separate_db)