Received: from malur.postgresql.org ([2a02:16a8:dc51::56]) by arkaria.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.89) (envelope-from ) id 1fQLcU-000317-UE for pgadmin-hackers@arkaria.postgresql.org; Tue, 05 Jun 2018 23:44:07 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.89) (envelope-from ) id 1fQLcT-0002LA-HR for pgadmin-hackers@arkaria.postgresql.org; Tue, 05 Jun 2018 23:44:05 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.89) (envelope-from ) id 1fQLcT-0002Kz-7q for pgadmin-hackers@lists.postgresql.org; Tue, 05 Jun 2018 23:44:05 +0000 Received: from mx0a-00296801.pphosted.com ([148.163.150.38]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.89) (envelope-from ) id 1fQLcL-0005yu-3Z for pgadmin-hackers@postgresql.org; Tue, 05 Jun 2018 23:44:03 +0000 Received: from pps.filterd (m0114582.ppops.net [127.0.0.1]) by mx0a-00296801.pphosted.com (8.16.0.22/8.16.0.22) with SMTP id w55NeoBa030958 for ; Tue, 5 Jun 2018 23:43:53 GMT Received: from mail-io0-f198.google.com (mail-io0-f198.google.com [209.85.223.198]) by mx0a-00296801.pphosted.com with ESMTP id 2jbj04unnx-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NOT) for ; Tue, 05 Jun 2018 23:43:52 +0000 Received: by mail-io0-f198.google.com with SMTP id g22-v6so3384861ioh.5 for ; Tue, 05 Jun 2018 16:43:52 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=aAXc2ZKiVkRtu/2gzbrl4STWE+vGksixKElkTLqmQhE=; b=QJOxAV3mpCe1TsFkLRMIynLjECJIDzUp6Wl/CktadD+cKoo0WfOCIk7qsWYj+iHdRZ mrEY5vLBIlcbgI8a4+Dr8cfcTPiYxjCMMGaGxaLIND7PMgCfWjk7ASUwHzKvzvkOAByF pgvbDYSUqgDFlsjVq6BRXoq7IWvZ1iAQzWoGeLDcjQcxmOSq3HNk97xl5Cnn2p+PGDeU 3rhKP7NkIYLoTIg18MoqI6i2qqYtRHMKzBvcxC4v7oQVGB2qvRIF+l3pEZi4yzk6X8FJ UsLAic3KL7Oj9dC/7VRcN9uaAq9mKSvSpzl6frXGZsSxdiUx0rG8XD4UD1np3vOaBT0T yHaw== X-Gm-Message-State: APt69E248ZgWHgIj5gmeUVTf5iF13q4kkbVQup5tQoug2m9Qh6MfQq7J zSMNV/hoMF8o8wtsFCpT8mIYIJ+S8Kiud+ixSvM9SU8jpDWu2HowOjMcrRnxvEoMjQDmoac9a8U x/32OPmWxeeCZr2pk6BuG2dnP6ggBf0K9IgszQyhvRuCZNvaf5KDQmDFX0M+VLrDQkQiu X-Received: by 2002:a24:2e58:: with SMTP id i85-v6mr342885ita.114.1528242231667; Tue, 05 Jun 2018 16:43:51 -0700 (PDT) X-Google-Smtp-Source: ADUXVKKSWzLDbTYW/hMJcUa4Ow1VAgMmomZTXPyENOEq25PB3cjUqclmGrs+fcKNOS2uWjV2fT1nXra2b+G9+3ohTDY= X-Received: by 2002:a24:2e58:: with SMTP id i85-v6mr342860ita.114.1528242231210; Tue, 05 Jun 2018 16:43:51 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Victoria Henry Date: Tue, 5 Jun 2018 19:43:39 -0400 Message-ID: Subject: Re: [pgadmin4][Patch]: Test cases for the backup module To: Khushboo Vashi Cc: Dave Page , Joao De Almeida Pereira , pgadmin-hackers Content-Type: multipart/alternative; boundary="00000000000052a079056ded9faf" X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:,, definitions=2018-06-05_10:,, signatures=0 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 priorityscore=1501 malwarescore=0 suspectscore=10 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1805220000 definitions=main-1806050266 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk --00000000000052a079056ded9faf Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hi Khushboo The tests are still failing and seems flaky: https://gpdb-dev.bosh.pivotalci.info/teams/pgadmin/pipelines/pgadmin-patch/= jobs/run-tests/builds/113 Sincerely, Victoria On Tue, Jun 5, 2018 at 4:50 AM Khushboo Vashi < khushboo.vashi@enterprisedb.com> wrote: > > > On Tue, Jun 5, 2018 at 2:09 PM, Dave Page wrote: > >> >> >> On Tue, Jun 5, 2018 at 9:37 AM, Khushboo Vashi < >> khushboo.vashi@enterprisedb.com> wrote: >> >>> >>> >>> On Tue, Jun 5, 2018 at 1:36 PM, Dave Page wrote: >>> >>>> Hi >>>> >>>> On Tue, Jun 5, 2018 at 4:39 AM, Khushboo Vashi < >>>> khushboo.vashi@enterprisedb.com> wrote: >>>> >>>>> >>>>> >>>>> On Mon, Jun 4, 2018 at 8:41 PM, Joao De Almeida Pereira < >>>>> jdealmeidapereira@pivotal.io> wrote: >>>>> >>>>>> Hi Khushboo, >>>>>> >>>>>> Some tests are failing in greenplum: >>>>>> >>>>>> https://gpdb-dev.bosh.pivotalci.info/teams/pgadmin/pipelines/pgadmin= -patch/jobs/run-tests/builds/108 >>>>>> The piece of code responsible for the error is: >>>>>> >>>>>> if server['default_binary_paths'] is not None: >>>>>> test_utils.set_preference(server['default_binary_paths']) >>>>>> >>>>>> config.DEFAULT_BINARY_PATHS =3D { >>>>>> "pg": str(server['default_binary_paths']['pg']), >>>>>> "ppas": str(server['default_binary_paths']['ppas']), >>>>>> "gpdb": "" >>>>>> } >>>>>> >>>>>> >>>>>> Can you send me the test_config.json file? The above code sets the >>>>> paths to the SQLite database and through the logs couldn't figure out= the >>>>> exact failure. >>>>> >>>> >>>> It seems clear from the code shown that it's not setting the binary >>>> paths for gpdb database servers. Shouldn't it be something like: >>>> >>>> config.DEFAULT_BINARY_PATHS =3D { >>>> "pg": str(server['default_binary_paths']['pg']), >>>> "ppas": str(server['default_binary_paths']['ppas']), >>>> "gpdb": str(server['default_binary_paths']['gpdb']) >>>> } >>>> >>>> Without this code, the test cases should work as I already set paths >>> through below code. >>> >>> test_utils.set_preference(server['default_binary_paths']) >>> >>> >> In that case, why is the code above required at all? >> >> My bad. Removed this code and also updated set_preference function for > greenplum database. > Please find the attached updated patch. > >> >> >>> >>>> >>>>> test_backup_utils.py file name is misleading, these are not tests, >>>>>> are helpers. >>>>>> =E2=80=8B >>>>>> >>>>>> >>>>>> Thanks >>>>>> Victoria & Joao >>>>>> >>>>>> On Mon, Jun 4, 2018 at 1:36 AM Khushboo Vashi < >>>>>> khushboo.vashi@enterprisedb.com> wrote: >>>>>> >>>>>>> >>>>>>> >>>>>>> On Sat, Jun 2, 2018 at 3:01 AM, Dave Page wrote= : >>>>>>> >>>>>>>> Hi >>>>>>>> >>>>>>>> This looks good, except that it's leaving the test_restore_databas= e >>>>>>>> behind. Can we clean that up please? >>>>>>>> >>>>>>>> PFA updated patch. >>>>>>> >>>>>>>> Thanks. >>>>>>>> >>>>>>>> On Fri, Jun 1, 2018 at 7:06 AM, Khushboo Vashi < >>>>>>>> khushboo.vashi@enterprisedb.com> wrote: >>>>>>>> >>>>>>>>> Hi Victoria, >>>>>>>>> >>>>>>>>> Thanks for reviewing the patch. >>>>>>>>> The tests were failing due to the latest commit >>>>>>>>> #2b4605a9d390cb44e5dfe9967c3adf2b28d04f1f - Ensure >>>>>>>>> backup/restore/maintenance work via SSH tunnels. Fixes #3355 >>>>>>>>> >>>>>>>>> I have fixed the issues and attached the updated patch. >>>>>>>>> >>>>>>>>> Thanks, >>>>>>>>> Khushboo >>>>>>>>> >>>>>>>>> On Thu, May 31, 2018 at 10:00 PM, Victoria Henry < >>>>>>>>> vhenry@pivotal.io> wrote: >>>>>>>>> >>>>>>>>>> Hi there, >>>>>>>>>> >>>>>>>>>> We've been noticing some issues with the tests on both our CI an= d >>>>>>>>>> local Mac workstations. >>>>>>>>>> >>>>>>>>>> 1. When the following code blocks are invoked - we get plenty >>>>>>>>>> of app.context() issues. It must not be valid when running >>>>>>>>>> tests. >>>>>>>>>> >>>>>>>>>> =E2=80=8B >>>>>>>>>> >>>>>>>>>> from pgadmin.utils.driver import get_driver >>>>>>>>>> driver =3D get_driver(PG_DEFAULT_DRIVER) >>>>>>>>>> manager =3D driver.connection_manager(self.sid) >>>>>>>>>> >>>>>>>>>> host =3D manager.local_bind_host if manager.use_ssh_tunnel else = s.host >>>>>>>>>> port =3D manager.local_bind_port if manager.use_ssh_tunnel else = s.port >>>>>>>>>> >>>>>>>>>> 2. When we finally enable >>>>>>>>>> >>>>>>>>>> "default_binary_paths": { >>>>>>>>>> >>>>>>>>>> in our test_config, we get more failing tests that look like: >>>>>>>>>> >>>>>>>>>> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >>>>>>>>>> FAIL: runTest (pgadmin.tools.restore.tests.test_restore_create_j= ob_unit_test.RestoreCreateJobTest) >>>>>>>>>> When restore object with option - Miscellaneous >>>>>>>>>> ----------------------------------------------------------------= ------ >>>>>>>>>> Traceback (most recent call last): >>>>>>>>>> File "/Users/pivotal/.pyenv/versions/3.6.5/lib/python3.6/unitt= est/mock.py", line 1179, in patched >>>>>>>>>> return func(*args, **keywargs) >>>>>>>>>> File "/Users/pivotal/workspace/pgadmin4/web/pgadmin/tools/rest= ore/tests/test_restore_create_job_unit_test.py", line 295, in runTest >>>>>>>>>> self.assertEquals(response.status_code, 200) >>>>>>>>>> AssertionError: 410 !=3D 200 >>>>>>>>>> >>>>>>>>>> And >>>>>>>>>> >>>>>>>>>> When restore object with the sections options ... 2018-05-31 12:= 24:42,988: ERROR pgadmin: illegal environment variable name >>>>>>>>>> Traceback (most recent call last): >>>>>>>>>> File "/Users/pivotal/workspace/pgadmin4/web/pgadmin/tools/rest= ore/__init__.py", line 352, in create_restore_job >>>>>>>>>> manager.export_password_env(p.id) >>>>>>>>>> File "/Users/pivotal/workspace/pgadmin4/web/pgadmin/utils/driv= er/psycopg2/server_manager.py", line 365, in export_password_env >>>>>>>>>> os.environ[str(env)] =3D password >>>>>>>>>> File "/Users/pivotal/.pyenv/versions/3.6.5/lib/python3.6/os.py= ", line 675, in __setitem__ >>>>>>>>>> self.putenv(key, value) >>>>>>>>>> ValueError: illegal environment variable name >>>>>>>>>> FAIL >>>>>>>>>> >>>>>>>>>> =E2=80=8B >>>>>>>>>> >>>>>>>>>> Sincerely, >>>>>>>>>> >>>>>>>>>> Victoria && Anthony >>>>>>>>>> >>>>>>>>>> On Thu, May 31, 2018 at 1:16 AM Khushboo Vashi < >>>>>>>>>> khushboo.vashi@enterprisedb.com> wrote: >>>>>>>>>> >>>>>>>>>>> Hi, >>>>>>>>>>> >>>>>>>>>>> Please find the attached updated patch with the fixes. >>>>>>>>>>> The test cases were only failing on MAC not on Linux. >>>>>>>>>>> >>>>>>>>>>> Thanks, >>>>>>>>>>> Khushboo >>>>>>>>>>> >>>>>>>>>>> On Wed, May 30, 2018 at 10:13 AM, Khushboo Vashi < >>>>>>>>>>> khushboo.vashi@enterprisedb.com> wrote: >>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> On Wed, May 30, 2018 at 1:05 AM, Dave Page >>>>>>>>>>>> wrote: >>>>>>>>>>>> >>>>>>>>>>>>> Hi >>>>>>>>>>>>> >>>>>>>>>>>>> On Mon, May 28, 2018 at 8:09 AM, Khushboo Vashi < >>>>>>>>>>>>> khushboo.vashi@enterprisedb.com> wrote: >>>>>>>>>>>>> >>>>>>>>>>>>>> Hi, >>>>>>>>>>>>>> >>>>>>>>>>>>>> please find the attached updated patch for the test cases of >>>>>>>>>>>>>> Backup, Restore and Maintenance modules which includes: >>>>>>>>>>>>>> >>>>>>>>>>>>>> 1. Unit test cases >>>>>>>>>>>>>> 2. End to end regression test cases >>>>>>>>>>>>>> 3. Feature test cases >>>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> Thanks. I've yet to be able to run the feature tests >>>>>>>>>>>>> successfully. Here's what I've found so far: >>>>>>>>>>>>> >>>>>>>>>>>>> 1) DEFAULT_BINARY_PATHS should be default_binary_paths in the >>>>>>>>>>>>> JSON config file. >>>>>>>>>>>>> >>>>>>>>>>>>> Will do. >>>>>>>>>>>> >>>>>>>>>>>>> 2) I've hit screensize related issues: >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >>>>>>>>>>>>> >>>>>>>>>>>>> ERROR: runTest >>>>>>>>>>>>> (pgadmin.feature_tests.pg_utilities_maintenance_test.PGUtilit= iesMaintenanceFeatureTest) >>>>>>>>>>>>> >>>>>>>>>>>>> Test for PG maintenance: database >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> -------------------------------------------------------------= --------- >>>>>>>>>>>>> >>>>>>>>>>>>> Traceback (most recent call last): >>>>>>>>>>>>> >>>>>>>>>>>>> File >>>>>>>>>>>>> "/Users/dpage/git/pgadmin4/web/pgadmin/feature_tests/pg_utili= ties_maintenance_test.py", >>>>>>>>>>>>> line 56, in runTest >>>>>>>>>>>>> >>>>>>>>>>>>> self._open_maintenance_dialogue() >>>>>>>>>>>>> >>>>>>>>>>>>> File >>>>>>>>>>>>> "/Users/dpage/git/pgadmin4/web/pgadmin/feature_tests/pg_utili= ties_maintenance_test.py", >>>>>>>>>>>>> line 75, in _open_maintenance_dialogue >>>>>>>>>>>>> >>>>>>>>>>>>> "*[.=3D'" + self.table_name + "']/../*[@class=3D'aciTreeI= tem'" >>>>>>>>>>>>> >>>>>>>>>>>>> File >>>>>>>>>>>>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packag= es/selenium/webdriver/remote/webelement.py", >>>>>>>>>>>>> line 80, in click >>>>>>>>>>>>> >>>>>>>>>>>>> self._execute(Command.CLICK_ELEMENT) >>>>>>>>>>>>> >>>>>>>>>>>>> File >>>>>>>>>>>>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packag= es/selenium/webdriver/remote/webelement.py", >>>>>>>>>>>>> line 628, in _execute >>>>>>>>>>>>> >>>>>>>>>>>>> return self._parent.execute(command, params) >>>>>>>>>>>>> >>>>>>>>>>>>> File >>>>>>>>>>>>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packag= es/selenium/webdriver/remote/webdriver.py", >>>>>>>>>>>>> line 312, in execute >>>>>>>>>>>>> >>>>>>>>>>>>> self.error_handler.check_response(response) >>>>>>>>>>>>> >>>>>>>>>>>>> File >>>>>>>>>>>>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packag= es/selenium/webdriver/remote/errorhandler.py", >>>>>>>>>>>>> line 242, in check_response >>>>>>>>>>>>> >>>>>>>>>>>>> raise exception_class(message, screen, stacktrace) >>>>>>>>>>>>> >>>>>>>>>>>>> WebDriverException: Message: unknown error: Element >>>>>>>>>>>> class=3D"aciTreeItem">... is not clickable at point (2= 23, 604). Other >>>>>>>>>>>>> element would receive the click:
>>>>>>>>>>>> wcPanelBackground wcScrollableX wcScrollableY" style=3D"left:= 0px; right: >>>>>>>>>>>>> 0px; bottom: 0px;">...
>>>>>>>>>>>>> >>>>>>>>>>>>> (Session info: chrome=3D66.0.3359.181) >>>>>>>>>>>>> >>>>>>>>>>>>> (Driver info: chromedriver=3D2.38.552518 >>>>>>>>>>>>> (183d19265345f54ce39cbb94cf81ba5f15905011),platform=3DMac OS = X 10.12.6 x86_64) >>>>>>>>>>>>> >>>>>>>>>>>>> 3) One time the test did start, but then I saw this failure: >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D >>>>>>>>>>>>> >>>>>>>>>>>>> ERROR: runTest >>>>>>>>>>>>> (pgadmin.feature_tests.pg_utilities_backup_restore_test.PGUti= litiesBackupFeatureTest) >>>>>>>>>>>>> >>>>>>>>>>>>> Test for PG utilities - Backup and Restore >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> -------------------------------------------------------------= --------- >>>>>>>>>>>>> >>>>>>>>>>>>> Traceback (most recent call last): >>>>>>>>>>>>> >>>>>>>>>>>>> File >>>>>>>>>>>>> "/Users/dpage/git/pgadmin4/web/pgadmin/feature_tests/pg_utili= ties_backup_restore_test.py", >>>>>>>>>>>>> line 93, in runTest >>>>>>>>>>>>> >>>>>>>>>>>>> self.page.fill_input_by_field_name("file", >>>>>>>>>>>>> "test_backup_file") >>>>>>>>>>>>> >>>>>>>>>>>>> File >>>>>>>>>>>>> "/Users/dpage/git/pgadmin4/web/regression/feature_utils/pgadm= in_page.py", >>>>>>>>>>>>> line 211, in fill_input_by_field_name >>>>>>>>>>>>> >>>>>>>>>>>>> self.wait_for_input_field_content(field_name, >>>>>>>>>>>>> field_content) >>>>>>>>>>>>> >>>>>>>>>>>>> File >>>>>>>>>>>>> "/Users/dpage/git/pgadmin4/web/regression/feature_utils/pgadm= in_page.py", >>>>>>>>>>>>> line 251, in wait_for_input_field_content >>>>>>>>>>>>> >>>>>>>>>>>>> "field to contain '" + str(content) + "'", >>>>>>>>>>>>> input_field_has_content >>>>>>>>>>>>> >>>>>>>>>>>>> File >>>>>>>>>>>>> "/Users/dpage/git/pgadmin4/web/regression/feature_utils/pgadm= in_page.py", >>>>>>>>>>>>> line 337, in _wait_for >>>>>>>>>>>>> >>>>>>>>>>>>> "Timed out waiting for " + waiting_for_message >>>>>>>>>>>>> >>>>>>>>>>>>> File >>>>>>>>>>>>> "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-packag= es/selenium/webdriver/support/wait.py", >>>>>>>>>>>>> line 80, in until >>>>>>>>>>>>> >>>>>>>>>>>>> raise TimeoutException(message, screen, stacktrace) >>>>>>>>>>>>> >>>>>>>>>>>>> TimeoutException: Message: Timed out waiting for field to >>>>>>>>>>>>> contain 'test_backup_file' >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> (with screenshot attached) >>>>>>>>>>>>> >>>>>>>>>>>>> Thanks. >>>>>>>>>>>>> >>>>>>>>>>>>> I have ran the feature tests with multiple servers many times >>>>>>>>>>>> but didn't get a single failure. >>>>>>>>>>>> I have asked Akshay to run on his machine, let see what he get= s. >>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> Thanks, >>>>>>>>>>>>>> Khushboo >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> On Wed, Apr 25, 2018 at 9:40 PM, Joao De Almeida Pereira < >>>>>>>>>>>>>> jdealmeidapereira@pivotal.io> wrote: >>>>>>>>>>>>>> >>>>>>>>>>>>>>> Hi Khushboo, >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> We reviewed the patch and it is very nice to see some more >>>>>>>>>>>>>>> coverage in this area. Good job :D >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> We passed the tests through our CI the feature tests are no= t >>>>>>>>>>>>>>> passing, but the linter fails: >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/feature_tests/pg_utilities_backup_test.py:37: [E5= 01] line too long (91 > 79 characters) >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/feature_tests/pg_utilities_backup_test.py:53: [E5= 01] line too long (104 > 79 characters) >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/feature_tests/pg_utilities_backup_test.py:59: [E5= 01] line too long (85 > 79 characters) >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/feature_tests/pg_utilities_backup_test.py:62: [E5= 01] line too long (96 > 79 characters) >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/feature_tests/pg_utilities_backup_test.py:63: [E5= 01] line too long (91 > 79 characters) >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/feature_tests/pg_utilities_backup_test.py:70: [E5= 01] line too long (118 > 79 characters) >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/tools/backup/tests/test_backup_message.py:37: [E1= 21] continuation line under-indented for hanging indent >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/tools/backup/tests/test_backup_message.py:48: [E1= 22] continuation line missing indentation or outdented >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/tools/backup/tests/test_backup_message.py:49: [E2= 51] unexpected spaces around keyword / parameter equals >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/tools/backup/tests/test_backup_message.py:49: [E2= 51] unexpected spaces around keyword / parameter equals >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/tools/backup/tests/test_backup_message.py:51: [E5= 01] line too long (91 > 79 characters) >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/tools/backup/tests/test_backup_message.py:52: [E5= 01] line too long (94 > 79 characters) >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/tools/backup/tests/test_backup_message.py:53: [E5= 01] line too long (108 > 79 characters) >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/tools/backup/tests/test_backup_message.py:81: [E5= 01] line too long (113 > 79 characters) >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/tools/backup/tests/test_backup_message.py:82: [E5= 01] line too long (94 > 79 characters) >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/tools/backup/tests/test_backup_message.py:83: [E5= 01] line too long (108 > 79 characters) >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/tools/backup/tests/test_backup_message.py:111: [E= 501] line too long (100 > 79 characters) >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/tools/backup/tests/test_backup_message.py:113: [E= 501] line too long (94 > 79 characters) >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/tools/backup/tests/test_backup_message.py:114: [E= 501] line too long (108 > 79 characters) >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/tools/backup/tests/test_backup_message.py:147: [E= 501] line too long (93 > 79 characters) >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/tools/backup/tests/test_batch_process.py:40: [E12= 1] continuation line under-indented for hanging indent >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/tools/backup/tests/test_batch_process.py:51: [E12= 2] continuation line missing indentation or outdented >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/tools/backup/tests/test_batch_process.py:135: [E5= 01] line too long (80 > 79 characters) >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/tools/backup/tests/test_batch_process.py:137: [E5= 01] line too long (83 > 79 characters) >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/tools/backup/tests/test_batch_process.py:138: [E1= 22] continuation line missing indentation or outdented >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/tools/backup/tests/test_batch_process.py:139: [E1= 22] continuation line missing indentation or outdented >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/tools/backup/tests/test_batch_process.py:140: [E1= 22] continuation line missing indentation or outdented >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/tools/backup/tests/test_batch_process.py:191: [E5= 01] line too long (81 > 79 characters) >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/tools/backup/tests/test_batch_process.py:203: [E5= 01] line too long (80 > 79 characters) >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/tools/backup/tests/test_batch_process.py:204: [E1= 28] continuation line under-indented for visual indent >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/tools/backup/tests/test_batch_process.py:204: [E5= 01] line too long (94 > 79 characters) >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/tools/backup/tests/test_batch_process.py:205: [E1= 28] continuation line under-indented for visual indent >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/tools/backup/tests/test_batch_process.py:205: [E5= 01] line too long (94 > 79 characters) >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/tools/backup/tests/test_batch_process.py:216: [W3= 91] blank line at end of file >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/tools/backup/tests/test_create_backup_job.py:296:= [E501] line too long (97 > 79 characters) >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/tools/backup/tests/test_create_backup_job.py:317:= [E303] too many blank lines (2) >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/tools/backup/tests/test_create_backup_job.py:336:= [E501] line too long (84 > 79 characters) >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ./pgadmin/tools/backup/tests/test_create_backup_job.py:371:= [W391] blank line at end of file >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> 2 E121 continuation line under-indented for hanging i= ndent >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> 5 E122 continuation line missing indentation or outde= nted >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> 2 E128 continuation line under-indented for visual in= dent >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> 2 E251 unexpected spaces around keyword / parameter e= quals >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> 1 E303 too many blank lines (2) >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> 24 E501 line too long (91 > 79 characters) >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> 2 W391 blank line at end of file >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> 38 >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> For the feature tests, we realized we had to update the >>>>>>>>>>>>>>> configuration, and we did that, but we get the following er= ror attached. We >>>>>>>>>>>>>>> spent some time trying to understand the problem but we wer= e not successful. >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> Codewise: >>>>>>>>>>>>>>> - We just found some One Letter Variables in the code... >>>>>>>>>>>>>>> - Looks like there is a bug report in this area of the code >>>>>>>>>>>>>>> and we do not have coverage for it: >>>>>>>>>>>>>>> https://redmine.postgresql.org/issues/3232 >>>>>>>>>>>>>>> Looks like in some of the unit tests we only have happy >>>>>>>>>>>>>>> path tests, maybe we should see if there are any sad paths = that also need >>>>>>>>>>>>>>> coverage. >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> The configuration change, maybe need to be updated. When we >>>>>>>>>>>>>>> install multiple versions of postgres the binaries live in >>>>>>>>>>>>>>> `/usr/lib/postgresql/{{db_version}}/bin`, which makes us th= ink that this >>>>>>>>>>>>>>> configuration should live near the server configuration, ma= ybe? Also to >>>>>>>>>>>>>>> maintain coherency on the naming maybe we should make it al= l lower case. >>>>>>>>>>>>>>> Just as an aside, you can add the gpdb configuration as wel= l >>>>>>>>>>>>>>> in you patch. >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> Thanks >>>>>>>>>>>>>>> Victoria & Joao >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> On Wed, Apr 25, 2018 at 5:20 AM Khushboo Vashi < >>>>>>>>>>>>>>> khushboo.vashi@enterprisedb.com> wrote: >>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> Hi, >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> Please find the attached patch which covers test cases for >>>>>>>>>>>>>>>> the backup module (RM #3206). >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> 1. Unit test cases >>>>>>>>>>>>>>>> 2. End to end regression test cases >>>>>>>>>>>>>>>> 3. Feature test cases >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> Thanks, >>>>>>>>>>>>>>>> Khushboo >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>> --00000000000052a079056ded9faf Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi Khushboo

