Add API tests
This commit is contained in:
parent
d4e41024b0
commit
597db33271
|
@ -11,6 +11,7 @@ log = get_logger(__name__)
|
||||||
class User(View):
|
class User(View):
|
||||||
async def get(self):
|
async def get(self):
|
||||||
uid = self.request.match_info.get('uid', None)
|
uid = self.request.match_info.get('uid', None)
|
||||||
|
|
||||||
if uid is None:
|
if uid is None:
|
||||||
return HTTPUnprocessableEntity()
|
return HTTPUnprocessableEntity()
|
||||||
|
|
||||||
|
|
|
@ -4,5 +4,7 @@ from phi.api.rest import User
|
||||||
|
|
||||||
|
|
||||||
api_routes = [
|
api_routes = [
|
||||||
|
route('*', '/user', User),
|
||||||
|
route('*', '/user/', User),
|
||||||
route('*', '/user/{uid}', User)
|
route('*', '/user/{uid}', User)
|
||||||
]
|
]
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
import pytest
|
import pytest
|
||||||
import phi.ldap.client
|
import phi.ldap.client
|
||||||
|
import phi.api.app
|
||||||
|
|
||||||
|
|
||||||
@pytest.fixture
|
@pytest.fixture
|
||||||
|
@ -15,3 +16,19 @@ def ldap_client():
|
||||||
client.open()
|
client.open()
|
||||||
yield client
|
yield client
|
||||||
client.close()
|
client.close()
|
||||||
|
|
||||||
|
|
||||||
|
@pytest.fixture
|
||||||
|
def api_app():
|
||||||
|
return phi.api.app.api_app({
|
||||||
|
'ldap': {
|
||||||
|
'host': 'localhost',
|
||||||
|
'port': 389,
|
||||||
|
'encryption': 'TLSv1.2',
|
||||||
|
'ciphers': 'HIGH',
|
||||||
|
'validate': 'False',
|
||||||
|
'username': 'uid=phi,ou=Services,dc=unit,dc=macaomilano,dc=org',
|
||||||
|
'password': 'phi',
|
||||||
|
'base_dn': 'dc=unit,dc=macaomilano,dc=org',
|
||||||
|
'attribute_id': 'uid',
|
||||||
|
'attribute_mail': 'mail'}})
|
||||||
|
|
15
test/test_api.py
Normal file
15
test/test_api.py
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
async def test_user_request_not_valid(test_client, api_app):
|
||||||
|
client = await test_client(api_app)
|
||||||
|
|
||||||
|
resp = await client.get('/user')
|
||||||
|
assert resp.status == 422
|
||||||
|
resp = None
|
||||||
|
|
||||||
|
resp = await client.get('/user/')
|
||||||
|
assert resp.status == 422
|
||||||
|
|
||||||
|
|
||||||
|
async def test_user_not_found(test_client, api_app):
|
||||||
|
client = await test_client(api_app)
|
||||||
|
resp = await client.get('/user/nonexistent')
|
||||||
|
assert resp.status == 404
|
Loading…
Reference in New Issue
Block a user