Re: pgAdmin IV : Unittest modular patch - Mailing list pgadmin-hackers

From Dave Page
Subject Re: pgAdmin IV : Unittest modular patch
Date
Msg-id CA+OCxoxqahNgLmvQqqErQZL2JS0EaQwyXkgkzvkFtGNh0OKV6w@mail.gmail.com
Whole thread Raw
In response to Re: pgAdmin IV : Unittest modular patch  (Navnath Gadakh <navnath.gadakh@enterprisedb.com>)
Responses Re: pgAdmin IV : Unittest modular patch  (Navnath Gadakh <navnath.gadakh@enterprisedb.com>)
List pgadmin-hackers
Hi

On Mon, Jul 11, 2016 at 2:16 PM, Navnath Gadakh <navnath.gadakh@enterprisedb.com> wrote:
Hi Dave,
PFA updated patch for modular API test cases.

On Mon, Jul 11, 2016 at 5:11 PM, Dave Page <dave.page@enterprisedb.com> wrote:


On Fri, Jul 8, 2016 at 2:30 PM, Navnath Gadakh <navnath.gadakh@enterprisedb.com> wrote:

Hi Dave,

PFA patch for modular API test cases.

Kindly, review the same and let me know for any modification. 

Please re-create the patch so that it doesn't revert various changes made to config.py etc. over the last couple of weeks. 

  config.py file was not updated at my end, I have updated it in the current patch.  I have also added code related to advance test data configuration which was created by Priyanka (Seprated the test data configuration files).


What is the patch for? Is it fixing issues in Priyanka's last patch, or something else?

This patch is for -
1. Now we can run testsuite node/module wise(like for browser only, for databases only)  OR for all nodes/modules
2. I have modified the existing functionality for testsuite and all test case classes (Made all test cases independently runnable, removed the priority logic).
     
    For more details please refer the file 'regression/README'.

When running all tests, I get:

...
...
 <Rule '//static/<filename>' (HEAD, OPTIONS, GET) -> redirects.static>,
 <Rule '/backup/<filename>' (HEAD, OPTIONS, GET) -> backup.static>,
 <Rule '/reset/<token>' (HEAD, POST, OPTIONS, GET) -> security.reset_password>,
 <Rule '/about/<filename>' (HEAD, OPTIONS, GET) -> about.static>])
Traceback (most recent call last):
  File "regression/testsuite.py", line 151, in <module>
    suite = get_suite(args, test_client)
  File "regression/testsuite.py", line 75, in get_suite
    TestsGeneratorRegistry.load_generators('pgadmin')
  File "/Users/dpage/git/pgadmin4/web/pgadmin/utils/route.py", line 56, in load_generators
    module = import_module(module_name)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/importlib/__init__.py", line 37, in import_module
    __import__(name)
  File "/Users/dpage/git/pgadmin4/web/pgadmin/browser/server_groups/servers/databases/tests/test_db_add.py", line 14, in <module>
    from regression import test_utils as utils
  File "/Users/dpage/git/pgadmin4/web/regression/test_utils.py", line 23, in <module>
    def get_ids(url=config.APP_ROOT + '/regression/parent_id.pkl'):
AttributeError: 'module' object has no attribute 'APP_ROOT'

That's not overly surprising, as we don't have an APP_ROOT setting in the config (nor should we - it should be calculated dynamically). Please fix, and remember to test your patches against a clean copy of the git tree in the future!

Thanks!

--
Dave Page
VP, Chief Architect, Tools & Installers
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

pgadmin-hackers by date:

Previous
From: Dave Page
Date:
Subject: Re: pgAdmin IV API test cases patch
Next
From: Ashesh Vashi
Date:
Subject: pgAdmin 4 commit: Using own version of cursor class to allow us to take