Breaking : migrate your tests that use the TestDomain.client method following the instructions here https://github.com/Kludex/bump-testclient Squashed commit of the following: commit0417f27b3f
Author: Maxime Alves LIRMM <maxime.alves@lirmm.fr> Date: Sat Jan 14 11:08:44 2023 +0100 [deps] starlette 0.23 commit552f00a65b
Author: Maxime Alves LIRMM <maxime.alves@lirmm.fr> Date: Sat Jan 14 10:59:42 2023 +0100 [deps] starlette 0.22 commitaefe448717
Author: Maxime Alves LIRMM <maxime.alves@lirmm.fr> Date: Sat Jan 14 10:55:45 2023 +0100 [tests][fix] compares the json interpreted value instead of the string commit01333a200c
Author: Maxime Alves LIRMM <maxime.alves@lirmm.fr> Date: Sat Jan 14 10:55:20 2023 +0100 [testing] changes from requests to httpx for Starlette TestClient (breaks) commitf3784fab7f
Author: Maxime Alves LIRMM <maxime.alves@lirmm.fr> Date: Sat Jan 14 10:54:10 2023 +0100 [deps][breaking] starlette 0.21 commit717d3f8bd6
Author: Maxime Alves LIRMM <maxime.alves@lirmm.fr> Date: Sat Jan 14 10:26:31 2023 +0100 [responses] use a wrapper function for exception handling (fix starlette 0.20) commitd0876e45da
Author: Maxime Alves LIRMM <maxime.alves@lirmm.fr> Date: Sat Jan 14 10:25:21 2023 +0100 [deps][breaking] starlette 0.20 commit6504191c53
Author: Maxime Alves LIRMM <maxime.alves@lirmm.fr> Date: Sat Jan 14 10:12:51 2023 +0100 [deps] starlette 0.19 commit7b639a8dc2
Author: Maxime Alves LIRMM <maxime.alves@lirmm.fr> Date: Sat Jan 14 10:11:14 2023 +0100 [deps] starlette 0.18 commit20bd9077a4
Author: Maxime Alves LIRMM <maxime.alves@lirmm.fr> Date: Sat Jan 14 10:07:48 2023 +0100 pipenv update
66 lines
2.0 KiB
Python
66 lines
2.0 KiB
Python
#!/usr/bin/env python3
|
|
import pytest
|
|
from starlette.authentication import UnauthenticatedUser
|
|
from starlette.testclient import TestClient
|
|
import subprocess
|
|
import json
|
|
import os
|
|
import sys
|
|
import pprint
|
|
from halfapi.lib.constants import API_SCHEMA
|
|
|
|
|
|
def test_halfapi_whoami(application_debug):
|
|
# @TODO : If we use isolated filesystem multiple times that creates a bug.
|
|
# So we use a single function with fixture "application debug"
|
|
|
|
c = TestClient(application_debug)
|
|
r = c.request('get', '/halfapi/whoami')
|
|
assert r.status_code == 200
|
|
|
|
def test_halfapi_log(application_debug):
|
|
# @TODO : If we use isolated filesystem multiple times that creates a bug.
|
|
# So we use a single function with fixture "application debug"
|
|
|
|
c = TestClient(application_debug)
|
|
|
|
r = c.request('get', '/halfapi/log')
|
|
assert r.status_code == 200
|
|
|
|
def test_halfapi_error_400(application_debug):
|
|
# @TODO : If we use isolated filesystem multiple times that creates a bug.
|
|
# So we use a single function with fixture "application debug"
|
|
|
|
c = TestClient(application_debug)
|
|
|
|
r = c.request('get', '/halfapi/error/400')
|
|
assert r.status_code == 400
|
|
|
|
def test_halfapi_error_404(application_debug):
|
|
# @TODO : If we use isolated filesystem multiple times that creates a bug.
|
|
# So we use a single function with fixture "application debug"
|
|
|
|
c = TestClient(application_debug)
|
|
|
|
r = c.request('get', '/halfapi/error/404')
|
|
assert r.status_code == 404
|
|
|
|
def test_halfapi_error_500(application_debug):
|
|
# @TODO : If we use isolated filesystem multiple times that creates a bug.
|
|
# So we use a single function with fixture "application debug"
|
|
|
|
c = TestClient(application_debug)
|
|
|
|
r = c.request('get', '/halfapi/error/500')
|
|
assert r.status_code == 500
|
|
|
|
def test_schema(application_debug):
|
|
c = TestClient(application_debug)
|
|
|
|
r = c.request('get', '/')
|
|
schemas = r.json()
|
|
assert isinstance(schemas, list)
|
|
for schema in schemas:
|
|
assert isinstance(schema, dict)
|
|
assert API_SCHEMA.validate(schema)
|