Newer
Older
from multiprocessing import Process
import requests
import unittest
import uvicorn
class TestApiFromAutomatedClient(unittest.TestCase):
def setUp(self) -> None:
import uvicorn
host = '127.0.0.1'
port = 5000
self.server_process = Process(
target=uvicorn.run,
args=('api:app', ),
kwargs={'host': host, 'port': port, 'log_level': 'info'},
daemon=True
)
self.uri = f'http://{host}:{port}/'
self.server_process.start()
def tearDown(self) -> None:
self.server_process.terminate()
def test_trivial_api_response(self):
resp = requests.get(self.uri, )
self.assertEqual(resp.status_code, 200)