The tests are still f= ailing and seems flaky:

Sincerely,
Victoria

On Tue, Jun 5, 2018 at 4:50 AM Khushboo Vashi <khushboo.vashi@enterprisedb.com>= ; wrote:


On Tue, Jun 5, 2018 at= 2:09 PM, Dave Page <dpage@pgadmin.org> wrote:


On Tue, Jun 5, 2018 at 9:37 AM, Khushboo Vas= hi <khushboo.vashi@enterprisedb.com> wrote:


On Tue, Jun 5, 2018 at 1:36 PM, D= ave Page <dpage@pgadmin.org> wrote:
Hi

On Tue, Jun 5, 2018 at 4:39 AM, Khushbo= o Vashi <khushboo.vashi@enterprisedb.com> wrot= e:


On Mon, Jun 4, 2018 at 8:41 = PM, Joao De Almeida Pereira <jdealmeidapereira@pivotal.io&g= t; wrote:
= Hi Khushboo,

Some tests are failing in greenplum:<= /div>
The piece of code responsible for the error = is:
if server['default_binary_paths'] is not None:
test_utils.set_preference(server['default_binary_paths'])
=
config.DEFAULT_BINARY_PATHS =3D {
"pg": str(server['default_bin= ary_paths']['pg']),
&q= uot;ppas": str(se= rver['default_binary_paths']['ppas']),
"gpdb"= : ""
}

