add audiolog

This commit is contained in:
2025-03-27 20:50:51 -03:00
parent 5af61465f3
commit 5756451738
10 changed files with 54 additions and 60 deletions

View File

@@ -136,7 +136,10 @@ def dynamodb_seeds(dynamodb_client):
@pytest.fixture
def mock_app():
def mock_app(monkeypatch):
for table_name in ['USER_TABLE', 'COURSE_TABLE']:
monkeypatch.setenv(table_name, PYTEST_TABLE_NAME)
import app
return app

View File

@@ -1,36 +1,28 @@
import json
from http import HTTPMethod, HTTPStatus
from layercake.dynamodb import DynamoDBPersistenceLayer
import app
from layercake.dynamodb import ComposeKey, DynamoDBCollection, PartitionKey
from ..conftest import HttpApiProxy, LambdaContext
def test_post_course(
mock_app,
monkeypatch,
dynamodb_persistence_layer: DynamoDBPersistenceLayer,
dynamodb_persistence_layer,
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(
r = mock_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
},
}
'name': 'pytest',
'access_period': 365,
'cert': {
'exp_interval': 730, # 2 years
},
},
),
lambda_context,
@@ -40,3 +32,9 @@ def test_post_course(
assert 'id' in json.loads(r['body'])
assert r['statusCode'] == HTTPStatus.CREATED
collect = DynamoDBCollection(dynamodb_persistence_layer)
logs = collect.get_items(
PartitionKey(ComposeKey('5OxmMjL-ujoR5IMGegQz', prefix='logs'))
)
print(logs)

View File

@@ -1,19 +1,14 @@
import json
from http import HTTPMethod, HTTPStatus
from layercake.dynamodb import DynamoDBPersistenceLayer
from ..conftest import HttpApiProxy, LambdaContext
def test_lookup(
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='/lookup/sergio@somosbeta.com.br',

View File

@@ -1,20 +1,15 @@
import json
from http import HTTPMethod, HTTPStatus
from layercake.dynamodb import DynamoDBCollection, DynamoDBPersistenceLayer
from ..conftest import HttpApiProxy, LambdaContext
def test_me(
mock_app,
dynamodb_seeds,
dynamodb_persistence_layer: DynamoDBPersistenceLayer,
http_api_proxy: HttpApiProxy,
lambda_context: LambdaContext,
):
mock_app.me.collect = DynamoDBCollection(dynamodb_persistence_layer)
# This data was added from seeds
r = mock_app.lambda_handler(
http_api_proxy(

View File

@@ -1,20 +1,15 @@
import json
from http import HTTPMethod, HTTPStatus
from layercake.dynamodb import DynamoDBCollection, DynamoDBPersistenceLayer
from ..conftest import HttpApiProxy, LambdaContext
def test_get_emails(
mock_app,
dynamodb_seeds,
dynamodb_persistence_layer: DynamoDBPersistenceLayer,
http_api_proxy: HttpApiProxy,
lambda_context: LambdaContext,
):
mock_app.users.collect = DynamoDBCollection(dynamodb_persistence_layer)
r = mock_app.lambda_handler(
http_api_proxy(
raw_path='/users/5OxmMjL-ujoR5IMGegQz/emails',
@@ -43,12 +38,9 @@ def test_get_emails(
def test_get_orgs(
mock_app,
dynamodb_seeds,
dynamodb_persistence_layer: DynamoDBPersistenceLayer,
http_api_proxy: HttpApiProxy,
lambda_context: LambdaContext,
):
mock_app.users.collect = DynamoDBCollection(dynamodb_persistence_layer)
r = mock_app.lambda_handler(
http_api_proxy(
raw_path='/users/5OxmMjL-ujoR5IMGegQz/orgs',
@@ -63,12 +55,9 @@ def test_get_orgs(
def test_get_logs(
mock_app,
dynamodb_seeds,
dynamodb_persistence_layer: DynamoDBPersistenceLayer,
http_api_proxy: HttpApiProxy,
lambda_context: LambdaContext,
):
mock_app.users.collect = DynamoDBCollection(dynamodb_persistence_layer)
r = mock_app.lambda_handler(
http_api_proxy(
raw_path='/users/5OxmMjL-ujoR5IMGegQz/logs',

View File

@@ -1,5 +1,3 @@
from layercake.dynamodb import DynamoDBCollection, DynamoDBPersistenceLayer
import auth as app
from auth import _parse_bearer_token
@@ -33,11 +31,8 @@ def test_bearer_jwt(lambda_context: LambdaContext):
def test_bearer_apikey(
dynamodb_seeds,
dynamodb_persistence_layer: DynamoDBPersistenceLayer,
lambda_context: LambdaContext,
):
app.collect = DynamoDBCollection(dynamodb_persistence_layer)
event = {
'headers': {
'authorization': 'Bearer sk-MzI1MDQ0NTctZjEzMy00YzAwLTkzNmItNmFhNzEyY2E5ZjQw',