public inbox for [email protected]  
help / color / mirror / Atom feed
Patch for RM1720 [pgadmin4]
6+ messages / 3 participants
[nested] [flat]

* Patch for RM1720 [pgadmin4]
@ 2016-09-21 12:57  Harshal Dhumal <[email protected]>
  0 siblings, 1 reply; 6+ messages in thread

From: Harshal Dhumal @ 2016-09-21 12:57 UTC (permalink / raw)
  To: pgadmin-hackers

Hi,

PFA patch for RM1720


Issue: In pgAdmin4 we use server id (sid, which is id of server table in
sqlite db) as key to keep track of server connection (server manger). But
sqlite reuses these ids and therefore pgadmin4 connection manager assigns
connection details of one database server to another in some cases.

To avoid this issue we now deleting server connection details (server
manger) when user drops server.

-- 
*Harshal Dhumal*
*Software Engineer*

EnterpriseDB India: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


-- 
Sent via pgadmin-hackers mailing list ([email protected])
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgadmin-hackers


Attachments:

  [text/x-patch] RM1720.patch (6.6K, 3-RM1720.patch)
  download | inline diff:
diff --git a/web/pgadmin/browser/server_groups/servers/__init__.py b/web/pgadmin/browser/server_groups/servers/__init__.py
index 0b6c6ca..627cc5f 100644
--- a/web/pgadmin/browser/server_groups/servers/__init__.py
+++ b/web/pgadmin/browser/server_groups/servers/__init__.py
@@ -24,6 +24,7 @@ from pgadmin.utils.menu import MenuItem
 import config
 from config import PG_DEFAULT_DRIVER
 from pgadmin.model import db, Server, ServerGroup, User
+from pgadmin.utils.driver import get_driver
 
 
 def has_any(data, keys):
@@ -64,7 +65,6 @@ class ServerModule(sg.ServerGroupPluginModule):
         servers = Server.query.filter_by(user_id=current_user.id,
                                          servergroup_id=gid)
 
-        from pgadmin.utils.driver import get_driver
         driver = get_driver(PG_DEFAULT_DRIVER)
 
         for server in servers:
@@ -156,7 +156,6 @@ class ServerModule(sg.ServerGroupPluginModule):
         sub-modules at once.
         """
         if first_registration:
-            from pgadmin.utils.driver import get_driver
             driver = get_driver(PG_DEFAULT_DRIVER, app)
             app.jinja_env.filters['qtLiteral'] = driver.qtLiteral
             app.jinja_env.filters['qtIdent'] = driver.qtIdent
@@ -224,7 +223,6 @@ class ServerNode(PGChildNodeView):
         servers = Server.query.filter_by(user_id=current_user.id,
                                          servergroup_id=gid)
 
-        from pgadmin.utils.driver import get_driver
         driver = get_driver(PG_DEFAULT_DRIVER)
 
         for server in servers:
@@ -293,7 +291,6 @@ class ServerNode(PGChildNodeView):
                 )
             )
 
-        from pgadmin.utils.driver import get_driver
         manager = get_driver(PG_DEFAULT_DRIVER).connection_manager(server.id)
         conn = manager.connection()
         connected = conn.connected()
@@ -355,6 +352,8 @@ class ServerNode(PGChildNodeView):
                 for s in servers:
                     db.session.delete(s)
                 db.session.commit()
+                get_driver(PG_DEFAULT_DRIVER).delete_manager(sid)
+
             except Exception as e:
                 current_app.logger.exception(e)
                 return make_json_response(
@@ -405,7 +404,6 @@ class ServerNode(PGChildNodeView):
             request.data, encoding='utf-8'
         )
 
-        from pgadmin.utils.driver import get_driver
         manager = get_driver(PG_DEFAULT_DRIVER).connection_manager(sid)
         conn = manager.connection()
         connected = conn.connected()
@@ -473,7 +471,6 @@ class ServerNode(PGChildNodeView):
         ).first()
         res = []
 
-        from pgadmin.utils.driver import get_driver
         driver = get_driver(PG_DEFAULT_DRIVER)
 
         for server in servers:
@@ -519,7 +516,6 @@ class ServerNode(PGChildNodeView):
             id=server.servergroup_id
         ).first()
 
-        from pgadmin.utils.driver import get_driver
         driver = get_driver(PG_DEFAULT_DRIVER)
 
         manager = driver.connection_manager(sid)
@@ -594,7 +590,6 @@ class ServerNode(PGChildNodeView):
             user = None
 
             if 'connect_now' in data and data['connect_now']:
-                from pgadmin.utils.driver import get_driver
                 manager = get_driver(PG_DEFAULT_DRIVER).connection_manager(server.id)
                 manager.update(server)
                 conn = manager.connection()
@@ -663,7 +658,6 @@ class ServerNode(PGChildNodeView):
         return make_json_response(data='')
 
     def statistics(self, gid, sid):
-        from pgadmin.utils.driver import get_driver
         manager = get_driver(PG_DEFAULT_DRIVER).connection_manager(sid)
         conn = manager.connection()
 
@@ -717,7 +711,6 @@ class ServerNode(PGChildNodeView):
 
     def connect_status(self, gid, sid):
         """Check and return the connection status."""
-        from pgadmin.utils.driver import get_driver
         manager = get_driver(PG_DEFAULT_DRIVER).connection_manager(sid)
         conn = manager.connection()
         res = conn.connected()
@@ -769,7 +762,6 @@ class ServerNode(PGChildNodeView):
         save_password = False
 
         # Connect the Server
-        from pgadmin.utils.driver import get_driver
         manager = get_driver(PG_DEFAULT_DRIVER).connection_manager(sid)
         conn = manager.connection()
 
@@ -902,7 +894,6 @@ class ServerNode(PGChildNodeView):
             return bad_request(gettext("Server not found."))
 
         # Release Connection
-        from pgadmin.utils.driver import get_driver
         manager = get_driver(PG_DEFAULT_DRIVER).connection_manager(sid)
 
         status = manager.release()
@@ -923,7 +914,6 @@ class ServerNode(PGChildNodeView):
         """Reload the server configuration"""
 
         # Reload the server configurations
-        from pgadmin.utils.driver import get_driver
         manager = get_driver(PG_DEFAULT_DRIVER).connection_manager(sid)
         conn = manager.connection()
 
@@ -958,7 +948,6 @@ class ServerNode(PGChildNodeView):
         try:
             data = request.form
             restore_point_name = data['value'] if data else None
-            from pgadmin.utils.driver import get_driver
             manager = get_driver(PG_DEFAULT_DRIVER).connection_manager(sid)
             conn = manager.connection()
 
@@ -1033,7 +1022,6 @@ class ServerNode(PGChildNodeView):
             if user is None:
                 return unauthorized(gettext("Unauthorized request."))
 
-            from pgadmin.utils.driver import get_driver
             manager = get_driver(PG_DEFAULT_DRIVER).connection_manager(sid)
             conn = manager.connection()
 
@@ -1100,7 +1088,6 @@ class ServerNode(PGChildNodeView):
             )
 
         try:
-            from pgadmin.utils.driver import get_driver
             manager = get_driver(PG_DEFAULT_DRIVER).connection_manager(sid)
             conn = manager.connection()
 
diff --git a/web/pgadmin/utils/driver/psycopg2/__init__.py b/web/pgadmin/utils/driver/psycopg2/__init__.py
index 2d6239f..5c2c53c 100644
--- a/web/pgadmin/utils/driver/psycopg2/__init__.py
+++ b/web/pgadmin/utils/driver/psycopg2/__init__.py
@@ -1721,6 +1721,16 @@ class Driver(BaseDriver):
         """
         return self.connection_manager(sid).release(database, conn_id)
 