<= /blockquote>
Can you send me the test_config.json file?=C2=A0 The above= code sets the paths to the SQLite database and through the logs couldn'= ;t figure out the exact failure.=C2=A0
=

It seems clear from the code shown that it's= not setting the binary paths for gpdb database servers. Shouldn't it b= e something like:

    config.DEFAULT_BINARY_PATHS =3D {=

"pg": str
(server['default_binary_paths']['pg']),
"ppas": str(server['default_binary_paths']['ppas']),
"gpdb": str(server['default_binary_paths']['gpdb'])
}
Without this code, the test cas= es should work as I already set=C2=A0 paths through below code.
    test_utils.set_pr=
eference(server['default_binary_p=
aths'])

In that case, why is the cod= e above required at all?
<= div>
My bad. Remov= ed this code and also updated set_preference function for greenplum databas= e.
Please find the attached updated patch.
=C2= =A0
<= div class=3D"gmail_extra">
=C2=A0=

test_backup_utils.py= file name is misleading, these are not tests, are helpers.

=E2=80=8B
=


Thanks
Victoria &a= mp; Joao

On Mon, Jun 4, 2018 at 1:36 AM Khushboo Vashi <khushboo.va= shi@enterprisedb.com> wrote:


On Sat, Jun 2, 2018 at 3:01 AM, Dave Page <dpage@pgadmin.org><= /span> wrote:
Hi
This looks good, except that it's leaving the test_restore_= database behind. Can we clean that up please?

PFA updated patch.=C2=A0
Thanks.
<= div class=3D"m_3251447040477084952m_6691559589140134092m_-13546643591582473= 9m_5453799416428512269m_-2106317768483674112m_-1197089741188147494m_7843895= 626344194407h5">

O= n Fri, Jun 1, 2018 at 7:06 AM, Khushboo Vashi <khushboo.vash= i@enterprisedb.com> wrote:
=
Hi Victoria,

Thanks for reviewing the p= atch.
The tests were failing due to the latest commit #2b4605a9d3= 90cb44e5dfe9967c3adf2b28d04f1f=C2=A0 - Ensure backup/restore/maintenance wo= rk via SSH tunnels. Fixes #3355

I have fixed the i= ssues and attached the updated patch.

Thanks,
Khushboo=C2=A0
=

On Thu, May 31, 2018 at 10:00 PM, Victoria Henry <vh= enry@pivotal.io> wrote:
Hi there,

We've been noticing some iss= ues with the tests on both our CI and local Mac workstations.
  1. When the following code blocks are invoked -= we get plenty of app.context() issues. It must not= be valid when running tests.
=E2=80=8B
=
from pgadmin.utils.driver import get_driver
driver =3D get_driver(PG_DEFAULT_DR= IVER)
manager =3D driver.connection_manager(self.sid)

host =3D manager.local_bind_host if manager.use_ssh_tunnel else s.host
port =3D manager.local_bin= d_port if manager.use_ssh_tunn= el else s.port=C2=A0
2. When we finally enable=C2=A0
"default_binary_path=
s": {
<= div>in our test_config, we get more failing tests that look like:
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
FAIL: runTest (pgadmin.tools.restore.tests.test_restore_create_job_unit_tes=
t.RestoreCreateJobTest)
When restore object with option - Miscellaneous
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/pivotal/.pyenv/versions/3.6.5/lib/python3.6/unittest/mo=
ck.py", line 1179, in patched
    return func(*args, **keywargs)
  File "/Users/pivotal/workspace/pgadmin4/web/pgadmin/tools/restore/te=
sts/test_restore_create_job_unit_test.py", line 295, in runTest
    self.assertEquals(response.status_code, 200)
AssertionError: 410 !=3D 200

And

When restore object =
with the sections options ... 2018-05-31 12:24:42,988: ERROR    pgadmin:   =
 illegal environment variable name
Traceback (most recent call last):
  File "/Users/pivotal/workspace/pgadmin4/web/pgadmin/tools/restore/__=
init__.py", line 352, in create_restore_job
    manager.export_password_env(p=
.id)
  File "/Users/pivotal/workspace/pgadmin4/web/pgadmin/utils/driver/psy=
copg2/server_manager.py", line 365, in export_password_env
    os.environ[str(env)] =3D password
  File "/Users/pivotal/.pyenv/versions/3.6.5/lib/python3.6/os.py"=
, line 675, in __setitem__
    self.putenv(key, value)
ValueError: illegal environment variable name
FAIL
=E2=80=8B
=

Sincerely,

Vi= ctoria && Anthony

On Thu, May 31, = 2018 at 1:16 AM Khushboo Vashi <khushboo.vashi@enterprisedb.com> wrote:=
Hi,

Please find the attached updated patch with the fixes.
The = test cases were only failing on MAC not on Linux.

= Thanks,
Khushboo

On Wed, May 30, 2018 at 10:13 AM, Khushboo Vashi <khushboo.vashi@enterprisedb.com> wrote:

On Wed, May 30, 2018 at 1:05 AM, Dave Pa= ge <dpage@pgadmin.org> wrote:
Hi

On Mon, May 28, 2018 at 8:09 AM, Khushboo Vashi <khushboo.vashi@enterprisedb.com> wrote:
Hi,

pl= ease find the attached updated patch for the test cases of Backup, Restore = and Maintenance modules which includes:

1. U= nit test cases
2. End to end regression test cases=C2=A0
3. Featu= re test cases

Thanks. I've yet to be able to run the feature tests successfully. H= ere's what I've found so far:

1) DEFAULT_B= INARY_PATHS should be default_binary_paths in the JSON config file.

Will do.=C2=A0
2= ) I've hit screensize related issues:

