Hi Dave,
Please find the patch to fix this.
I have fixed this issue in the StartRunningQueryTest class, this test class
changes the behaviour of the methods through MagicMock and due to this this
test case is failing.
Thanks,
Khushboo
On Wed, Mar 7, 2018 at 10:34 PM, Khushboo Vashi <
[email protected]> wrote:
>
>
> On Wed, Mar 7, 2018 at 10:33 PM, Dave Page <[email protected]> wrote:
>
>> It still seems to be failing :-(
>>
>> :(
>
>> https://jenkins.pgadmin.org/job/pgadmin4-master-python26/las
>> tFailedBuild/consoleFull
>>
>> On Wed, Mar 7, 2018 at 4:50 PM, Dave Page <[email protected]> wrote:
>>
>>> Thanks, applied. Lets see what happens.
>>>
>>> On Wed, Mar 7, 2018 at 4:37 PM, Khushboo Vashi <
>>> [email protected]> wrote:
>>>
>>>> Please find the attached updated patch.
>>>> This should work.
>>>>
>>>>
>>>> On Wed, Mar 7, 2018 at 9:46 PM, Dave Page <[email protected]> wrote:
>>>>
>>>>>
>>>>>
>>>>> On Wed, Mar 7, 2018 at 4:13 PM, Khushboo Vashi <
>>>>> [email protected]> wrote:
>>>>>
>>>>>>
>>>>>>
>>>>>> On Wed, Mar 7, 2018 at 9:23 PM, Dave Page <[email protected]> wrote:
>>>>>>
>>>>>>> Hi
>>>>>>>
>>>>>>> On Wed, Mar 7, 2018 at 3:10 PM, Khushboo Vashi <
>>>>>>> [email protected]> wrote:
>>>>>>>
>>>>>>>> Hi Dave,
>>>>>>>>
>>>>>>>> On Wed, Mar 7, 2018 at 7:34 PM, Dave Page <[email protected]>
>>>>>>>> wrote:
>>>>>>>>
>>>>>>>>> Khushboo, can you look at this ASAP please? It passed tests on my
>>>>>>>>> machine, but Jenkins isn't happy.
>>>>>>>>>
>>>>>>>>> I have tried to reproduce the issue with many combination but
>>>>>>>> couldn't reproduce it.
>>>>>>>> With the help of logs, I have tried to fix it. Can you please check
>>>>>>>> this fix is helpful or not?
>>>>>>>>
>>>>>>>
>>>>>>> On my laptop I now get:
>>>>>>>
>>>>>>> ============================================================
>>>>>>> ==========
>>>>>>> ERROR: runTest (pgadmin.tools.sqleditor.tests
>>>>>>> .test_poll_query_tool.TestPollQueryTool)
>>>>>>> When query tool polling returns messages with result data-set
>>>>>>> ------------------------------------------------------------
>>>>>>> ----------
>>>>>>> Traceback (most recent call last):
>>>>>>> File
>>>>>>> "/Users/dpage/git/pgadmin4/web/pgadmin/tools/sqleditor/tests/test_poll_query_tool.py",
>>>>>>> line 104, in runTest
>>>>>>> response_data['data']['additional_messages'])
>>>>>>> File
>>>>>>> "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/unittest/case.py",
>>>>>>> line 802, in assertIn
>>>>>>> if member not in container:
>>>>>>> TypeError: argument of type 'NoneType' is not iterable
>>>>>>>
>>>>>>> ------------------------------------------------------------
>>>>>>> ----------
>>>>>>>
>>>>>>> Please provide some more details. Is this failing for particular
>>>>>> server version?
>>>>>> I am not getting any error with this patch and without this patch on
>>>>>> PY2 and PY3 with a single/multiple servers.
>>>>>>
>>>>>
>>>>> Python 2.7.10 on macOS Sierra, testing against PostgreSQL 9.4. Here
>>>>> are the package versions in the venv:
>>>>>
>>>>> alabaster==0.7.10
>>>>> alembic==0.9.6
>>>>> args==0.1.0
>>>>> Babel==2.3.4
>>>>> backports.csv==1.0.4
>>>>> beautifulsoup4==4.4.1
>>>>> blinker==1.3
>>>>> chromedriver-installer==0.0.6
>>>>> click==6.6
>>>>> clint==0.5.1
>>>>> dateutils==0.6.6
>>>>> docutils==0.13.1
>>>>> extras==1.0.0
>>>>> fixtures==3.0.0
>>>>> Flask==0.11.1
>>>>> Flask-Babel==0.11.1
>>>>> Flask-Gravatar==0.4.2
>>>>> Flask-HTMLmin==1.2
>>>>> Flask-Login==0.3.2
>>>>> Flask-Mail==0.9.1
>>>>> Flask-Migrate==2.0.3
>>>>> Flask-Paranoid==0.1.0
>>>>> Flask-Principal==0.4.0
>>>>> Flask-Script==2.0.6
>>>>> Flask-Security==1.7.5
>>>>> Flask-SQLAlchemy==2.1
>>>>> Flask-WTF==0.12
>>>>> funcsigs==1.0.2
>>>>> html5lib==1.0b3
>>>>> htmlmin==0.1.11
>>>>> imagesize==0.7.1
>>>>> importlib==1.0.3
>>>>> itsdangerous==0.24
>>>>> Jinja2==2.7.3
>>>>> linecache2==1.0.0
>>>>> Mako==1.0.7
>>>>> MarkupSafe==0.23
>>>>> minify==0.1.4
>>>>> mock==2.0.0
>>>>> passlib==1.6.2
>>>>> pbr==3.1.1
>>>>> pkginfo==1.4.1
>>>>> psycopg2==2.7.3.2
>>>>> pycodestyle==2.3.1
>>>>> pycrypto==2.6.1
>>>>> Pygments==2.2.0
>>>>> pyperclip==1.5.32
>>>>> pyrsistent==0.14.0
>>>>> python-dateutil==2.5.0
>>>>> python-editor==1.0.3
>>>>> python-mimeparse==1.6.0
>>>>> pytz==2014.10
>>>>> requests==2.13.0
>>>>> requests-toolbelt==0.7.1
>>>>> selenium==3.3.3
>>>>> simplejson==3.6.5
>>>>> six==1.11.0
>>>>> snowballstemmer==1.2.1
>>>>> speaklater==1.3
>>>>> Sphinx==1.5.3
>>>>> SQLAlchemy==1.0.14
>>>>> sqlparse==0.1.19
>>>>> testscenarios==0.5.0
>>>>> testtools==2.0.0
>>>>> traceback2==1.4.0
>>>>> unittest2==1.1.0
>>>>> Werkzeug==0.9.6
>>>>> WTForms==2.0.2
>>>>> yuicompressor==2.4.8
>>>>>
>>>>> --
>>>>> 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
>>>
>>
>>
>>
>> --
>> Dave Page
>> Blog: http://pgsnake.blogspot.com
>> Twitter: @pgsnake
>>
>> EnterpriseDB UK: http://www.enterprisedb.com
>> The Enterprise PostgreSQL Company
>>
>
>
diff --git a/web/pgadmin/tools/sqleditor/utils/tests/test_start_running_query.py b/web/pgadmin/tools/sqleditor/utils/tests/test_start_running_query.py
index b8e1ec6..ac9fae4 100644
--- a/web/pgadmin/tools/sqleditor/utils/tests/test_start_running_query.py
+++ b/web/pgadmin/tools/sqleditor/utils/tests/test_start_running_query.py
@@ -410,6 +410,7 @@ class StartRunningQueryTest(BaseTestGenerator):
StartRunningQuery.is_begin_required_for_sql_query = MagicMock(
return_value=False
)
+ self.is_rollback_statement_required = StartRunningQuery.is_rollback_statement_required
if self.is_rollback_required:
StartRunningQuery.is_rollback_statement_required = MagicMock(
return_value=True
@@ -519,3 +520,8 @@ class StartRunningQueryTest(BaseTestGenerator):
self.connection.execute_void.assert_called_with('ROLLBACK;')
elif not self.is_begin_required:
self.connection.execute_void.assert_not_called()
+
+ def tearDown(self):
+ # Reseting to the original state as it affects other test cases
+ StartRunningQuery.is_rollback_statement_required = \
+ self.is_rollback_statement_required