37 lines
946 B
Python
37 lines
946 B
Python
import json
|
|
from http import HTTPMethod, HTTPStatus
|
|
|
|
from layercake.dynamodb import DynamoDBPersistenceLayer
|
|
|
|
from ..conftest import HttpApiProxy, LambdaContext
|
|
|
|
|
|
def test_post_course(
|
|
mock_app,
|
|
dynamodb_persistence_layer: DynamoDBPersistenceLayer,
|
|
http_api_proxy: HttpApiProxy,
|
|
lambda_context: LambdaContext,
|
|
):
|
|
mock_app.courses.course_layer = dynamodb_persistence_layer
|
|
|
|
r = mock_app.lambda_handler(
|
|
http_api_proxy(
|
|
raw_path='/courses',
|
|
method=HTTPMethod.POST,
|
|
body={
|
|
'course': {
|
|
'name': 'pytest',
|
|
'access_period': 365,
|
|
},
|
|
'org': {
|
|
'id': '6RQuJ7koa9Gz4ZXTA4NeGR',
|
|
'name': 'EDUSEG',
|
|
},
|
|
},
|
|
),
|
|
lambda_context,
|
|
)
|
|
|
|
assert 'id' in json.loads(r['body'])
|
|
assert r['statusCode'] == HTTPStatus.CREATED
|