=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D

ERROR: runTest (pgadmin.fe= ature_tests.pg_utilities_maintenance_test.PGUtilitiesMaintenanceFeatureTest= )

Test for PG maintenance: d= atabase

--------------------------= --------------------------------------------

Traceback (most recent cal= l last):

=C2=A0= File "/Users/dpage/git/pgadmin4/web/pgadmin/feature_tests/pg_u= tilities_maintenance_test.py", line 56, in runTest

=C2=A0= =C2=A0 self._open_maintenance_dialogue()

=C2=A0= File "/Users/dpage/git/pgadmin4/web/pgadmin/feature_tests/pg_u= tilities_maintenance_test.py", line 75, in _open_maintenance_dialogue<= /span>

=C2=A0= =C2=A0 "*[.=3D'" + self.table_name + "']/../= *[@class=3D'aciTreeItem'"

=C2=A0= File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-pa= ckages/selenium/webdriver/remote/webelement.py", line 80, in click

=C2=A0= =C2=A0 self._execute(Command.CLICK_ELEMENT)

=C2=A0= File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-pa= ckages/selenium/webdriver/remote/webelement.py", line 628, in _execute=

=C2=A0= =C2=A0 return self._parent.execute(command, params)

=C2=A0= File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-pa= ckages/selenium/webdriver/remote/webdriver.py", line 312, in execute

