mirror of
https://github.com/sprockets/sprockets-postgres.git
synced 2024-12-27 20:24:44 +00:00
Fix postgres_status before first connection attempt
It's possible to call postgres_status before the first connection is established. Before this fix, an exception was raised due to `self._postgres_connected` being `None`. ``` File "/home/ar/code/github/sprockets/sprockets-postgres/sprockets_postgres.py", line 411, in postgres_status if not self._postgres_connected.is_set(): AttributeError: 'NoneType' object has no attribute 'is_set' ```
This commit is contained in:
parent
16b12cf470
commit
afb6ea99a5
2 changed files with 14 additions and 1 deletions
|
@ -408,7 +408,8 @@ class ApplicationMixin:
|
|||
}
|
||||
|
||||
"""
|
||||
if not self._postgres_connected.is_set():
|
||||
if not self._postgres_connected or \
|
||||
not self._postgres_connected.is_set():
|
||||
return {
|
||||
'available': False,
|
||||
'pool_size': 0,
|
||||
|
|
12
tests.py
12
tests.py
|
@ -349,6 +349,18 @@ class TestCase(testing.SprocketsHttpTestCase):
|
|||
return self.app
|
||||
|
||||
|
||||
class PostgresStatusTestCase(asynctest.TestCase):
|
||||
|
||||
async def test_postgres_status_before_first_connection(self):
|
||||
app = Application()
|
||||
status = await app.postgres_status()
|
||||
self.assertEqual(
|
||||
status,
|
||||
{'available': False,
|
||||
'pool_size': 0,
|
||||
'pool_free': 0})
|
||||
|
||||
|
||||
class RequestHandlerMixinTestCase(TestCase):
|
||||
|
||||
def test_postgres_status(self):
|
||||
|
|
Loading…
Reference in a new issue