+    def delete_manager(self, sid):
+        """
+        Delete manager for given server id.
+        """
+        manager = self.connection_manager(sid)
+        manager.release()
+        if session['_id'] in self.managers and \
+                str(sid) in self.managers[session['_id']]:
+            del self.managers[session['_id']][str(sid)]
+
     def gc(self):
         """
         Release the connections for the sessions, which have not pinged the


^ permalink  raw  reply  [nested|flat] 6+ messages in thread

* Re: Patch for RM1720 [pgadmin4]
@ 2016-09-21 13:20  Dave Page <[email protected]>
  parent: Harshal Dhumal <[email protected]>
  0 siblings, 1 reply; 6+ messages in thread

From: Dave Page @ 2016-09-21 13:20 UTC (permalink / raw)
  To: Harshal Dhumal <[email protected]>; +Cc: pgadmin-hackers; Navnath Gadakh <[email protected]>

Hi

On Wed, Sep 21, 2016 at 1:57 PM, Harshal Dhumal
<[email protected]> wrote:
> Hi,
>
> PFA patch for RM1720
>
>
> Issue: In pgAdmin4 we use server id (sid, which is id of server table in
> sqlite db) as key to keep track of server connection (server manger). But
> sqlite reuses these ids and therefore pgadmin4 connection manager assigns
> connection details of one database server to another in some cases.
>
> To avoid this issue we now deleting server connection details (server
> manger) when user drops server.

Looks like it still needs some work I'm afraid (though, I think the
approach is correct). Here's what I get running the regression tests:

Interestingly; the error seen when running the test against PG 9.4
isn't detected as a failure. Can you look at that aspect please
Navnath?


(pgadmin4)piranha:web dpage$ python regression/runtests.py
pgAdmin 4 - Application Initialisation
======================================


The configuration database - '/Users/dpage/.pgadmin/test_pgadmin4.db'
does not exist.
Entering initial setup mode...
NOTE: Configuring authentication for SERVER mode.


The configuration database has been created at
/Users/dpage/.pgadmin/test_pgadmin4.db

=============Running the test cases for 'Regression - PG 9.4'=============
runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_add.DatabaseAddTestCase)
This function will add database under 1st server of tree node. (Check
Databases Node URL) ... ok
runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_delete.DatabaseDeleteTestCase)
This function will delete the database. (Check Databases Node URL) ... ok
runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_get.DatabasesGetTestCase)
This function will fetch added database. (Check Databases Node URL) ... ok
runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_put.DatabasesUpdateTestCase)
This function will update the comments field of database. (Check
Databases Node) ... ok
runTest (pgadmin.browser.server_groups.servers.tests.test_server_add.ServersAddTestCase)
This function will add the server under default server group. (Default
Server Node url) ... ok
runTest (pgadmin.browser.server_groups.servers.tests.test_server_delete.ServerDeleteTestCase)
This function deletes the added server (Default Server Node url) ...
2016-09-21 14:15:58,737: ERROR pgadmin: 'NoneType' object has no
attribute 'release'
Traceback (most recent call last):
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/__init__.py",
line 355, in delete
    get_driver(PG_DEFAULT_DRIVER).delete_manager(sid)
  File "/Users/dpage/git/pgadmin4/web/pgadmin/utils/driver/psycopg2/__init__.py",
line 1729, in delete_manager
    manager.release()
AttributeError: 'NoneType' object has no attribute 'release'
ok
runTest (pgadmin.browser.server_groups.servers.tests.test_server_get.ServersGetTestCase)
This function will fetch the added servers to object browser. (Default
Server Node url) ... ok
runTest (pgadmin.browser.server_groups.servers.tests.test_server_put.ServerUpdateTestCase)
This function update the server details (Default Server Node url) ... ok
runTest (pgadmin.browser.server_groups.tests.test_sg_get.SgNodeTestCase)
This function will check available server groups. (Check Server Group
Node) ... ok
runTest (pgadmin.browser.tests.test_change_password.ChangePasswordTestCase)
This function will check change password functionality. (TestCase for
Validating Incorrect_New_Password) ... ok
runTest (pgadmin.browser.tests.test_change_password.ChangePasswordTestCase)
This function will check change password functionality. (TestCase for
Validating New_Password_Less_Than_Min_Length) ... ok
runTest (pgadmin.browser.tests.test_change_password.ChangePasswordTestCase)
This function will check change password functionality. (TestCase for
Validating Empty_New_Password) ... ok
runTest (pgadmin.browser.tests.test_change_password.ChangePasswordTestCase)
This function will check change password functionality. (TestCase for
Validating Incorrect_Current_Password) ... ok
runTest (pgadmin.browser.tests.test_change_password.ChangePasswordTestCase)
This function will check change password functionality. (TestCase for
Changing Valid_Password) ... ok
runTest (pgadmin.browser.tests.test_login.LoginTestCase)
This function checks login functionality. (TestCase for Checking
Invalid_Password) ... ok
runTest (pgadmin.browser.tests.test_login.LoginTestCase)
This function checks login functionality. (Empty_Password) ... ok
runTest (pgadmin.browser.tests.test_login.LoginTestCase)
This function checks login functionality. (Empty_Email) ... ok
runTest (pgadmin.browser.tests.test_login.LoginTestCase)
This function checks login functionality. (Empty_Credentials) ... ok
runTest (pgadmin.browser.tests.test_login.LoginTestCase)
This function checks login functionality. (Invalid_Email) ... ok
runTest (pgadmin.browser.tests.test_login.LoginTestCase)
This function checks login functionality. (Invalid_Credentials) ... ok
runTest (pgadmin.browser.tests.test_login.LoginTestCase)
This function checks login functionality. (Valid_Credentials) ... ok
runTest (pgadmin.browser.tests.test_logout.LogoutTest)
This function checks the logout functionality. (Logging Out) ... ok
runTest (pgadmin.browser.tests.test_reset_password.ResetPasswordTestCase)
This function checks reset password functionality. (TestCase for
Validating Empty Email) ... ok
runTest (pgadmin.browser.tests.test_reset_password.ResetPasswordTestCase)
This function checks reset password functionality. (TestCase for
Validating Invalid_Email) ... ok
runTest (pgadmin.browser.tests.test_reset_password.ResetPasswordTestCase)
This function checks reset password functionality. (TestCase for
Validating Valid_Email) ... ok

----------------------------------------------------------------------
Ran 25 tests in 11.024s

OK

=============Running the test cases for 'Regression - PG 9.5'=============
runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_add.DatabaseAddTestCase)
This function will add database under 1st server of tree node. (Check
Databases Node URL) ... ok
runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_delete.DatabaseDeleteTestCase)
This function will delete the database. (Check Databases Node URL) ... FAIL
runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_get.DatabasesGetTestCase)
This function will fetch added database. (Check Databases Node URL) ... ERROR
runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_put.DatabasesUpdateTestCase)
This function will update the comments field of database. (Check
Databases Node) ... ERROR
runTest (pgadmin.browser.server_groups.servers.tests.test_server_add.ServersAddTestCase)
This function will add the server under default server group. (Default
Server Node url) ... ok
runTest (pgadmin.browser.server_groups.servers.tests.test_server_delete.ServerDeleteTestCase)
This function deletes the added server (Default Server Node url) ... ok
runTest (pgadmin.browser.server_groups.servers.tests.test_server_get.ServersGetTestCase)
This function will fetch the added servers to object browser. (Default
Server Node url) ... ok
runTest (pgadmin.browser.server_groups.servers.tests.test_server_put.ServerUpdateTestCase)
This function update the server details (Default Server Node url) ... ok
runTest (pgadmin.browser.server_groups.tests.test_sg_get.SgNodeTestCase)
This function will check available server groups. (Check Server Group
Node) ... ok
runTest (pgadmin.browser.tests.test_change_password.ChangePasswordTestCase)
This function will check change password functionality. (TestCase for
Validating Incorrect_New_Password) ... ok
runTest (pgadmin.browser.tests.test_change_password.ChangePasswordTestCase)
This function will check change password functionality. (TestCase for
Validating New_Password_Less_Than_Min_Length) ... ok
runTest (pgadmin.browser.tests.test_change_password.ChangePasswordTestCase)
This function will check change password functionality. (TestCase for
Validating Empty_New_Password) ... ok
runTest (pgadmin.browser.tests.test_change_password.ChangePasswordTestCase)
This function will check change password functionality. (TestCase for
Validating Incorrect_Current_Password) ... ok
runTest (pgadmin.browser.tests.test_change_password.ChangePasswordTestCase)
This function will check change password functionality. (TestCase for
Changing Valid_Password) ... ok
runTest (pgadmin.browser.tests.test_login.LoginTestCase)
This function checks login functionality. (TestCase for Checking
Invalid_Password) ... ok
runTest (pgadmin.browser.tests.test_login.LoginTestCase)
This function checks login functionality. (Empty_Password) ... ok
runTest (pgadmin.browser.tests.test_login.LoginTestCase)
This function checks login functionality. (Empty_Email) ... ok
runTest (pgadmin.browser.tests.test_login.LoginTestCase)
This function checks login functionality. (Empty_Credentials) ... ok
runTest (pgadmin.browser.tests.test_login.LoginTestCase)
This function checks login functionality. (Invalid_Email) ... ok
runTest (pgadmin.browser.tests.test_login.LoginTestCase)
This function checks login functionality. (Invalid_Credentials) ... ok
runTest (pgadmin.browser.tests.test_login.LoginTestCase)
This function checks login functionality. (Valid_Credentials) ... ok
runTest (pgadmin.browser.tests.test_logout.LogoutTest)
This function checks the logout functionality. (Logging Out) ... ok
runTest (pgadmin.browser.tests.test_reset_password.ResetPasswordTestCase)
This function checks reset password functionality. (TestCase for
Validating Empty Email) ... ok
runTest (pgadmin.browser.tests.test_reset_password.ResetPasswordTestCase)
This function checks reset password functionality. (TestCase for
Validating Invalid_Email) ... ok
runTest (pgadmin.browser.tests.test_reset_password.ResetPasswordTestCase)
This function checks reset password functionality. (TestCase for
Validating Valid_Email) ... ok

======================================================================
ERROR: runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_get.DatabasesGetTestCase)
This function will fetch added database. (Check Databases Node URL)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/tests/test_db_get.py",
line 33, in runTest
    self.db_id)
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/tests/utils.py",
line 142, in verify_database
    follow_redirects=True)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
line 788, in post
    return self.open(*args, **kw)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/testing.py",
line 113, in open
    follow_redirects=follow_redirects)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
line 751, in open
    response = self.run_wsgi_app(environ, buffered=buffered)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
line 668, in run_wsgi_app
    rv = run_wsgi_app(self.application, environ, buffered=buffered)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
line 871, in run_wsgi_app
    app_rv = app(environ, start_response)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 2000, in __call__
    return self.wsgi_app(environ, start_response)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1991, in wsgi_app
    response = self.make_response(self.handle_exception(e))
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1567, in handle_exception
    reraise(exc_type, exc_value, tb)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1988, in wsgi_app
    response = self.full_dispatch_request()
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1641, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1544, in handle_user_exception
    reraise(exc_type, exc_value, tb)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1639, in full_dispatch_request
    rv = self.dispatch_request()
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1625, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/views.py",
line 84, in view
    return self.dispatch_request(*args, **kwargs)
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/utils.py", line
235, in dispatch_request
    return method(*args, **kwargs)
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/__init__.py",
line 364, in connect
    conn = manager.connection(did=did, auto_reconnect=True)
  File "/Users/dpage/git/pgadmin4/web/pgadmin/utils/driver/psycopg2/__init__.py",
line 1448, in connection
    "Couldn't find the specified database."
Exception: Couldn't find the specified database.

======================================================================
ERROR: runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_put.DatabasesUpdateTestCase)
This function will update the comments field of database. (Check Databases Node)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/tests/test_db_put.py",
line 37, in runTest
    db_id)
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/tests/utils.py",
line 142, in verify_database
    follow_redirects=True)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
line 788, in post
    return self.open(*args, **kw)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/testing.py",
line 113, in open
    follow_redirects=follow_redirects)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
line 751, in open
    response = self.run_wsgi_app(environ, buffered=buffered)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
line 668, in run_wsgi_app
    rv = run_wsgi_app(self.application, environ, buffered=buffered)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
line 871, in run_wsgi_app
    app_rv = app(environ, start_response)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 2000, in __call__
    return self.wsgi_app(environ, start_response)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1991, in wsgi_app
    response = self.make_response(self.handle_exception(e))
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1567, in handle_exception
    reraise(exc_type, exc_value, tb)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1988, in wsgi_app
    response = self.full_dispatch_request()
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1641, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1544, in handle_user_exception
    reraise(exc_type, exc_value, tb)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1639, in full_dispatch_request
    rv = self.dispatch_request()
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1625, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/views.py",
line 84, in view
    return self.dispatch_request(*args, **kwargs)
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/utils.py", line
235, in dispatch_request
    return method(*args, **kwargs)
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/__init__.py",
line 364, in connect
    conn = manager.connection(did=did, auto_reconnect=True)
  File "/Users/dpage/git/pgadmin4/web/pgadmin/utils/driver/psycopg2/__init__.py",
line 1448, in connection
    "Couldn't find the specified database."
Exception: Couldn't find the specified database.

======================================================================
FAIL: runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_delete.DatabaseDeleteTestCase)
This function will delete the database. (Check Databases Node URL)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/tests/test_db_delete.py",
line 38, in runTest
    self.assertEquals(response.status_code, 200)
AssertionError: 410 != 200

----------------------------------------------------------------------
Ran 25 tests in 10.845s

FAILED (failures=1, errors=2)

=============Running the test cases for 'Regression - EPAS 9.5'=============
runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_add.DatabaseAddTestCase)
This function will add database under 1st server of tree node. (Check
Databases Node URL) ... ok
runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_delete.DatabaseDeleteTestCase)
This function will delete the database. (Check Databases Node URL) ... FAIL
runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_get.DatabasesGetTestCase)
This function will fetch added database. (Check Databases Node URL) ... ERROR
runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_put.DatabasesUpdateTestCase)
This function will update the comments field of database. (Check
Databases Node) ... ERROR
runTest (pgadmin.browser.server_groups.servers.tests.test_server_add.ServersAddTestCase)
This function will add the server under default server group. (Default
Server Node url) ... ok
runTest (pgadmin.browser.server_groups.servers.tests.test_server_delete.ServerDeleteTestCase)
This function deletes the added server (Default Server Node url) ... ok
runTest (pgadmin.browser.server_groups.servers.tests.test_server_get.ServersGetTestCase)
This function will fetch the added servers to object browser. (Default
Server Node url) ... ok
runTest (pgadmin.browser.server_groups.servers.tests.test_server_put.ServerUpdateTestCase)
This function update the server details (Default Server Node url) ... ok
runTest (pgadmin.browser.server_groups.tests.test_sg_get.SgNodeTestCase)
This function will check available server groups. (Check Server Group
Node) ... ok
runTest (pgadmin.browser.tests.test_change_password.ChangePasswordTestCase)
This function will check change password functionality. (TestCase for
Validating Incorrect_New_Password) ... ok
runTest (pgadmin.browser.tests.test_change_password.ChangePasswordTestCase)
This function will check change password functionality. (TestCase for
Validating New_Password_Less_Than_Min_Length) ... ok
runTest (pgadmin.browser.tests.test_change_password.ChangePasswordTestCase)
This function will check change password functionality. (TestCase for
Validating Empty_New_Password) ... ok
runTest (pgadmin.browser.tests.test_change_password.ChangePasswordTestCase)
This function will check change password functionality. (TestCase for
Validating Incorrect_Current_Password) ... ok
runTest (pgadmin.browser.tests.test_change_password.ChangePasswordTestCase)
This function will check change password functionality. (TestCase for
Changing Valid_Password) ... ok
runTest (pgadmin.browser.tests.test_login.LoginTestCase)
This function checks login functionality. (TestCase for Checking
Invalid_Password) ... ok
runTest (pgadmin.browser.tests.test_login.LoginTestCase)
This function checks login functionality. (Empty_Password) ... ok
runTest (pgadmin.browser.tests.test_login.LoginTestCase)
This function checks login functionality. (Empty_Email) ... ok
runTest (pgadmin.browser.tests.test_login.LoginTestCase)
This function checks login functionality. (Empty_Credentials) ... ok
runTest (pgadmin.browser.tests.test_login.LoginTestCase)
This function checks login functionality. (Invalid_Email) ... ok
runTest (pgadmin.browser.tests.test_login.LoginTestCase)
This function checks login functionality. (Invalid_Credentials) ... ok
runTest (pgadmin.browser.tests.test_login.LoginTestCase)
This function checks login functionality. (Valid_Credentials) ... ok
runTest (pgadmin.browser.tests.test_logout.LogoutTest)
This function checks the logout functionality. (Logging Out) ... ok
runTest (pgadmin.browser.tests.test_reset_password.ResetPasswordTestCase)
This function checks reset password functionality. (TestCase for
Validating Empty Email) ... ok
runTest (pgadmin.browser.tests.test_reset_password.ResetPasswordTestCase)
This function checks reset password functionality. (TestCase for
Validating Invalid_Email) ... ok
runTest (pgadmin.browser.tests.test_reset_password.ResetPasswordTestCase)
This function checks reset password functionality. (TestCase for
Validating Valid_Email) ... ok

======================================================================
ERROR: runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_get.DatabasesGetTestCase)
This function will fetch added database. (Check Databases Node URL)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/tests/test_db_get.py",
line 33, in runTest
    self.db_id)
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/tests/utils.py",
line 142, in verify_database
    follow_redirects=True)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
line 788, in post
    return self.open(*args, **kw)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/testing.py",
line 113, in open
    follow_redirects=follow_redirects)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
line 751, in open
    response = self.run_wsgi_app(environ, buffered=buffered)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
line 668, in run_wsgi_app
    rv = run_wsgi_app(self.application, environ, buffered=buffered)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
line 871, in run_wsgi_app
    app_rv = app(environ, start_response)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 2000, in __call__
    return self.wsgi_app(environ, start_response)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1991, in wsgi_app
    response = self.make_response(self.handle_exception(e))
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1567, in handle_exception
    reraise(exc_type, exc_value, tb)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1988, in wsgi_app
    response = self.full_dispatch_request()
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1641, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1544, in handle_user_exception
    reraise(exc_type, exc_value, tb)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1639, in full_dispatch_request
    rv = self.dispatch_request()
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1625, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/views.py",
line 84, in view
    return self.dispatch_request(*args, **kwargs)
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/utils.py", line
235, in dispatch_request
    return method(*args, **kwargs)
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/__init__.py",
line 364, in connect
    conn = manager.connection(did=did, auto_reconnect=True)
  File "/Users/dpage/git/pgadmin4/web/pgadmin/utils/driver/psycopg2/__init__.py",
line 1448, in connection
    "Couldn't find the specified database."
Exception: Couldn't find the specified database.

======================================================================
ERROR: runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_put.DatabasesUpdateTestCase)
This function will update the comments field of database. (Check Databases Node)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/tests/test_db_put.py",
line 37, in runTest
    db_id)
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/tests/utils.py",
line 142, in verify_database
    follow_redirects=True)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
line 788, in post
    return self.open(*args, **kw)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/testing.py",
line 113, in open
    follow_redirects=follow_redirects)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
line 751, in open
    response = self.run_wsgi_app(environ, buffered=buffered)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
line 668, in run_wsgi_app
    rv = run_wsgi_app(self.application, environ, buffered=buffered)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
line 871, in run_wsgi_app
    app_rv = app(environ, start_response)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 2000, in __call__
    return self.wsgi_app(environ, start_response)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1991, in wsgi_app
    response = self.make_response(self.handle_exception(e))
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1567, in handle_exception
    reraise(exc_type, exc_value, tb)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1988, in wsgi_app
    response = self.full_dispatch_request()
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1641, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1544, in handle_user_exception
    reraise(exc_type, exc_value, tb)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1639, in full_dispatch_request
    rv = self.dispatch_request()
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1625, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/views.py",
line 84, in view
    return self.dispatch_request(*args, **kwargs)
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/utils.py", line
235, in dispatch_request
    return method(*args, **kwargs)
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/__init__.py",
line 364, in connect
    conn = manager.connection(did=did, auto_reconnect=True)
  File "/Users/dpage/git/pgadmin4/web/pgadmin/utils/driver/psycopg2/__init__.py",
line 1448, in connection
    "Couldn't find the specified database."
Exception: Couldn't find the specified database.

======================================================================
FAIL: runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_delete.DatabaseDeleteTestCase)
This function will delete the database. (Check Databases Node URL)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/tests/test_db_delete.py",
line 38, in runTest
    self.assertEquals(response.status_code, 200)
AssertionError: 410 != 200

----------------------------------------------------------------------
Ran 25 tests in 13.194s

FAILED (failures=1, errors=2)

Test Result Summary
============================
Regression - EPAS 9.5: 22 tests passed, 3 tests failed :
DatabaseDeleteTestCase
DatabasesGetTestCase
DatabasesUpdateTestCase
Regression - PG 9.5: 22 tests passed, 3 tests failed :
DatabaseDeleteTestCase
DatabasesGetTestCase
DatabasesUpdateTestCase
Regression - PG 9.4: 25 tests passed, 0 tests failed
============================


-- 
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


-- 
Sent via pgadmin-hackers mailing list ([email protected])
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgadmin-hackers



^ permalink  raw  reply  [nested|flat] 6+ messages in thread

* Re: Patch for RM1720 [pgadmin4]
@ 2016-09-21 15:02  Navnath Gadakh <[email protected]>
  parent: Dave Page <[email protected]>
  0 siblings, 1 reply; 6+ messages in thread

From: Navnath Gadakh @ 2016-09-21 15:02 UTC (permalink / raw)
  To: Dave Page <[email protected]>; +Cc: Harshal Dhumal <[email protected]>; pgadmin-hackers

Hi Dave,
        Can you please run testsuite for server or database node only, as
there are some code modifications are remaining on the rest of the nodes.
Currently i don't have a machine to look into issue, will check it tomorrow.

Thanks.

On 21-Sep-2016 6:50 PM, "Dave Page" <[email protected]> wrote:

> Hi
>
> On Wed, Sep 21, 2016 at 1:57 PM, Harshal Dhumal
> <[email protected]> wrote:
> > Hi,
> >
> > PFA patch for RM1720
> >
> >
> > Issue: In pgAdmin4 we use server id (sid, which is id of server table in
> > sqlite db) as key to keep track of server connection (server manger). But
> > sqlite reuses these ids and therefore pgadmin4 connection manager assigns
> > connection details of one database server to another in some cases.
> >
> > To avoid this issue we now deleting server connection details (server
> > manger) when user drops server.
>
> Looks like it still needs some work I'm afraid (though, I think the
> approach is correct). Here's what I get running the regression tests:
>
> Interestingly; the error seen when running the test against PG 9.4
> isn't detected as a failure. Can you look at that aspect please
> Navnath?
>
>
> (pgadmin4)piranha:web dpage$ python regression/runtests.py
> pgAdmin 4 - Application Initialisation
> ======================================
>
>
> The configuration database - '/Users/dpage/.pgadmin/test_pgadmin4.db'
> does not exist.
> Entering initial setup mode...
> NOTE: Configuring authentication for SERVER mode.
>
>
> The configuration database has been created at
> /Users/dpage/.pgadmin/test_pgadmin4.db
>
> =============Running the test cases for 'Regression - PG 9.4'=============
> runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_add.DatabaseAddTestCase)
> This function will add database under 1st server of tree node. (Check
> Databases Node URL) ... ok
> runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_delete.DatabaseDeleteTestCase)
> This function will delete the database. (Check Databases Node URL) ... ok
> runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_get.DatabasesGetTestCase)
> This function will fetch added database. (Check Databases Node URL) ... ok
> runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_put.DatabasesUpdateTestCase)
> This function will update the comments field of database. (Check
> Databases Node) ... ok
> runTest (pgadmin.browser.server_groups.servers.tests.test_
> server_add.ServersAddTestCase)
> This function will add the server under default server group. (Default
> Server Node url) ... ok
> runTest (pgadmin.browser.server_groups.servers.tests.test_server_delete.
> ServerDeleteTestCase)
> This function deletes the added server (Default Server Node url) ...
> 2016-09-21 14:15:58,737: ERROR pgadmin: 'NoneType' object has no
> attribute 'release'
> Traceback (most recent call last):
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_
> groups/servers/__init__.py",
> line 355, in delete
>     get_driver(PG_DEFAULT_DRIVER).delete_manager(sid)
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/utils/driver/
> psycopg2/__init__.py",
> line 1729, in delete_manager
>     manager.release()
> AttributeError: 'NoneType' object has no attribute 'release'
> ok
> runTest (pgadmin.browser.server_groups.servers.tests.test_
> server_get.ServersGetTestCase)
> This function will fetch the added servers to object browser. (Default
> Server Node url) ... ok
> runTest (pgadmin.browser.server_groups.servers.tests.test_server_put.
> ServerUpdateTestCase)
> This function update the server details (Default Server Node url) ... ok
> runTest (pgadmin.browser.server_groups.tests.test_sg_get.SgNodeTestCase)
> This function will check available server groups. (Check Server Group
> Node) ... ok
> runTest (pgadmin.browser.tests.test_change_password.
> ChangePasswordTestCase)
> This function will check change password functionality. (TestCase for
> Validating Incorrect_New_Password) ... ok
> runTest (pgadmin.browser.tests.test_change_password.
> ChangePasswordTestCase)
> This function will check change password functionality. (TestCase for
> Validating New_Password_Less_Than_Min_Length) ... ok
> runTest (pgadmin.browser.tests.test_change_password.
> ChangePasswordTestCase)
> This function will check change password functionality. (TestCase for
> Validating Empty_New_Password) ... ok
> runTest (pgadmin.browser.tests.test_change_password.
> ChangePasswordTestCase)
> This function will check change password functionality. (TestCase for
> Validating Incorrect_Current_Password) ... ok
> runTest (pgadmin.browser.tests.test_change_password.
> ChangePasswordTestCase)
> This function will check change password functionality. (TestCase for
> Changing Valid_Password) ... ok
> runTest (pgadmin.browser.tests.test_login.LoginTestCase)
> This function checks login functionality. (TestCase for Checking
> Invalid_Password) ... ok
> runTest (pgadmin.browser.tests.test_login.LoginTestCase)
> This function checks login functionality. (Empty_Password) ... ok
> runTest (pgadmin.browser.tests.test_login.LoginTestCase)
> This function checks login functionality. (Empty_Email) ... ok
> runTest (pgadmin.browser.tests.test_login.LoginTestCase)
> This function checks login functionality. (Empty_Credentials) ... ok
> runTest (pgadmin.browser.tests.test_login.LoginTestCase)
> This function checks login functionality. (Invalid_Email) ... ok
> runTest (pgadmin.browser.tests.test_login.LoginTestCase)
> This function checks login functionality. (Invalid_Credentials) ... ok
> runTest (pgadmin.browser.tests.test_login.LoginTestCase)
> This function checks login functionality. (Valid_Credentials) ... ok
> runTest (pgadmin.browser.tests.test_logout.LogoutTest)
> This function checks the logout functionality. (Logging Out) ... ok
> runTest (pgadmin.browser.tests.test_reset_password.ResetPasswordTestCase)
> This function checks reset password functionality. (TestCase for
> Validating Empty Email) ... ok
> runTest (pgadmin.browser.tests.test_reset_password.ResetPasswordTestCase)
> This function checks reset password functionality. (TestCase for
> Validating Invalid_Email) ... ok
> runTest (pgadmin.browser.tests.test_reset_password.ResetPasswordTestCase)
> This function checks reset password functionality. (TestCase for
> Validating Valid_Email) ... ok
>
> ----------------------------------------------------------------------
> Ran 25 tests in 11.024s
>
> OK
>
> =============Running the test cases for 'Regression - PG 9.5'=============
> runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_add.DatabaseAddTestCase)
> This function will add database under 1st server of tree node. (Check
> Databases Node URL) ... ok
> runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_delete.DatabaseDeleteTestCase)
> This function will delete the database. (Check Databases Node URL) ... FAIL
> runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_get.DatabasesGetTestCase)
> This function will fetch added database. (Check Databases Node URL) ...
> ERROR
> runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_put.DatabasesUpdateTestCase)
> This function will update the comments field of database. (Check
> Databases Node) ... ERROR
> runTest (pgadmin.browser.server_groups.servers.tests.test_
> server_add.ServersAddTestCase)
> This function will add the server under default server group. (Default
> Server Node url) ... ok
> runTest (pgadmin.browser.server_groups.servers.tests.test_server_delete.
> ServerDeleteTestCase)
> This function deletes the added server (Default Server Node url) ... ok
> runTest (pgadmin.browser.server_groups.servers.tests.test_
> server_get.ServersGetTestCase)
> This function will fetch the added servers to object browser. (Default
> Server Node url) ... ok
> runTest (pgadmin.browser.server_groups.servers.tests.test_server_put.
> ServerUpdateTestCase)
> This function update the server details (Default Server Node url) ... ok
> runTest (pgadmin.browser.server_groups.tests.test_sg_get.SgNodeTestCase)
> This function will check available server groups. (Check Server Group
> Node) ... ok
> runTest (pgadmin.browser.tests.test_change_password.
> ChangePasswordTestCase)
> This function will check change password functionality. (TestCase for
> Validating Incorrect_New_Password) ... ok
> runTest (pgadmin.browser.tests.test_change_password.
> ChangePasswordTestCase)
> This function will check change password functionality. (TestCase for
> Validating New_Password_Less_Than_Min_Length) ... ok
> runTest (pgadmin.browser.tests.test_change_password.
> ChangePasswordTestCase)
> This function will check change password functionality. (TestCase for
> Validating Empty_New_Password) ... ok
> runTest (pgadmin.browser.tests.test_change_password.
> ChangePasswordTestCase)
> This function will check change password functionality. (TestCase for
> Validating Incorrect_Current_Password) ... ok
> runTest (pgadmin.browser.tests.test_change_password.
> ChangePasswordTestCase)
> This function will check change password functionality. (TestCase for
> Changing Valid_Password) ... ok
> runTest (pgadmin.browser.tests.test_login.LoginTestCase)
> This function checks login functionality. (TestCase for Checking
> Invalid_Password) ... ok
> runTest (pgadmin.browser.tests.test_login.LoginTestCase)
> This function checks login functionality. (Empty_Password) ... ok
> runTest (pgadmin.browser.tests.test_login.LoginTestCase)
> This function checks login functionality. (Empty_Email) ... ok
> runTest (pgadmin.browser.tests.test_login.LoginTestCase)
> This function checks login functionality. (Empty_Credentials) ... ok
> runTest (pgadmin.browser.tests.test_login.LoginTestCase)
> This function checks login functionality. (Invalid_Email) ... ok
> runTest (pgadmin.browser.tests.test_login.LoginTestCase)
> This function checks login functionality. (Invalid_Credentials) ... ok
> runTest (pgadmin.browser.tests.test_login.LoginTestCase)
> This function checks login functionality. (Valid_Credentials) ... ok
> runTest (pgadmin.browser.tests.test_logout.LogoutTest)
> This function checks the logout functionality. (Logging Out) ... ok
> runTest (pgadmin.browser.tests.test_reset_password.ResetPasswordTestCase)
> This function checks reset password functionality. (TestCase for
> Validating Empty Email) ... ok
> runTest (pgadmin.browser.tests.test_reset_password.ResetPasswordTestCase)
> This function checks reset password functionality. (TestCase for
> Validating Invalid_Email) ... ok
> runTest (pgadmin.browser.tests.test_reset_password.ResetPasswordTestCase)
> This function checks reset password functionality. (TestCase for
> Validating Valid_Email) ... ok
>
> ======================================================================
> ERROR: runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_get.DatabasesGetTestCase)
> This function will fetch added database. (Check Databases Node URL)
> ----------------------------------------------------------------------
> Traceback (most recent call last):
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_
> groups/servers/databases/tests/test_db_get.py",
> line 33, in runTest
>     self.db_id)
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_
> groups/servers/databases/tests/utils.py",
> line 142, in verify_database
>     follow_redirects=True)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/werkzeug/test.py",
> line 788, in post
>     return self.open(*args, **kw)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/testing.py",
> line 113, in open
>     follow_redirects=follow_redirects)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/werkzeug/test.py",
> line 751, in open
>     response = self.run_wsgi_app(environ, buffered=buffered)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/werkzeug/test.py",
> line 668, in run_wsgi_app
>     rv = run_wsgi_app(self.application, environ, buffered=buffered)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/werkzeug/test.py",
> line 871, in run_wsgi_app
>     app_rv = app(environ, start_response)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 2000, in __call__
>     return self.wsgi_app(environ, start_response)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1991, in wsgi_app
>     response = self.make_response(self.handle_exception(e))
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1567, in handle_exception
>     reraise(exc_type, exc_value, tb)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1988, in wsgi_app
>     response = self.full_dispatch_request()
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1641, in full_dispatch_request
>     rv = self.handle_user_exception(e)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1544, in handle_user_exception
>     reraise(exc_type, exc_value, tb)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1639, in full_dispatch_request
>     rv = self.dispatch_request()
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1625, in dispatch_request
>     return self.view_functions[rule.endpoint](**req.view_args)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/views.py",
> line 84, in view
>     return self.dispatch_request(*args, **kwargs)
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/utils.py", line
> 235, in dispatch_request
>     return method(*args, **kwargs)
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_
> groups/servers/databases/__init__.py",
> line 364, in connect
>     conn = manager.connection(did=did, auto_reconnect=True)
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/utils/driver/
> psycopg2/__init__.py",
> line 1448, in connection
>     "Couldn't find the specified database."
> Exception: Couldn't find the specified database.
>
> ======================================================================
> ERROR: runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_put.DatabasesUpdateTestCase)
> This function will update the comments field of database. (Check Databases
> Node)
> ----------------------------------------------------------------------
> Traceback (most recent call last):
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_
> groups/servers/databases/tests/test_db_put.py",
> line 37, in runTest
>     db_id)
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_
> groups/servers/databases/tests/utils.py",
> line 142, in verify_database
>     follow_redirects=True)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/werkzeug/test.py",
> line 788, in post
>     return self.open(*args, **kw)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/testing.py",
> line 113, in open
>     follow_redirects=follow_redirects)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/werkzeug/test.py",
> line 751, in open
>     response = self.run_wsgi_app(environ, buffered=buffered)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/werkzeug/test.py",
> line 668, in run_wsgi_app
>     rv = run_wsgi_app(self.application, environ, buffered=buffered)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/werkzeug/test.py",
> line 871, in run_wsgi_app
>     app_rv = app(environ, start_response)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 2000, in __call__
>     return self.wsgi_app(environ, start_response)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1991, in wsgi_app
>     response = self.make_response(self.handle_exception(e))
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1567, in handle_exception
>     reraise(exc_type, exc_value, tb)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1988, in wsgi_app
>     response = self.full_dispatch_request()
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1641, in full_dispatch_request
>     rv = self.handle_user_exception(e)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1544, in handle_user_exception
>     reraise(exc_type, exc_value, tb)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1639, in full_dispatch_request
>     rv = self.dispatch_request()
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1625, in dispatch_request
>     return self.view_functions[rule.endpoint](**req.view_args)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/views.py",
> line 84, in view
>     return self.dispatch_request(*args, **kwargs)
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/utils.py", line
> 235, in dispatch_request
>     return method(*args, **kwargs)
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_
> groups/servers/databases/__init__.py",
> line 364, in connect
>     conn = manager.connection(did=did, auto_reconnect=True)
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/utils/driver/
> psycopg2/__init__.py",
> line 1448, in connection
>     "Couldn't find the specified database."
> Exception: Couldn't find the specified database.
>
> ======================================================================
> FAIL: runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_delete.DatabaseDeleteTestCase)
> This function will delete the database. (Check Databases Node URL)
> ----------------------------------------------------------------------
> Traceback (most recent call last):
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_
> groups/servers/databases/tests/test_db_delete.py",
> line 38, in runTest
>     self.assertEquals(response.status_code, 200)
> AssertionError: 410 != 200
>
> ----------------------------------------------------------------------
> Ran 25 tests in 10.845s
>
> FAILED (failures=1, errors=2)
>
> =============Running the test cases for 'Regression - EPAS
> 9.5'=============
> runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_add.DatabaseAddTestCase)
> This function will add database under 1st server of tree node. (Check
> Databases Node URL) ... ok
> runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_delete.DatabaseDeleteTestCase)
> This function will delete the database. (Check Databases Node URL) ... FAIL
> runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_get.DatabasesGetTestCase)
> This function will fetch added database. (Check Databases Node URL) ...
> ERROR
> runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_put.DatabasesUpdateTestCase)
> This function will update the comments field of database. (Check
> Databases Node) ... ERROR
> runTest (pgadmin.browser.server_groups.servers.tests.test_
> server_add.ServersAddTestCase)
> This function will add the server under default server group. (Default
> Server Node url) ... ok
> runTest (pgadmin.browser.server_groups.servers.tests.test_server_delete.
> ServerDeleteTestCase)
> This function deletes the added server (Default Server Node url) ... ok
> runTest (pgadmin.browser.server_groups.servers.tests.test_
> server_get.ServersGetTestCase)
> This function will fetch the added servers to object browser. (Default
> Server Node url) ... ok
> runTest (pgadmin.browser.server_groups.servers.tests.test_server_put.
> ServerUpdateTestCase)
> This function update the server details (Default Server Node url) ... ok
> runTest (pgadmin.browser.server_groups.tests.test_sg_get.SgNodeTestCase)
> This function will check available server groups. (Check Server Group
> Node) ... ok
> runTest (pgadmin.browser.tests.test_change_password.
> ChangePasswordTestCase)
> This function will check change password functionality. (TestCase for
> Validating Incorrect_New_Password) ... ok
> runTest (pgadmin.browser.tests.test_change_password.
> ChangePasswordTestCase)
> This function will check change password functionality. (TestCase for
> Validating New_Password_Less_Than_Min_Length) ... ok
> runTest (pgadmin.browser.tests.test_change_password.
> ChangePasswordTestCase)
> This function will check change password functionality. (TestCase for
> Validating Empty_New_Password) ... ok
> runTest (pgadmin.browser.tests.test_change_password.
> ChangePasswordTestCase)
> This function will check change password functionality. (TestCase for
> Validating Incorrect_Current_Password) ... ok
> runTest (pgadmin.browser.tests.test_change_password.
> ChangePasswordTestCase)
> This function will check change password functionality. (TestCase for
> Changing Valid_Password) ... ok
> runTest (pgadmin.browser.tests.test_login.LoginTestCase)
> This function checks login functionality. (TestCase for Checking
> Invalid_Password) ... ok
> runTest (pgadmin.browser.tests.test_login.LoginTestCase)
> This function checks login functionality. (Empty_Password) ... ok
> runTest (pgadmin.browser.tests.test_login.LoginTestCase)
> This function checks login functionality. (Empty_Email) ... ok
> runTest (pgadmin.browser.tests.test_login.LoginTestCase)
> This function checks login functionality. (Empty_Credentials) ... ok
> runTest (pgadmin.browser.tests.test_login.LoginTestCase)
> This function checks login functionality. (Invalid_Email) ... ok
> runTest (pgadmin.browser.tests.test_login.LoginTestCase)
> This function checks login functionality. (Invalid_Credentials) ... ok
> runTest (pgadmin.browser.tests.test_login.LoginTestCase)
> This function checks login functionality. (Valid_Credentials) ... ok
> runTest (pgadmin.browser.tests.test_logout.LogoutTest)
> This function checks the logout functionality. (Logging Out) ... ok
> runTest (pgadmin.browser.tests.test_reset_password.ResetPasswordTestCase)
> This function checks reset password functionality. (TestCase for
> Validating Empty Email) ... ok
> runTest (pgadmin.browser.tests.test_reset_password.ResetPasswordTestCase)
> This function checks reset password functionality. (TestCase for
> Validating Invalid_Email) ... ok
> runTest (pgadmin.browser.tests.test_reset_password.ResetPasswordTestCase)
> This function checks reset password functionality. (TestCase for
> Validating Valid_Email) ... ok
>
> ======================================================================
> ERROR: runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_get.DatabasesGetTestCase)
> This function will fetch added database. (Check Databases Node URL)
> ----------------------------------------------------------------------
> Traceback (most recent call last):
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_
> groups/servers/databases/tests/test_db_get.py",
> line 33, in runTest
>     self.db_id)
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_
> groups/servers/databases/tests/utils.py",
> line 142, in verify_database
>     follow_redirects=True)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/werkzeug/test.py",
> line 788, in post
>     return self.open(*args, **kw)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/testing.py",
> line 113, in open
>     follow_redirects=follow_redirects)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/werkzeug/test.py",
> line 751, in open
>     response = self.run_wsgi_app(environ, buffered=buffered)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/werkzeug/test.py",
> line 668, in run_wsgi_app
>     rv = run_wsgi_app(self.application, environ, buffered=buffered)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/werkzeug/test.py",
> line 871, in run_wsgi_app
>     app_rv = app(environ, start_response)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 2000, in __call__
>     return self.wsgi_app(environ, start_response)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1991, in wsgi_app
>     response = self.make_response(self.handle_exception(e))
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1567, in handle_exception
>     reraise(exc_type, exc_value, tb)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1988, in wsgi_app
>     response = self.full_dispatch_request()
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1641, in full_dispatch_request
>     rv = self.handle_user_exception(e)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1544, in handle_user_exception
>     reraise(exc_type, exc_value, tb)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1639, in full_dispatch_request
>     rv = self.dispatch_request()
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1625, in dispatch_request
>     return self.view_functions[rule.endpoint](**req.view_args)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/views.py",
> line 84, in view
>     return self.dispatch_request(*args, **kwargs)
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/utils.py", line
> 235, in dispatch_request
>     return method(*args, **kwargs)
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_
> groups/servers/databases/__init__.py",
> line 364, in connect
>     conn = manager.connection(did=did, auto_reconnect=True)
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/utils/driver/
> psycopg2/__init__.py",
> line 1448, in connection
>     "Couldn't find the specified database."
> Exception: Couldn't find the specified database.
>
> ======================================================================
> ERROR: runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_put.DatabasesUpdateTestCase)
> This function will update the comments field of database. (Check Databases
> Node)
> ----------------------------------------------------------------------
> Traceback (most recent call last):
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_
> groups/servers/databases/tests/test_db_put.py",
> line 37, in runTest
>     db_id)
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_
> groups/servers/databases/tests/utils.py",
> line 142, in verify_database
>     follow_redirects=True)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/werkzeug/test.py",
> line 788, in post
>     return self.open(*args, **kw)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/testing.py",
> line 113, in open
>     follow_redirects=follow_redirects)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/werkzeug/test.py",
> line 751, in open
>     response = self.run_wsgi_app(environ, buffered=buffered)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/werkzeug/test.py",
> line 668, in run_wsgi_app
>     rv = run_wsgi_app(self.application, environ, buffered=buffered)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/werkzeug/test.py",
> line 871, in run_wsgi_app
>     app_rv = app(environ, start_response)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 2000, in __call__
>     return self.wsgi_app(environ, start_response)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1991, in wsgi_app
>     response = self.make_response(self.handle_exception(e))
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1567, in handle_exception
>     reraise(exc_type, exc_value, tb)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1988, in wsgi_app
>     response = self.full_dispatch_request()
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1641, in full_dispatch_request
>     rv = self.handle_user_exception(e)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1544, in handle_user_exception
>     reraise(exc_type, exc_value, tb)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1639, in full_dispatch_request
>     rv = self.dispatch_request()
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1625, in dispatch_request
>     return self.view_functions[rule.endpoint](**req.view_args)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/views.py",
> line 84, in view
>     return self.dispatch_request(*args, **kwargs)
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/utils.py", line
> 235, in dispatch_request
>     return method(*args, **kwargs)
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_
> groups/servers/databases/__init__.py",
> line 364, in connect
>     conn = manager.connection(did=did, auto_reconnect=True)
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/utils/driver/
> psycopg2/__init__.py",
> line 1448, in connection
>     "Couldn't find the specified database."
> Exception: Couldn't find the specified database.
>
> ======================================================================
> FAIL: runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_delete.DatabaseDeleteTestCase)
> This function will delete the database. (Check Databases Node URL)
> ----------------------------------------------------------------------
> Traceback (most recent call last):
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_
> groups/servers/databases/tests/test_db_delete.py",
> line 38, in runTest
>     self.assertEquals(response.status_code, 200)
> AssertionError: 410 != 200
>
> ----------------------------------------------------------------------
> Ran 25 tests in 13.194s
>
> FAILED (failures=1, errors=2)
>
> Test Result Summary
> ============================
> Regression - EPAS 9.5: 22 tests passed, 3 tests failed :
> DatabaseDeleteTestCase
> DatabasesGetTestCase
> DatabasesUpdateTestCase
> Regression - PG 9.5: 22 tests passed, 3 tests failed :
> DatabaseDeleteTestCase
> DatabasesGetTestCase
> DatabasesUpdateTestCase
> Regression - PG 9.4: 25 tests passed, 0 tests failed
> ============================
>
>
> --
> Dave Page
> Blog: http://pgsnake.blogspot.com
> Twitter: @pgsnake
>
> EnterpriseDB UK: http://www.enterprisedb.com
> The Enterprise PostgreSQL Company
>


^ permalink  raw  reply  [nested|flat] 6+ messages in thread

* Re: Patch for RM1720 [pgadmin4]
@ 2016-09-21 15:09  Dave Page <[email protected]>
  parent: Navnath Gadakh <[email protected]>
  0 siblings, 1 reply; 6+ messages in thread

From: Dave Page @ 2016-09-21 15:09 UTC (permalink / raw)
  To: Navnath Gadakh <[email protected]>; +Cc: Harshal Dhumal <[email protected]>; pgadmin-hackers

On Wed, Sep 21, 2016 at 4:02 PM, Navnath Gadakh
<[email protected]> wrote:
> Hi Dave,
>         Can you please run testsuite for server or database node only, as
> there are some code modifications are remaining on the rest of the nodes.
> Currently i don't have a machine to look into issue, will check it tomorrow.

OK, here's the result:

(pgadmin4)piranha:web dpage$ python regression/runtests.py --pkg
browser.server_groups.servers.databases
pgAdmin 4 - Application Initialisation
======================================


The configuration database - '/Users/dpage/.pgadmin/test_pgadmin4.db'
does not exist.
Entering initial setup mode...
NOTE: Configuring authentication for SERVER mode.


The configuration database has been created at
/Users/dpage/.pgadmin/test_pgadmin4.db

=============Running the test cases for 'Regression - PG 9.4'=============
runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_add.DatabaseAddTestCase)
This function will add database under 1st server of tree node. (Check
Databases Node URL) ... ok
runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_delete.DatabaseDeleteTestCase)
This function will delete the database. (Check Databases Node URL) ... ok
runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_get.DatabasesGetTestCase)
This function will fetch added database. (Check Databases Node URL) ... ok
runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_put.DatabasesUpdateTestCase)
This function will update the comments field of database. (Check
Databases Node) ... ok

----------------------------------------------------------------------
Ran 4 tests in 1.310s

OK

=============Running the test cases for 'Regression - PG 9.5'=============
runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_add.DatabaseAddTestCase)
This function will add database under 1st server of tree node. (Check
Databases Node URL) ... ok
runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_delete.DatabaseDeleteTestCase)
This function will delete the database. (Check Databases Node URL) ... FAIL
runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_get.DatabasesGetTestCase)
This function will fetch added database. (Check Databases Node URL) ... ERROR
runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_put.DatabasesUpdateTestCase)
This function will update the comments field of database. (Check
Databases Node) ... ERROR

======================================================================
ERROR: runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_get.DatabasesGetTestCase)
This function will fetch added database. (Check Databases Node URL)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/tests/test_db_get.py",
line 33, in runTest
    self.db_id)
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/tests/utils.py",
line 142, in verify_database
    follow_redirects=True)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
line 788, in post
    return self.open(*args, **kw)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/testing.py",
line 113, in open
    follow_redirects=follow_redirects)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
line 751, in open
    response = self.run_wsgi_app(environ, buffered=buffered)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
line 668, in run_wsgi_app
    rv = run_wsgi_app(self.application, environ, buffered=buffered)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
line 871, in run_wsgi_app
    app_rv = app(environ, start_response)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 2000, in __call__
    return self.wsgi_app(environ, start_response)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1991, in wsgi_app
    response = self.make_response(self.handle_exception(e))
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1567, in handle_exception
    reraise(exc_type, exc_value, tb)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1988, in wsgi_app
    response = self.full_dispatch_request()
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1641, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1544, in handle_user_exception
    reraise(exc_type, exc_value, tb)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1639, in full_dispatch_request
    rv = self.dispatch_request()
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1625, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/views.py",
line 84, in view
    return self.dispatch_request(*args, **kwargs)
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/utils.py", line
235, in dispatch_request
    return method(*args, **kwargs)
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/__init__.py",
line 364, in connect
    conn = manager.connection(did=did, auto_reconnect=True)
  File "/Users/dpage/git/pgadmin4/web/pgadmin/utils/driver/psycopg2/__init__.py",
line 1448, in connection
    "Couldn't find the specified database."
Exception: Couldn't find the specified database.

======================================================================
ERROR: runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_put.DatabasesUpdateTestCase)
This function will update the comments field of database. (Check Databases Node)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/tests/test_db_put.py",
line 37, in runTest
    db_id)
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/tests/utils.py",
line 142, in verify_database
    follow_redirects=True)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
line 788, in post
    return self.open(*args, **kw)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/testing.py",
line 113, in open
    follow_redirects=follow_redirects)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
line 751, in open
    response = self.run_wsgi_app(environ, buffered=buffered)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
line 668, in run_wsgi_app
    rv = run_wsgi_app(self.application, environ, buffered=buffered)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
line 871, in run_wsgi_app
    app_rv = app(environ, start_response)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 2000, in __call__
    return self.wsgi_app(environ, start_response)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1991, in wsgi_app
    response = self.make_response(self.handle_exception(e))
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1567, in handle_exception
    reraise(exc_type, exc_value, tb)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1988, in wsgi_app
    response = self.full_dispatch_request()
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1641, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1544, in handle_user_exception
    reraise(exc_type, exc_value, tb)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1639, in full_dispatch_request
    rv = self.dispatch_request()
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1625, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/views.py",
line 84, in view
    return self.dispatch_request(*args, **kwargs)
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/utils.py", line
235, in dispatch_request
    return method(*args, **kwargs)
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/__init__.py",
line 364, in connect
    conn = manager.connection(did=did, auto_reconnect=True)
  File "/Users/dpage/git/pgadmin4/web/pgadmin/utils/driver/psycopg2/__init__.py",
line 1448, in connection
    "Couldn't find the specified database."
Exception: Couldn't find the specified database.

======================================================================
FAIL: runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_delete.DatabaseDeleteTestCase)
This function will delete the database. (Check Databases Node URL)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/tests/test_db_delete.py",
line 38, in runTest
    self.assertEquals(response.status_code, 200)
AssertionError: 410 != 200

----------------------------------------------------------------------
Ran 4 tests in 1.019s

FAILED (failures=1, errors=2)

=============Running the test cases for 'Regression - EPAS 9.5'=============
runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_add.DatabaseAddTestCase)
This function will add database under 1st server of tree node. (Check
Databases Node URL) ... ok
runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_delete.DatabaseDeleteTestCase)
This function will delete the database. (Check Databases Node URL) ... FAIL
runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_get.DatabasesGetTestCase)
This function will fetch added database. (Check Databases Node URL) ... ERROR
runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_put.DatabasesUpdateTestCase)
This function will update the comments field of database. (Check
Databases Node) ... ERROR

======================================================================
ERROR: runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_get.DatabasesGetTestCase)
This function will fetch added database. (Check Databases Node URL)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/tests/test_db_get.py",
line 33, in runTest
    self.db_id)
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/tests/utils.py",
line 142, in verify_database
    follow_redirects=True)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
line 788, in post
    return self.open(*args, **kw)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/testing.py",
line 113, in open
    follow_redirects=follow_redirects)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
line 751, in open
    response = self.run_wsgi_app(environ, buffered=buffered)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
line 668, in run_wsgi_app
    rv = run_wsgi_app(self.application, environ, buffered=buffered)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
line 871, in run_wsgi_app
    app_rv = app(environ, start_response)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 2000, in __call__
    return self.wsgi_app(environ, start_response)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1991, in wsgi_app
    response = self.make_response(self.handle_exception(e))
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1567, in handle_exception
    reraise(exc_type, exc_value, tb)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1988, in wsgi_app
    response = self.full_dispatch_request()
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1641, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1544, in handle_user_exception
    reraise(exc_type, exc_value, tb)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1639, in full_dispatch_request
    rv = self.dispatch_request()
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1625, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/views.py",
line 84, in view
    return self.dispatch_request(*args, **kwargs)
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/utils.py", line
235, in dispatch_request
    return method(*args, **kwargs)
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/__init__.py",
line 364, in connect
    conn = manager.connection(did=did, auto_reconnect=True)
  File "/Users/dpage/git/pgadmin4/web/pgadmin/utils/driver/psycopg2/__init__.py",
line 1448, in connection
    "Couldn't find the specified database."
Exception: Couldn't find the specified database.

======================================================================
ERROR: runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_put.DatabasesUpdateTestCase)
This function will update the comments field of database. (Check Databases Node)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/tests/test_db_put.py",
line 37, in runTest
    db_id)
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/tests/utils.py",
line 142, in verify_database
    follow_redirects=True)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
line 788, in post
    return self.open(*args, **kw)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/testing.py",
line 113, in open
    follow_redirects=follow_redirects)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
line 751, in open
    response = self.run_wsgi_app(environ, buffered=buffered)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
line 668, in run_wsgi_app
    rv = run_wsgi_app(self.application, environ, buffered=buffered)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
line 871, in run_wsgi_app
    app_rv = app(environ, start_response)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 2000, in __call__
    return self.wsgi_app(environ, start_response)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1991, in wsgi_app
    response = self.make_response(self.handle_exception(e))
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1567, in handle_exception
    reraise(exc_type, exc_value, tb)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1988, in wsgi_app
    response = self.full_dispatch_request()
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1641, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1544, in handle_user_exception
    reraise(exc_type, exc_value, tb)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1639, in full_dispatch_request
    rv = self.dispatch_request()
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
line 1625, in dispatch_request
    return self.view_functions[rule.endpoint](**req.view_args)
  File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/views.py",
line 84, in view
    return self.dispatch_request(*args, **kwargs)
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/utils.py", line
235, in dispatch_request
    return method(*args, **kwargs)
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/__init__.py",
line 364, in connect
    conn = manager.connection(did=did, auto_reconnect=True)
  File "/Users/dpage/git/pgadmin4/web/pgadmin/utils/driver/psycopg2/__init__.py",
line 1448, in connection
    "Couldn't find the specified database."
Exception: Couldn't find the specified database.

======================================================================
FAIL: runTest (pgadmin.browser.server_groups.servers.databases.tests.test_db_delete.DatabaseDeleteTestCase)
This function will delete the database. (Check Databases Node URL)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/tests/test_db_delete.py",
line 38, in runTest
    self.assertEquals(response.status_code, 200)
AssertionError: 410 != 200

----------------------------------------------------------------------
Ran 4 tests in 1.807s

FAILED (failures=1, errors=2)

Test Result Summary
============================
Regression - EPAS 9.5: 1 test passed, 3 tests failed :
DatabaseDeleteTestCase
DatabasesGetTestCase
DatabasesUpdateTestCase
Regression - PG 9.5: 1 test passed, 3 tests failed :
DatabaseDeleteTestCase
DatabasesGetTestCase
DatabasesUpdateTestCase
Regression - PG 9.4: 4 tests passed, 0 tests failed
============================


-- 
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


-- 
Sent via pgadmin-hackers mailing list ([email protected])
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgadmin-hackers



^ permalink  raw  reply  [nested|flat] 6+ messages in thread

* Re: Patch for RM1720 [pgadmin4]
@ 2016-09-22 07:09  Harshal Dhumal <[email protected]>
  parent: Dave Page <[email protected]>
  0 siblings, 1 reply; 6+ messages in thread

From: Harshal Dhumal @ 2016-09-22 07:09 UTC (permalink / raw)
  To: Dave Page <[email protected]>; +Cc: Navnath Gadakh <[email protected]>; pgadmin-hackers

Hi,

Please find attached updated patch for RM1720.

Also test this patch with updated test suite patch which Navnath would be
sending.



-- 
*Harshal Dhumal*
*Software Engineer*

EnterpriseDB India: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

On Wed, Sep 21, 2016 at 8:39 PM, Dave Page <[email protected]> wrote:

> On Wed, Sep 21, 2016 at 4:02 PM, Navnath Gadakh
> <[email protected]> wrote:
> > Hi Dave,
> >         Can you please run testsuite for server or database node only, as
> > there are some code modifications are remaining on the rest of the nodes.
> > Currently i don't have a machine to look into issue, will check it
> tomorrow.
>
> OK, here's the result:
>
> (pgadmin4)piranha:web dpage$ python regression/runtests.py --pkg
> browser.server_groups.servers.databases
> pgAdmin 4 - Application Initialisation
> ======================================
>
>
> The configuration database - '/Users/dpage/.pgadmin/test_pgadmin4.db'
> does not exist.
> Entering initial setup mode...
> NOTE: Configuring authentication for SERVER mode.
>
>
> The configuration database has been created at
> /Users/dpage/.pgadmin/test_pgadmin4.db
>
> =============Running the test cases for 'Regression - PG 9.4'=============
> runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_add.DatabaseAddTestCase)
> This function will add database under 1st server of tree node. (Check
> Databases Node URL) ... ok
> runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_delete.DatabaseDeleteTestCase)
> This function will delete the database. (Check Databases Node URL) ... ok
> runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_get.DatabasesGetTestCase)
> This function will fetch added database. (Check Databases Node URL) ... ok
> runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_put.DatabasesUpdateTestCase)
> This function will update the comments field of database. (Check
> Databases Node) ... ok
>
> ----------------------------------------------------------------------
> Ran 4 tests in 1.310s
>
> OK
>
> =============Running the test cases for 'Regression - PG 9.5'=============
> runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_add.DatabaseAddTestCase)
> This function will add database under 1st server of tree node. (Check
> Databases Node URL) ... ok
> runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_delete.DatabaseDeleteTestCase)
> This function will delete the database. (Check Databases Node URL) ... FAIL
> runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_get.DatabasesGetTestCase)
> This function will fetch added database. (Check Databases Node URL) ...
> ERROR
> runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_put.DatabasesUpdateTestCase)
> This function will update the comments field of database. (Check
> Databases Node) ... ERROR
>
> ======================================================================
> ERROR: runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_get.DatabasesGetTestCase)
> This function will fetch added database. (Check Databases Node URL)
> ----------------------------------------------------------------------
> Traceback (most recent call last):
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_
> groups/servers/databases/tests/test_db_get.py",
> line 33, in runTest
>     self.db_id)
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_
> groups/servers/databases/tests/utils.py",
> line 142, in verify_database
>     follow_redirects=True)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/werkzeug/test.py",
> line 788, in post
>     return self.open(*args, **kw)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/testing.py",
> line 113, in open
>     follow_redirects=follow_redirects)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/werkzeug/test.py",
> line 751, in open
>     response = self.run_wsgi_app(environ, buffered=buffered)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/werkzeug/test.py",
> line 668, in run_wsgi_app
>     rv = run_wsgi_app(self.application, environ, buffered=buffered)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/werkzeug/test.py",
> line 871, in run_wsgi_app
>     app_rv = app(environ, start_response)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 2000, in __call__
>     return self.wsgi_app(environ, start_response)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1991, in wsgi_app
>     response = self.make_response(self.handle_exception(e))
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1567, in handle_exception
>     reraise(exc_type, exc_value, tb)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1988, in wsgi_app
>     response = self.full_dispatch_request()
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1641, in full_dispatch_request
>     rv = self.handle_user_exception(e)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1544, in handle_user_exception
>     reraise(exc_type, exc_value, tb)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1639, in full_dispatch_request
>     rv = self.dispatch_request()
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1625, in dispatch_request
>     return self.view_functions[rule.endpoint](**req.view_args)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/views.py",
> line 84, in view
>     return self.dispatch_request(*args, **kwargs)
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/utils.py", line
> 235, in dispatch_request
>     return method(*args, **kwargs)
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_
> groups/servers/databases/__init__.py",
> line 364, in connect
>     conn = manager.connection(did=did, auto_reconnect=True)
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/utils/driver/
> psycopg2/__init__.py",
> line 1448, in connection
>     "Couldn't find the specified database."
> Exception: Couldn't find the specified database.
>
> ======================================================================
> ERROR: runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_put.DatabasesUpdateTestCase)
> This function will update the comments field of database. (Check Databases
> Node)
> ----------------------------------------------------------------------
> Traceback (most recent call last):
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_
> groups/servers/databases/tests/test_db_put.py",
> line 37, in runTest
>     db_id)
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_
> groups/servers/databases/tests/utils.py",
> line 142, in verify_database
>     follow_redirects=True)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/werkzeug/test.py",
> line 788, in post
>     return self.open(*args, **kw)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/testing.py",
> line 113, in open
>     follow_redirects=follow_redirects)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/werkzeug/test.py",
> line 751, in open
>     response = self.run_wsgi_app(environ, buffered=buffered)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/werkzeug/test.py",
> line 668, in run_wsgi_app
>     rv = run_wsgi_app(self.application, environ, buffered=buffered)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/werkzeug/test.py",
> line 871, in run_wsgi_app
>     app_rv = app(environ, start_response)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 2000, in __call__
>     return self.wsgi_app(environ, start_response)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1991, in wsgi_app
>     response = self.make_response(self.handle_exception(e))
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1567, in handle_exception
>     reraise(exc_type, exc_value, tb)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1988, in wsgi_app
>     response = self.full_dispatch_request()
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1641, in full_dispatch_request
>     rv = self.handle_user_exception(e)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1544, in handle_user_exception
>     reraise(exc_type, exc_value, tb)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1639, in full_dispatch_request
>     rv = self.dispatch_request()
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1625, in dispatch_request
>     return self.view_functions[rule.endpoint](**req.view_args)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/views.py",
> line 84, in view
>     return self.dispatch_request(*args, **kwargs)
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/utils.py", line
> 235, in dispatch_request
>     return method(*args, **kwargs)
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_
> groups/servers/databases/__init__.py",
> line 364, in connect
>     conn = manager.connection(did=did, auto_reconnect=True)
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/utils/driver/
> psycopg2/__init__.py",
> line 1448, in connection
>     "Couldn't find the specified database."
> Exception: Couldn't find the specified database.
>
> ======================================================================
> FAIL: runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_delete.DatabaseDeleteTestCase)
> This function will delete the database. (Check Databases Node URL)
> ----------------------------------------------------------------------
> Traceback (most recent call last):
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_
> groups/servers/databases/tests/test_db_delete.py",
> line 38, in runTest
>     self.assertEquals(response.status_code, 200)
> AssertionError: 410 != 200
>
> ----------------------------------------------------------------------
> Ran 4 tests in 1.019s
>
> FAILED (failures=1, errors=2)
>
> =============Running the test cases for 'Regression - EPAS
> 9.5'=============
> runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_add.DatabaseAddTestCase)
> This function will add database under 1st server of tree node. (Check
> Databases Node URL) ... ok
> runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_delete.DatabaseDeleteTestCase)
> This function will delete the database. (Check Databases Node URL) ... FAIL
> runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_get.DatabasesGetTestCase)
> This function will fetch added database. (Check Databases Node URL) ...
> ERROR
> runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_put.DatabasesUpdateTestCase)
> This function will update the comments field of database. (Check
> Databases Node) ... ERROR
>
> ======================================================================
> ERROR: runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_get.DatabasesGetTestCase)
> This function will fetch added database. (Check Databases Node URL)
> ----------------------------------------------------------------------
> Traceback (most recent call last):
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_
> groups/servers/databases/tests/test_db_get.py",
> line 33, in runTest
>     self.db_id)
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_
> groups/servers/databases/tests/utils.py",
> line 142, in verify_database
>     follow_redirects=True)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/werkzeug/test.py",
> line 788, in post
>     return self.open(*args, **kw)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/testing.py",
> line 113, in open
>     follow_redirects=follow_redirects)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/werkzeug/test.py",
> line 751, in open
>     response = self.run_wsgi_app(environ, buffered=buffered)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/werkzeug/test.py",
> line 668, in run_wsgi_app
>     rv = run_wsgi_app(self.application, environ, buffered=buffered)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/werkzeug/test.py",
> line 871, in run_wsgi_app
>     app_rv = app(environ, start_response)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 2000, in __call__
>     return self.wsgi_app(environ, start_response)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1991, in wsgi_app
>     response = self.make_response(self.handle_exception(e))
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1567, in handle_exception
>     reraise(exc_type, exc_value, tb)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1988, in wsgi_app
>     response = self.full_dispatch_request()
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1641, in full_dispatch_request
>     rv = self.handle_user_exception(e)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1544, in handle_user_exception
>     reraise(exc_type, exc_value, tb)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1639, in full_dispatch_request
>     rv = self.dispatch_request()
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1625, in dispatch_request
>     return self.view_functions[rule.endpoint](**req.view_args)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/views.py",
> line 84, in view
>     return self.dispatch_request(*args, **kwargs)
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/utils.py", line
> 235, in dispatch_request
>     return method(*args, **kwargs)
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_
> groups/servers/databases/__init__.py",
> line 364, in connect
>     conn = manager.connection(did=did, auto_reconnect=True)
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/utils/driver/
> psycopg2/__init__.py",
> line 1448, in connection
>     "Couldn't find the specified database."
> Exception: Couldn't find the specified database.
>
> ======================================================================
> ERROR: runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_put.DatabasesUpdateTestCase)
> This function will update the comments field of database. (Check Databases
> Node)
> ----------------------------------------------------------------------
> Traceback (most recent call last):
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_
> groups/servers/databases/tests/test_db_put.py",
> line 37, in runTest
>     db_id)
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_
> groups/servers/databases/tests/utils.py",
> line 142, in verify_database
>     follow_redirects=True)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/werkzeug/test.py",
> line 788, in post
>     return self.open(*args, **kw)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/testing.py",
> line 113, in open
>     follow_redirects=follow_redirects)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/werkzeug/test.py",
> line 751, in open
>     response = self.run_wsgi_app(environ, buffered=buffered)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/werkzeug/test.py",
> line 668, in run_wsgi_app
>     rv = run_wsgi_app(self.application, environ, buffered=buffered)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/werkzeug/test.py",
> line 871, in run_wsgi_app
>     app_rv = app(environ, start_response)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 2000, in __call__
>     return self.wsgi_app(environ, start_response)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1991, in wsgi_app
>     response = self.make_response(self.handle_exception(e))
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1567, in handle_exception
>     reraise(exc_type, exc_value, tb)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1988, in wsgi_app
>     response = self.full_dispatch_request()
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1641, in full_dispatch_request
>     rv = self.handle_user_exception(e)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1544, in handle_user_exception
>     reraise(exc_type, exc_value, tb)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1639, in full_dispatch_request
>     rv = self.dispatch_request()
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/app.py",
> line 1625, in dispatch_request
>     return self.view_functions[rule.endpoint](**req.view_args)
>   File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-
> packages/flask/views.py",
> line 84, in view
>     return self.dispatch_request(*args, **kwargs)
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/utils.py", line
> 235, in dispatch_request
>     return method(*args, **kwargs)
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_
> groups/servers/databases/__init__.py",
> line 364, in connect
>     conn = manager.connection(did=did, auto_reconnect=True)
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/utils/driver/
> psycopg2/__init__.py",
> line 1448, in connection
>     "Couldn't find the specified database."
> Exception: Couldn't find the specified database.
>
> ======================================================================
> FAIL: runTest (pgadmin.browser.server_groups.servers.databases.
> tests.test_db_delete.DatabaseDeleteTestCase)
> This function will delete the database. (Check Databases Node URL)
> ----------------------------------------------------------------------
> Traceback (most recent call last):
>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_
> groups/servers/databases/tests/test_db_delete.py",
> line 38, in runTest
>     self.assertEquals(response.status_code, 200)
> AssertionError: 410 != 200
>
> ----------------------------------------------------------------------
> Ran 4 tests in 1.807s
>
> FAILED (failures=1, errors=2)
>
> Test Result Summary
> ============================
> Regression - EPAS 9.5: 1 test passed, 3 tests failed :
> DatabaseDeleteTestCase
> DatabasesGetTestCase
> DatabasesUpdateTestCase
> Regression - PG 9.5: 1 test passed, 3 tests failed :
> DatabaseDeleteTestCase
> DatabasesGetTestCase
> DatabasesUpdateTestCase
> Regression - PG 9.4: 4 tests passed, 0 tests failed
> ============================
>
>
> --
> Dave Page
> Blog: http://pgsnake.blogspot.com
> Twitter: @pgsnake
>
> EnterpriseDB UK: http://www.enterprisedb.com
> The Enterprise PostgreSQL Company
>


-- 
Sent via pgadmin-hackers mailing list ([email protected])
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgadmin-hackers


Attachments:

  [text/x-patch] RM1720_V2_22_Sep.patch (6.6K, 3-RM1720_V2_22_Sep.patch)
  download | inline diff:
diff --git a/web/pgadmin/browser/server_groups/servers/__init__.py b/web/pgadmin/browser/server_groups/servers/__init__.py
index 0b6c6ca..611d701 100644
--- a/web/pgadmin/browser/server_groups/servers/__init__.py
+++ b/web/pgadmin/browser/server_groups/servers/__init__.py
@@ -24,6 +24,7 @@ from pgadmin.utils.menu import MenuItem
 import config
 from config import PG_DEFAULT_DRIVER
 from pgadmin.model import db, Server, ServerGroup, User
+from pgadmin.utils.driver import get_driver
 
 
 def has_any(data, keys):
@@ -64,7 +65,6 @@ class ServerModule(sg.ServerGroupPluginModule):
         servers = Server.query.filter_by(user_id=current_user.id,
                                          servergroup_id=gid)
 
-        from pgadmin.utils.driver import get_driver
         driver = get_driver(PG_DEFAULT_DRIVER)
 
         for server in servers:
@@ -156,7 +156,6 @@ class ServerModule(sg.ServerGroupPluginModule):
         sub-modules at once.
         """
         if first_registration:
-            from pgadmin.utils.driver import get_driver
             driver = get_driver(PG_DEFAULT_DRIVER, app)
             app.jinja_env.filters['qtLiteral'] = driver.qtLiteral
             app.jinja_env.filters['qtIdent'] = driver.qtIdent
@@ -224,7 +223,6 @@ class ServerNode(PGChildNodeView):
         servers = Server.query.filter_by(user_id=current_user.id,
                                          servergroup_id=gid)
 
-        from pgadmin.utils.driver import get_driver
         driver = get_driver(PG_DEFAULT_DRIVER)
 
         for server in servers:
@@ -293,7 +291,6 @@ class ServerNode(PGChildNodeView):
                 )
             )
 
-        from pgadmin.utils.driver import get_driver
         manager = get_driver(PG_DEFAULT_DRIVER).connection_manager(server.id)
         conn = manager.connection()
         connected = conn.connected()
@@ -353,6 +350,7 @@ class ServerNode(PGChildNodeView):
         else:
             try:
                 for s in servers:
+                    get_driver(PG_DEFAULT_DRIVER).delete_manager(s.id)
                     db.session.delete(s)
                 db.session.commit()
             except Exception as e:
@@ -405,7 +403,6 @@ class ServerNode(PGChildNodeView):
             request.data, encoding='utf-8'
         )
 