=C2=A0= =C2=A0 self.error_handler.check_response(response)

=C2=A0= File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-pa= ckages/selenium/webdriver/remote/errorhandler.py", line 242, in check_= response

=C2=A0= =C2=A0 raise exception_class(message, screen, stacktrace)

WebDriverException: Messag= e: unknown error: Element <span class=3D"aciTreeItem">...&l= t;/span> is not clickable at point (223, 604). Other element would recei= ve the click: <div class=3D"wcFrameCenter wcPanelBackground wcScrol= lableX wcScrollableY" style=3D"left: 0px; right: 0px; bottom: 0px= ;">...</div>

=C2=A0= (Session info: chrome=3D66.0.3359.181)

=C2=A0= (Driver info: chromedriver=3D2.38.552518 (183d19265345f54ce39cbb94c= f81ba5f15905011),platform=3DMac OS X 10.12.6 x86_64)


3) One time the test did start, but then I saw this failure:=

=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D

ERROR: runTest (pgadmin.fe= ature_tests.pg_utilities_backup_restore_test.PGUtilitiesBackupFeatureTest)<= /span>

Test for PG utilities - Ba= ckup and Restore

--------------------------= --------------------------------------------

Traceback (most recent cal= l last):

=C2=A0= File "/Users/dpage/git/pgadmin4/web/pgadmin/feature_tests/pg_u= tilities_backup_restore_test.py", line 93, in runTest

