sanic-graphql icon indicating copy to clipboard operation
sanic-graphql copied to clipboard

Bad Test

Open dfee opened this issue 8 years ago • 0 comments

FYI: this test will never run (or it will always run, but it shouldn't).

I'm in the process of porting this to aiohttp and found this...

I believe the test is all kinds of wrong.

  • its name doesn't match what it does (it has nothing to do with pretty printing)
  • I don't understand why 'request' would resolve to {}. I'd assume it'd be repr'd to <Request ...>

I believe the test ought to test that 'CUSTOM CONTEXT' is replaced with an empty dict. at least that's what the code will do when get_context(request) is called and it discovers that self.context is not a dict.

Here's my replacement test (note, this isn't written for sanic, but the premise holds):

    @pytest.mark.asyncio
    async def test_context_remapped(self, client, url_builder):
        response = await client.get(url_builder(query='{context}'))

        _json = await response.json()
        assert response.status == 200
        assert 'request' in _json['data']['context']
        assert 'CUSTOM CONTEXT' not in _json['data']['context']

dfee avatar Sep 23 '17 07:09 dfee