-        from pgadmin.utils.driver import get_driver
         manager = get_driver(PG_DEFAULT_DRIVER).connection_manager(sid)
         conn = manager.connection()
         connected = conn.connected()
@@ -473,7 +470,6 @@ class ServerNode(PGChildNodeView):
         ).first()
         res = []
 
-        from pgadmin.utils.driver import get_driver
         driver = get_driver(PG_DEFAULT_DRIVER)
 
         for server in servers:
@@ -519,7 +515,6 @@ class ServerNode(PGChildNodeView):
             id=server.servergroup_id
         ).first()
 
-        from pgadmin.utils.driver import get_driver
         driver = get_driver(PG_DEFAULT_DRIVER)
 
         manager = driver.connection_manager(sid)
@@ -594,7 +589,6 @@ class ServerNode(PGChildNodeView):
             user = None
 
             if 'connect_now' in data and data['connect_now']:
-                from pgadmin.utils.driver import get_driver
                 manager = get_driver(PG_DEFAULT_DRIVER).connection_manager(server.id)
                 manager.update(server)
                 conn = manager.connection()
@@ -663,7 +657,6 @@ class ServerNode(PGChildNodeView):
         return make_json_response(data='')
 
     def statistics(self, gid, sid):
-        from pgadmin.utils.driver import get_driver
         manager = get_driver(PG_DEFAULT_DRIVER).connection_manager(sid)
         conn = manager.connection()
 
