`aiohttp-session` is not required (#107)

* aiohttp_session is not required

* fix code coverage

* has_aiohttp_session -> HAS_AIOHTTP_SESSION
This commit is contained in:
Alex Kuzmenko 2017-10-17 12:32:53 +03:00 committed by Andrew Svetlov
parent 747ec05cfb
commit aef24fae3d
1 changed files with 9 additions and 1 deletions

View File

@ -6,7 +6,11 @@ to configure aiohttp_session properly.
import asyncio import asyncio
try:
from aiohttp_session import get_session from aiohttp_session import get_session
HAS_AIOHTTP_SESSION = True
except ImportError: # pragma: no cover
HAS_AIOHTTP_SESSION = False
from .abc import AbstractIdentityPolicy from .abc import AbstractIdentityPolicy
@ -16,6 +20,10 @@ class SessionIdentityPolicy(AbstractIdentityPolicy):
def __init__(self, session_key='AIOHTTP_SECURITY'): def __init__(self, session_key='AIOHTTP_SECURITY'):
self._session_key = session_key self._session_key = session_key
if not HAS_AIOHTTP_SESSION: # pragma: no cover
raise ImportError(
'SessionIdentityPolicy requires `aiohttp_session`')
@asyncio.coroutine @asyncio.coroutine
def identify(self, request): def identify(self, request):
session = yield from get_session(request) session = yield from get_session(request)