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)
|
res = await middleware.dispatch(req, call_next)
|
||||||
assert hasattr(res, 'called')
|
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