@@ -717,7 +710,6 @@ class ServerNode(PGChildNodeView):
 
     def connect_status(self, gid, sid):
         """Check and return the connection status."""
-        from pgadmin.utils.driver import get_driver
         manager = get_driver(PG_DEFAULT_DRIVER).connection_manager(sid)
         conn = manager.connection()
         res = conn.connected()
@@ -769,7 +761,6 @@ class ServerNode(PGChildNodeView):
         save_password = False
 
         # Connect the Server
-        from pgadmin.utils.driver import get_driver
         manager = get_driver(PG_DEFAULT_DRIVER).connection_manager(sid)
         conn = manager.connection()
 
@@ -902,7 +893,6 @@ class ServerNode(PGChildNodeView):
             return bad_request(gettext("Server not found."))
 
         # Release Connection
-        from pgadmin.utils.driver import get_driver
         manager = get_driver(PG_DEFAULT_DRIVER).connection_manager(sid)
 
         status = manager.release()
@@ -923,7 +913,6 @@ class ServerNode(PGChildNodeView):
         """Reload the server configuration"""
 
         # Reload the server configurations
-        from pgadmin.utils.driver import get_driver
         manager = get_driver(PG_DEFAULT_DRIVER).connection_manager(sid)
         conn = manager.connection()
 