=C2=A0= =C2=A0 self.page.fill_input_by_field_name("file", "t= est_backup_file")

=C2=A0= File "/Users/dpage/git/pgadmin4/web/regression/feature_utils/p= gadmin_page.py", line 211, in fill_input_by_field_name

=C2=A0= =C2=A0 self.wait_for_input_field_content(field_name, field_content)=

=C2=A0= File "/Users/dpage/git/pgadmin4/web/regression/feature_utils/p= gadmin_page.py", line 251, in wait_for_input_field_content

=C2=A0= =C2=A0 "field to contain '" + str(content) + "&#= 39;", input_field_has_content

=C2=A0= File "/Users/dpage/git/pgadmin4/web/regression/feature_utils/p= gadmin_page.py", line 337, in _wait_for

=C2=A0= =C2=A0 "Timed out waiting for " + waiting_for_message

=C2=A0= File "/Users/dpage/.virtualenvs/pgadmin4/lib/python2.7/site-pa= ckages/selenium/webdriver/support/wait.py", line 80, in until

=C2=A0= =C2=A0 raise TimeoutException(message, screen, stacktrace)

TimeoutException: Message:= Timed out waiting for field to contain 'test_backup_file'


(with screenshot attached)

Thanks.<= /div>

I have ran the fea= ture tests with multiple servers many times but didn't get a single fai= lure.
I have asked Akshay to run on his machine, let see what he = gets.


