Hi,

Please find the attached patch to fix #2486: Feature tests use SQLITE_PATH
instead of TEST_SQLITE_PATH.

While running the feature tests, the separate process of the app does not
honour the config settings which are in runtests.py file.

Fix:
As per Dave, no need to set TESTING_MODE in config rather set environment
variable PGADMIN_TESTING_MODE to check the testing status and accordingly
set the TEST_SQLITE_PATH (i.e. Database path for testing).

Thanks,
Khushboo
diff --git a/web/pgadmin/__init__.py b/web/pgadmin/__init__.py
index 5a74927..14e84c8 100644
--- a/web/pgadmin/__init__.py
+++ b/web/pgadmin/__init__.py
@@ -170,6 +170,11 @@ def create_app(app_name=None):
     logger = logging.getLogger('werkzeug')
     logger.setLevel(logging.INFO)
 
+    # Set SQLITE_PATH to TEST_SQLITE_PATH while running test cases
+    if "PGADMIN_TESTING_MODE" in os. environ and\
+                    os.environ["PGADMIN_TESTING_MODE"] == "1":
+        config.SQLITE_PATH = config.TEST_SQLITE_PATH
+
     # Ensure the various working directories exist
     from pgadmin.setup import create_app_data_directory, db_upgrade
     create_app_data_directory(config)
diff --git a/web/regression/runtests.py b/web/regression/runtests.py
index 3339cd6..2d4e2bc 100644
--- a/web/regression/runtests.py
+++ b/web/regression/runtests.py
@@ -50,7 +50,7 @@ from regression.feature_utils.app_starter import AppStarter
 if os.path.isfile(config.TEST_SQLITE_PATH):
     os.remove(config.TEST_SQLITE_PATH)
 
-config.TESTING_MODE = True
+os.environ["PGADMIN_TESTING_MODE"] = "1"
 
 # Disable upgrade checks - no need during testing, and it'll cause an error
 # if there's no network connection when it runs.
@@ -408,6 +408,9 @@ if __name__ == '__main__':
 
     print("Please check output in file: %s/regression.log\n" % CURRENT_PATH)
 
+    # Unset environment variable
+    del os.environ["PGADMIN_TESTING_MODE"]
+
     if failure:
         sys.exit(1)
     else:
diff --git a/web/setup.py b/web/setup.py
index ab8dab6..36db0af 100644
--- a/web/setup.py
+++ b/web/setup.py
@@ -33,7 +33,8 @@ if __name__ == '__main__':
 
     app.config.from_object(config)
 
-    if config.TESTING_MODE:
+    if "PGADMIN_TESTING_MODE" in os. environ and\
+                    os.environ["PGADMIN_TESTING_MODE"] == "1":
         config.SQLITE_PATH = config.TEST_SQLITE_PATH
 
     create_app_data_directory(config)
-- 
Sent via pgadmin-hackers mailing list (pgadmin-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgadmin-hackers

Reply via email to