@@ -958,7 +947,6 @@ class ServerNode(PGChildNodeView):
         try:
             data = request.form
             restore_point_name = data['value'] if data else None
-            from pgadmin.utils.driver import get_driver
             manager = get_driver(PG_DEFAULT_DRIVER).connection_manager(sid)
             conn = manager.connection()
 
@@ -1033,7 +1021,6 @@ class ServerNode(PGChildNodeView):
             if user is None:
                 return unauthorized(gettext("Unauthorized request."))
 
-            from pgadmin.utils.driver import get_driver
             manager = get_driver(PG_DEFAULT_DRIVER).connection_manager(sid)
             conn = manager.connection()
 
@@ -1100,7 +1087,6 @@ class ServerNode(PGChildNodeView):
             )
 
         try:
-            from pgadmin.utils.driver import get_driver
             manager = get_driver(PG_DEFAULT_DRIVER).connection_manager(sid)
             conn = manager.connection()
 
diff --git a/web/pgadmin/utils/driver/psycopg2/__init__.py b/web/pgadmin/utils/driver/psycopg2/__init__.py
index 2d6239f..1ad3aa8 100644
--- a/web/pgadmin/utils/driver/psycopg2/__init__.py
+++ b/web/pgadmin/utils/driver/psycopg2/__init__.py
@@ -1721,6 +1721,17 @@ class Driver(BaseDriver):
         """
         return self.connection_manager(sid).release(database, conn_id)
 
+    def delete_manager(self, sid):
+        """
+        Delete manager for given server id.
+        """
+        manager = self.connection_manager(sid)
+        if manager is not None:
+            manager.release()
+        if session['_id'] in self.managers and \
+                str(sid) in self.managers[session['_id']]:
+            del self.managers[session['_id']][str(sid)]
+
     def gc(self):
         """
         Release the connections for the sessions, which have not pinged the