=C2=A0

Thanks,
Khushboo


<= div>

On Wed, Apr 25, 2018 at 9:40 PM, Joao De Almeida Pereira <jde= almeidapereira@pivotal.io> wrote:
Hi Khushboo,

We reviewed the pat= ch and it is very nice to see some more coverage in this area. Good job :D<= /div>

We passed the tests through our CI the feature tes= ts are not passing, but the linter fails:
./pgadmin/feature_tests/pg_utilities_backup_test.py= :37: [E501] line too long (91 > 79 characters)
./pgadmin/feature_tests/pg_utili= ties_backup_test.py:53: [E501] line too long (104 > 79 characters)
./pgadmin/feature_tests/pg_utili= ties_backup_test.py:59: [E501] line too long (85 > 79 characters)
./pgadmin/feature_tests/pg_utili= ties_backup_test.py:62: [E501] line too long (96 > 79 characters)
./pgadmin/feature_tests/pg_utili= ties_backup_test.py:63: [E501] line too long (91 > 79 characters)
./pgadmin/feature_tests/pg_utili= ties_backup_test.py:70: [E501] line too long (118 > 79 characters)
./pgadmin/tools/backup/tests/tes= t_backup_message.py:37: [E121] continuation line under-indented for hanging= indent
./pgadmin/tools/backup/tests/tes= t_backup_message.py:48: [E122] continuation line missing indentation or out= dented
./pgadmin/tools/backup/tests/tes= t_backup_message.py:49: [E251] unexpected spaces around keyword / parameter= equals
./pgadmin/tools/backup/tests/tes= t_backup_message.py:49: [E251] unexpected spaces around keyword / parameter= equals
./pgadmin/tools/backup/tests/tes= t_backup_message.py:51: [E501] line too long (91 > 79 characters)
./pgadmin/tools/backup/tests/tes= t_backup_message.py:52: [E501] line too long (94 > 79 characters)
./pgadmin/tools/backup/tests/tes= t_backup_message.py:53: [E501] line too long (108 > 79 characters)
./pgadmin/tools/backup/tests/tes= t_backup_message.py:81: [E501] line too long (113 > 79 characters)
./pgadmin/tools/backup/tests/tes= t_backup_message.py:82: [E501] line too long (94 > 79 characters)
./pgadmin/tools/backup/tests/tes= t_backup_message.py:83: [E501] line too long (108 > 79 characters)
./pgadmin/tools/backup/tests/tes= t_backup_message.py:111: [E501] line too long (100 > 79 characters)
./pgadmin/tools/backup/tests/tes= t_backup_message.py:113: [E501] line too long (94 > 79 characters)
./pgadmin/tools/backup/tests/tes= t_backup_message.py:114: [E501] line too long (108 > 79 characters)
./pgadmin/tools/backup/tests/tes= t_backup_message.py:147: [E501] line too long (93 > 79 characters)
./pgadmin/tools/backup/tests/tes= t_batch_process.py:40: [E121] continuation line under-indented for hanging = indent
./pgadmin/tools/backup/tests/tes= t_batch_process.py:51: [E122] continuation line missing indentation or outd= ented
./pgadmin/tools/backup/tests/tes= t_batch_process.py:135: [E501] line too long (80 > 79 characters)
./pgadmin/tools/backup/tests/tes= t_batch_process.py:137: [E501] line too long (83 > 79 characters)
./pgadmin/tools/backup/tests/tes= t_batch_process.py:138: [E122] continuation line missing indentation or out= dented
./pgadmin/tools/backup/tests/tes= t_batch_process.py:139: [E122] continuation line missing indentation or out= dented
./pgadmin/tools/backup/tests/tes= t_batch_process.py:140: [E122] continuation line missing indentation or out= dented
./pgadmin/tools/backup/tests/tes= t_batch_process.py:191: [E501] line too long (81 > 79 characters)
./pgadmin/tools/backup/tests/tes= t_batch_process.py:203: [E501] line too long (80 > 79 characters)
./pgadmin/tools/backup/tests/tes= t_batch_process.py:204: [E128] continuation line under-indented for visual = indent
./pgadmin/tools/backup/tests/tes= t_batch_process.py:204: [E501] line too long (94 > 79 characters)
./pgadmin/tools/backup/tests/tes= t_batch_process.py:205: [E128] continuation line under-indented for visual = indent
./pgadmin/tools/backup/tests/tes= t_batch_process.py:205: [E501] line too long (94 > 79 characters)
./pgadmin/tools/backup/tests/tes= t_batch_process.py:216: [W391] blank line at end of file
./pgadmin/tools/backup/tests/tes= t_create_backup_job.py:296: [E501] line too long (97 > 79 characters)
./pgadmin/tools/backup/tests/tes= t_create_backup_job.py:317: [E303] too many blank lines (2)
./pgadmin/tools/backup/tests/tes= t_create_backup_job.py:336: [E501] line too long (84 > 79 characters)
./pgadmin/tools/backup/tests/tes= t_create_backup_job.py:371: [W391] blank line at end of file
2 E121 continuation line u= nder-indented for hanging indent
5 E122 continuation line m= issing indentation or outdented
2 E128 continuation line u= nder-indented for visual indent
2 E251 unexpected spaces a= round keyword / parameter equals
1 E303 too many blank line= s (2)
24 E501 line too long (91 &= gt; 79 characters)
2 W391 blank line at end o= f file
38

