57 lines
1.6 KiB
Python
57 lines
1.6 KiB
Python
#!/usr/bin/env python3
|
|
|
|
import unittest
|
|
import httpx
|
|
|
|
|
|
URL_API = 'http://127.0.0.1:8000/api/{}'
|
|
PATH_CERT = 'certificados/comercio.{}'
|
|
|
|
|
|
class TestClients(unittest.TestCase):
|
|
|
|
def setUp(self):
|
|
self.url = URL_API.format('clients/')
|
|
|
|
def test_unauthorized_without_token(self):
|
|
expected = 401
|
|
result = httpx.post(self.url)
|
|
self.assertEqual(expected, result.status_code)
|
|
|
|
def test_unauthorized_with_token(self):
|
|
expected = 401
|
|
result = httpx.post(self.url, headers={'Token': '123'})
|
|
self.assertEqual(expected, result.status_code)
|
|
|
|
def test_01_add_client(self):
|
|
expected = 201
|
|
headers = {'Token': '12345'}
|
|
data = {
|
|
'rfc': 'EKU9003173C9',
|
|
'password': '12345678a',
|
|
}
|
|
files = {
|
|
'cer': open(PATH_CERT.format('cer'), 'rb'),
|
|
'key': open(PATH_CERT.format('key'), 'rb'),
|
|
}
|
|
result = httpx.post(self.url, headers=headers, data=data, files=files)
|
|
self.assertEqual(expected, result.status_code)
|
|
|
|
def test_02_get_client(self):
|
|
expected = 200
|
|
headers = {'Token': '12345'}
|
|
params = {'rfc': 'EKU9003173C9'}
|
|
result = httpx.get(self.url, headers=headers, params=params)
|
|
self.assertEqual(expected, result.status_code)
|
|
|
|
def test_03_delete_client(self):
|
|
expected = 200
|
|
headers = {'Token': '12345'}
|
|
params = {'rfc': 'EKU9003173C9'}
|
|
result = httpx.delete(self.url, headers=headers, params=params)
|
|
self.assertEqual(expected, result.status_code)
|
|
|
|
|
|
if __name__ == '__main__':
|
|
unittest.main()
|