Files
saladeaula.digital/http-api/tests/routes/test_courses.py

43 lines
1.0 KiB
Python

import json
from http import HTTPMethod, HTTPStatus
from layercake.dynamodb import DynamoDBPersistenceLayer
import app
from ..conftest import HttpApiProxy, LambdaContext
def test_post_course(
mock_app,
monkeypatch,
dynamodb_persistence_layer: DynamoDBPersistenceLayer,
http_api_proxy: HttpApiProxy,
lambda_context: LambdaContext,
):
app.courses.course_layer = dynamodb_persistence_layer
app.courses.user_layer = dynamodb_persistence_layer
r = app.lambda_handler(
http_api_proxy(
raw_path='/courses',
method=HTTPMethod.POST,
headers={'X-Tenant': '*'},
body={
'course': {
'name': 'pytest',
'access_period': 365,
'cert': {
'exp_interval': 730, # 2 years
},
}
},
),
lambda_context,
)
# print(r)
assert 'id' in json.loads(r['body'])
assert r['statusCode'] == HTTPStatus.CREATED