^ permalink  raw  reply  [nested|flat] 6+ messages in thread

* Re: Patch for RM1720 [pgadmin4]
@ 2016-09-22 11:59  Dave Page <[email protected]>
  parent: Harshal Dhumal <[email protected]>
  0 siblings, 0 replies; 6+ messages in thread

From: Dave Page @ 2016-09-22 11:59 UTC (permalink / raw)
  To: Harshal Dhumal <[email protected]>; +Cc: Navnath Gadakh <[email protected]>; pgadmin-hackers

Great - all tests pass now.

So, it would be very helpful if the rest of the tests that are
outstanding can now be completed before GA is wrapped on Monday :-)

Thanks!

On Thu, Sep 22, 2016 at 8:09 AM, Harshal Dhumal
<[email protected]> wrote:
> Hi,
>
> Please find attached updated patch for RM1720.
>
> Also test this patch with updated test suite patch which Navnath would be
> sending.
>
>
>
> --
> Harshal Dhumal
> Software Engineer
>
> EnterpriseDB India: http://www.enterprisedb.com
> The Enterprise PostgreSQL Company
>
> On Wed, Sep 21, 2016 at 8:39 PM, Dave Page <[email protected]> wrote:
>>
>> On Wed, Sep 21, 2016 at 4:02 PM, Navnath Gadakh
>> <[email protected]> wrote:
>> > Hi Dave,
>> >         Can you please run testsuite for server or database node only,
>> > as
>> > there are some code modifications are remaining on the rest of the
>> > nodes.
>> > Currently i don't have a machine to look into issue, will check it
>> > tomorrow.
>>
>> OK, here's the result:
>>
>> (pgadmin4)piranha:web dpage$ python regression/runtests.py --pkg
>> browser.server_groups.servers.databases
>> pgAdmin 4 - Application Initialisation
>> ======================================
>>
>>
>> The configuration database - '/Users/dpage/.pgadmin/test_pgadmin4.db'
>> does not exist.
>> Entering initial setup mode...
>> NOTE: Configuring authentication for SERVER mode.
>>
>>
>> The configuration database has been created at
>> /Users/dpage/.pgadmin/test_pgadmin4.db
>>
>> =============Running the test cases for 'Regression - PG 9.4'=============
>> runTest
>> (pgadmin.browser.server_groups.servers.databases.tests.test_db_add.DatabaseAddTestCase)
>> This function will add database under 1st server of tree node. (Check
>> Databases Node URL) ... ok
>> runTest
>> (pgadmin.browser.server_groups.servers.databases.tests.test_db_delete.DatabaseDeleteTestCase)
>> This function will delete the database. (Check Databases Node URL) ... ok
>> runTest
>> (pgadmin.browser.server_groups.servers.databases.tests.test_db_get.DatabasesGetTestCase)
>> This function will fetch added database. (Check Databases Node URL) ... ok
>> runTest
>> (pgadmin.browser.server_groups.servers.databases.tests.test_db_put.DatabasesUpdateTestCase)
>> This function will update the comments field of database. (Check
>> Databases Node) ... ok
>>
>> ----------------------------------------------------------------------
>> Ran 4 tests in 1.310s
>>
>> OK
>>
>> =============Running the test cases for 'Regression - PG 9.5'=============
>> runTest
>> (pgadmin.browser.server_groups.servers.databases.tests.test_db_add.DatabaseAddTestCase)
>> This function will add database under 1st server of tree node. (Check
>> Databases Node URL) ... ok
>> runTest
>> (pgadmin.browser.server_groups.servers.databases.tests.test_db_delete.DatabaseDeleteTestCase)
>> This function will delete the database. (Check Databases Node URL) ...
>> FAIL
>> runTest
>> (pgadmin.browser.server_groups.servers.databases.tests.test_db_get.DatabasesGetTestCase)
>> This function will fetch added database. (Check Databases Node URL) ...
>> ERROR
>> runTest
>> (pgadmin.browser.server_groups.servers.databases.tests.test_db_put.DatabasesUpdateTestCase)
>> This function will update the comments field of database. (Check
>> Databases Node) ... ERROR
>>
>> ======================================================================
>> ERROR: runTest
>> (pgadmin.browser.server_groups.servers.databases.tests.test_db_get.DatabasesGetTestCase)
>> This function will fetch added database. (Check Databases Node URL)
>> ----------------------------------------------------------------------
>> Traceback (most recent call last):
>>   File
>> "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/tests/test_db_get.py",
>> line 33, in runTest
>>     self.db_id)
>>   File
>> "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/tests/utils.py",
>> line 142, in verify_database
>>     follow_redirects=True)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
>> line 788, in post
>>     return self.open(*args, **kw)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/testing.py",
>> line 113, in open
>>     follow_redirects=follow_redirects)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
>> line 751, in open
>>     response = self.run_wsgi_app(environ, buffered=buffered)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
>> line 668, in run_wsgi_app
>>     rv = run_wsgi_app(self.application, environ, buffered=buffered)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
>> line 871, in run_wsgi_app
>>     app_rv = app(environ, start_response)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
>> line 2000, in __call__
>>     return self.wsgi_app(environ, start_response)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
>> line 1991, in wsgi_app
>>     response = self.make_response(self.handle_exception(e))
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
>> line 1567, in handle_exception
>>     reraise(exc_type, exc_value, tb)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
>> line 1988, in wsgi_app
>>     response = self.full_dispatch_request()
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
>> line 1641, in full_dispatch_request
>>     rv = self.handle_user_exception(e)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
>> line 1544, in handle_user_exception
>>     reraise(exc_type, exc_value, tb)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
>> line 1639, in full_dispatch_request
>>     rv = self.dispatch_request()
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
>> line 1625, in dispatch_request
>>     return self.view_functions[rule.endpoint](**req.view_args)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/views.py",
>> line 84, in view
>>     return self.dispatch_request(*args, **kwargs)
>>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/utils.py", line
>> 235, in dispatch_request
>>     return method(*args, **kwargs)
>>   File
>> "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/__init__.py",
>> line 364, in connect
>>     conn = manager.connection(did=did, auto_reconnect=True)
>>   File
>> "/Users/dpage/git/pgadmin4/web/pgadmin/utils/driver/psycopg2/__init__.py",
>> line 1448, in connection
>>     "Couldn't find the specified database."
>> Exception: Couldn't find the specified database.
>>
>> ======================================================================
>> ERROR: runTest
>> (pgadmin.browser.server_groups.servers.databases.tests.test_db_put.DatabasesUpdateTestCase)
>> This function will update the comments field of database. (Check Databases
>> Node)
>> ----------------------------------------------------------------------
>> Traceback (most recent call last):
>>   File
>> "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/tests/test_db_put.py",
>> line 37, in runTest
>>     db_id)
>>   File
>> "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/tests/utils.py",
>> line 142, in verify_database
>>     follow_redirects=True)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
>> line 788, in post
>>     return self.open(*args, **kw)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/testing.py",
>> line 113, in open
>>     follow_redirects=follow_redirects)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
>> line 751, in open
>>     response = self.run_wsgi_app(environ, buffered=buffered)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
>> line 668, in run_wsgi_app
>>     rv = run_wsgi_app(self.application, environ, buffered=buffered)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
>> line 871, in run_wsgi_app
>>     app_rv = app(environ, start_response)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
>> line 2000, in __call__
>>     return self.wsgi_app(environ, start_response)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
>> line 1991, in wsgi_app
>>     response = self.make_response(self.handle_exception(e))
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
>> line 1567, in handle_exception
>>     reraise(exc_type, exc_value, tb)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
>> line 1988, in wsgi_app
>>     response = self.full_dispatch_request()
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
>> line 1641, in full_dispatch_request
>>     rv = self.handle_user_exception(e)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
>> line 1544, in handle_user_exception
>>     reraise(exc_type, exc_value, tb)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
>> line 1639, in full_dispatch_request
>>     rv = self.dispatch_request()
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
>> line 1625, in dispatch_request
>>     return self.view_functions[rule.endpoint](**req.view_args)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/views.py",
>> line 84, in view
>>     return self.dispatch_request(*args, **kwargs)
>>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/utils.py", line
>> 235, in dispatch_request
>>     return method(*args, **kwargs)
>>   File
>> "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/__init__.py",
>> line 364, in connect
>>     conn = manager.connection(did=did, auto_reconnect=True)
>>   File
>> "/Users/dpage/git/pgadmin4/web/pgadmin/utils/driver/psycopg2/__init__.py",
>> line 1448, in connection
>>     "Couldn't find the specified database."
>> Exception: Couldn't find the specified database.
>>
>> ======================================================================
>> FAIL: runTest
>> (pgadmin.browser.server_groups.servers.databases.tests.test_db_delete.DatabaseDeleteTestCase)
>> This function will delete the database. (Check Databases Node URL)
>> ----------------------------------------------------------------------
>> Traceback (most recent call last):
>>   File
>> "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/tests/test_db_delete.py",
>> line 38, in runTest
>>     self.assertEquals(response.status_code, 200)
>> AssertionError: 410 != 200
>>
>> ----------------------------------------------------------------------
>> Ran 4 tests in 1.019s
>>
>> FAILED (failures=1, errors=2)
>>
>> =============Running the test cases for 'Regression - EPAS
>> 9.5'=============
>> runTest
>> (pgadmin.browser.server_groups.servers.databases.tests.test_db_add.DatabaseAddTestCase)
>> This function will add database under 1st server of tree node. (Check
>> Databases Node URL) ... ok
>> runTest
>> (pgadmin.browser.server_groups.servers.databases.tests.test_db_delete.DatabaseDeleteTestCase)
>> This function will delete the database. (Check Databases Node URL) ...
>> FAIL
>> runTest
>> (pgadmin.browser.server_groups.servers.databases.tests.test_db_get.DatabasesGetTestCase)
>> This function will fetch added database. (Check Databases Node URL) ...
>> ERROR
>> runTest
>> (pgadmin.browser.server_groups.servers.databases.tests.test_db_put.DatabasesUpdateTestCase)
>> This function will update the comments field of database. (Check
>> Databases Node) ... ERROR
>>
>> ======================================================================
>> ERROR: runTest
>> (pgadmin.browser.server_groups.servers.databases.tests.test_db_get.DatabasesGetTestCase)
>> This function will fetch added database. (Check Databases Node URL)
>> ----------------------------------------------------------------------
>> Traceback (most recent call last):
>>   File
>> "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/tests/test_db_get.py",
>> line 33, in runTest
>>     self.db_id)
>>   File
>> "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/tests/utils.py",
>> line 142, in verify_database
>>     follow_redirects=True)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
>> line 788, in post
>>     return self.open(*args, **kw)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/testing.py",
>> line 113, in open
>>     follow_redirects=follow_redirects)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
>> line 751, in open
>>     response = self.run_wsgi_app(environ, buffered=buffered)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
>> line 668, in run_wsgi_app
>>     rv = run_wsgi_app(self.application, environ, buffered=buffered)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
>> line 871, in run_wsgi_app
>>     app_rv = app(environ, start_response)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
>> line 2000, in __call__
>>     return self.wsgi_app(environ, start_response)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
>> line 1991, in wsgi_app
>>     response = self.make_response(self.handle_exception(e))
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
>> line 1567, in handle_exception
>>     reraise(exc_type, exc_value, tb)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
>> line 1988, in wsgi_app
>>     response = self.full_dispatch_request()
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
>> line 1641, in full_dispatch_request
>>     rv = self.handle_user_exception(e)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
>> line 1544, in handle_user_exception
>>     reraise(exc_type, exc_value, tb)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
>> line 1639, in full_dispatch_request
>>     rv = self.dispatch_request()
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
>> line 1625, in dispatch_request
>>     return self.view_functions[rule.endpoint](**req.view_args)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/views.py",
>> line 84, in view
>>     return self.dispatch_request(*args, **kwargs)
>>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/utils.py", line
>> 235, in dispatch_request
>>     return method(*args, **kwargs)
>>   File
>> "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/__init__.py",
>> line 364, in connect
>>     conn = manager.connection(did=did, auto_reconnect=True)
>>   File
>> "/Users/dpage/git/pgadmin4/web/pgadmin/utils/driver/psycopg2/__init__.py",
>> line 1448, in connection
>>     "Couldn't find the specified database."
>> Exception: Couldn't find the specified database.
>>
>> ======================================================================
>> ERROR: runTest
>> (pgadmin.browser.server_groups.servers.databases.tests.test_db_put.DatabasesUpdateTestCase)
>> This function will update the comments field of database. (Check Databases
>> Node)
>> ----------------------------------------------------------------------
>> Traceback (most recent call last):
>>   File
>> "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/tests/test_db_put.py",
>> line 37, in runTest
>>     db_id)
>>   File
>> "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/tests/utils.py",
>> line 142, in verify_database
>>     follow_redirects=True)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
>> line 788, in post
>>     return self.open(*args, **kw)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/testing.py",
>> line 113, in open
>>     follow_redirects=follow_redirects)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
>> line 751, in open
>>     response = self.run_wsgi_app(environ, buffered=buffered)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
>> line 668, in run_wsgi_app
>>     rv = run_wsgi_app(self.application, environ, buffered=buffered)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/werkzeug/test.py",
>> line 871, in run_wsgi_app
>>     app_rv = app(environ, start_response)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
>> line 2000, in __call__
>>     return self.wsgi_app(environ, start_response)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
>> line 1991, in wsgi_app
>>     response = self.make_response(self.handle_exception(e))
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
>> line 1567, in handle_exception
>>     reraise(exc_type, exc_value, tb)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
>> line 1988, in wsgi_app
>>     response = self.full_dispatch_request()
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
>> line 1641, in full_dispatch_request
>>     rv = self.handle_user_exception(e)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
>> line 1544, in handle_user_exception
>>     reraise(exc_type, exc_value, tb)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
>> line 1639, in full_dispatch_request
>>     rv = self.dispatch_request()
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/app.py",
>> line 1625, in dispatch_request
>>     return self.view_functions[rule.endpoint](**req.view_args)
>>   File
>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packages/flask/views.py",
>> line 84, in view
>>     return self.dispatch_request(*args, **kwargs)
>>   File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/utils.py", line
>> 235, in dispatch_request
>>     return method(*args, **kwargs)
>>   File
>> "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/__init__.py",
>> line 364, in connect
>>     conn = manager.connection(did=did, auto_reconnect=True)
>>   File
>> "/Users/dpage/git/pgadmin4/web/pgadmin/utils/driver/psycopg2/__init__.py",
>> line 1448, in connection
>>     "Couldn't find the specified database."
>> Exception: Couldn't find the specified database.
>>
>> ======================================================================
>> FAIL: runTest
>> (pgadmin.browser.server_groups.servers.databases.tests.test_db_delete.DatabaseDeleteTestCase)
>> This function will delete the database. (Check Databases Node URL)
>> ----------------------------------------------------------------------
>> Traceback (most recent call last):
>>   File
>> "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/tests/test_db_delete.py",
>> line 38, in runTest
>>     self.assertEquals(response.status_code, 200)
>> AssertionError: 410 != 200
>>
>> ----------------------------------------------------------------------
>> Ran 4 tests in 1.807s
>>
>> FAILED (failures=1, errors=2)
>>
>> Test Result Summary
>> ============================
>> Regression - EPAS 9.5: 1 test passed, 3 tests failed :
>> DatabaseDeleteTestCase
>> DatabasesGetTestCase
>> DatabasesUpdateTestCase
>> Regression - PG 9.5: 1 test passed, 3 tests failed :
>> DatabaseDeleteTestCase
>> DatabasesGetTestCase
>> DatabasesUpdateTestCase
>> Regression - PG 9.4: 4 tests passed, 0 tests failed
>> ============================
>>
>>
>> --
>> Dave Page
>> Blog: http://pgsnake.blogspot.com
>> Twitter: @pgsnake
>>
>> EnterpriseDB UK: http://www.enterprisedb.com
>> The Enterprise PostgreSQL Company
>
>



-- 
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company


-- 
Sent via pgadmin-hackers mailing list ([email protected])
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgadmin-hackers




^ permalink  raw  reply  [nested|flat] 6+ messages in thread


end of thread, other threads:[~2016-09-22 11:59 UTC | newest]

Thread overview: 6+ messages (download: mbox mbox.gz follow: Atom feed)
-- links below jump to the message on this page --
2016-09-21 12:57 Patch for RM1720 [pgadmin4] Harshal Dhumal <[email protected]>
2016-09-21 13:20 ` Dave Page <[email protected]>
2016-09-21 15:02   ` Navnath Gadakh <[email protected]>
2016-09-21 15:09     ` Dave Page <[email protected]>
2016-09-22 07:09       ` Harshal Dhumal <[email protected]>
2016-09-22 11:59         ` Dave Page <[email protected]>

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox