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