Skip to content

Commit 6abd16a

Browse files
committed
completed test coverage
Signed-off-by: Oleg Höfling <[email protected]>
1 parent 19a9b4d commit 6abd16a

File tree

2 files changed

+21
-8
lines changed

2 files changed

+21
-8
lines changed

aiohttp_graphql/graphqlview.py

-6
Original file line numberDiff line numberDiff line change
@@ -164,12 +164,6 @@ async def __call__(self, request):
164164
)
165165

166166
except HttpQueryError as err:
167-
if err.headers and 'Allow' in err.headers:
168-
# bug in graphql_server.execute_graphql_request
169-
# https://github.com/graphql-python/graphql-server-core/pull/4
170-
if isinstance(err.headers['Allow'], list):
171-
err.headers['Allow'] = ', '.join(err.headers['Allow'])
172-
173167
return web.Response(
174168
text=self.encoder({
175169
'errors': [self.error_formatter(err)]

tests/test_graphqlview.py

+21-2
Original file line numberDiff line numberDiff line change
@@ -544,12 +544,18 @@ async def test_passes_request_into_request_context(client, url_builder):
544544

545545
class TestCustomContext:
546546
@pytest.fixture
547-
def view_kwargs(self, view_kwargs):
547+
def view_kwargs(self, request, view_kwargs):
548548
# pylint: disable=no-self-use
549549
# pylint: disable=redefined-outer-name
550-
view_kwargs.update(context='CUSTOM CONTEXT')
550+
view_kwargs.update(context=request.param)
551551
return view_kwargs
552552

553+
@pytest.mark.parametrize(
554+
'view_kwargs',
555+
['CUSTOM CONTEXT', {'CUSTOM_CONTEXT': 'test'}],
556+
indirect=True,
557+
ids=repr
558+
)
553559
@pytest.mark.asyncio
554560
async def test_context_remapped(self, client, url_builder):
555561
response = await client.get(url_builder(query='{context}'))
@@ -560,6 +566,19 @@ async def test_context_remapped(self, client, url_builder):
560566
assert 'CUSTOM CONTEXT' not in _json['data']['context']
561567

562568

569+
@pytest.mark.parametrize(
570+
'view_kwargs', [{'request': 'test'}], indirect=True, ids=repr
571+
)
572+
@pytest.mark.asyncio
573+
async def test_request_not_replaced(self, client, url_builder):
574+
response = await client.get(url_builder(query='{context}'))
575+
576+
_json = await response.json()
577+
assert response.status == 200
578+
assert 'request' in _json['data']['context']
579+
assert _json['data']['context'] == str({'request': 'test'})
580+
581+
563582
@pytest.mark.asyncio
564583
async def test_post_multipart_data(client, base_url):
565584
# pylint: disable=line-too-long

0 commit comments

Comments
 (0)