generated from jCloud/repository-template
Add tests with invalid signatures for integrations.gitea.middlewares.signature.GiteaSignatureMiddleware
This commit is contained in:
@@ -103,3 +103,41 @@ async def test_GiteaSignatureMiddleware_valid_signature(body, secret):
|
||||
|
||||
res = await middleware.dispatch(req, call_next)
|
||||
assert hasattr(res, 'called')
|
||||
|
||||
@pytest.mark.asyncio
|
||||
@pytest.mark.parametrize('signature,body,secret', [
|
||||
(make_signature(b'body', b''), b'body', b'\x42'),
|
||||
(make_signature(b'body', b'\x42'), b'body', b''),
|
||||
(make_signature(b'body', b'\x43'), b'body', b'\x42'),
|
||||
(make_signature(b'body', b'\x42'), b'body', b'\x43'),
|
||||
(make_signature(b'body', b''), b'body', b'\x42\x43'),
|
||||
(make_signature(b'body', b'\x42\x43'), b'body', b''),
|
||||
(make_signature(b'body', b'\x43\x44'), b'body', b'\x42'),
|
||||
(make_signature(b'body', b'\x42'), b'body', b'\x43\x44'),
|
||||
(make_signature(b'', b''), b'', b'\x42'),
|
||||
(make_signature(b'', b'\x42'), b'', b''),
|
||||
(make_signature(b'', b'\x43'), b'', b'\x42'),
|
||||
(make_signature(b'', b'\x42'), b'', b'\x43'),
|
||||
(make_signature(b'', b''), b'', b'\x42\x43'),
|
||||
(make_signature(b'', b'\x42\x43'), b'', b''),
|
||||
(make_signature(b'', b'\x43\x44'), b'', b'\x42'),
|
||||
(make_signature(b'', b'\x42'), b'', b'\x43\x44'),
|
||||
|
||||
(make_signature(b'a', b'\x42'), b'', b'\x42'),
|
||||
(make_signature(b'a', b'\x42'), b'b', b'\x42'),
|
||||
(make_signature(b'', b'\x42'), b'b', b'\x42'),
|
||||
])
|
||||
async def test_GiteaSignatureMiddleware_invalid_signature(signature, body, secret):
|
||||
middleware = GiteaSignatureMiddleware(app = None, secret = secret)
|
||||
|
||||
headers = {
|
||||
'X-Gitea-Signature': signature
|
||||
}
|
||||
|
||||
req = make_request(
|
||||
body,
|
||||
headers
|
||||
)
|
||||
|
||||
with pytest.raises(HTTPException):
|
||||
await middleware.dispatch(req, call_next)
|
||||
Reference in New Issue
Block a user