For the feature tests, we realized we had to update the= configuration, and we did that, but we get the following error attached. W= e spent some time trying to understand the problem but we were not successf= ul.


Codewise:
- We just f= ound some One Letter Variables in the code...
- Looks like there = is a bug report in this area of the code and we do not have coverage for it= :=C2=A0https://redmine.postgresql.org/issues/3232
=C2=A0 Looks = like in some of the unit tests we only have happy path tests, maybe we shou= ld see if there are any sad paths that also need coverage.

The configuration change, maybe need to be updated. When we instal= l multiple versions of postgres the binaries live in `/usr/lib/postgresql/{= {db_version}}/bin`, which makes us think that this configuration should liv= e near the server configuration, maybe? Also to maintain coherency on the n= aming maybe we should make it all lower case.
Just as an aside, y= ou can add the gpdb configuration as well in you patch.

Thanks
Victoria & Joao

On Wed, Apr 25, 2018 at 5:20 AM K= hushboo Vashi <khushboo.vashi@enterprisedb.com> wrote:
Hi,

Please find= the attached patch which covers test cases for the backup module (RM #3206= ).

1. Unit test cases
2. End to end regr= ession test cases=C2=A0
3. Feature test cases

Thanks,
Khushboo

= <= /div> --00000000000052a079056ded9faf--