コード例 #1
0
    def __init__(self, encoding: Encoding = BytesEncoding()):
        """
        Initialize Jeffy SDK.

        Parameters
        ----------
        encoding: jeffy.encoding.Encoding
        """
        self.app = framework.get_app()
        self.encoding = encoding
コード例 #2
0
def test_get_app():
    """It can get Jeffy object."""
    assert isinstance(framework.get_app(), framework.Jeffy)
コード例 #3
0
import io

from jeffy.framework import get_app

app = get_app()


@app.handlers.common()
def common_example(event, context):
    """Common handler example."""
    return event


@app.handlers.s3()
def s3_example(event, context):
    """Common handler example."""
    return event


def test_common():
    """Common handler test."""
    assert common_example({'foo': 'bar'}, {}) == {'foo': 'bar'}


def test_s3(mocker):
    """S3 handler test."""
    m = mocker.Mock()
    m.get_object = mocker.Mock(return_value={
        'Metadata': {
            'foo': 'bar'
        },
コード例 #4
0
import os
import uuid

from jeffy.framework import get_app
from jeffy.logging.handlers.firehose import KinesisFirehoseHandler
from jeffy.settings import Logging
from jeffy.sdk.kinesis import Kinesis
from jeffy.sdk.s3 import S3
from jeffy.sdk.sns import Sns
from jeffy.sdk.sqs import Sqs

import boto3
import requests

app = get_app(logging=Logging(handlers=[
    logging.StreamHandler(),
    KinesisFirehoseHandler(stream_name=os.environ['FIREHOSE_NAME'])
]))


@app.handlers.common()
def start_test(event, context):
    requests.post(os.environ['API_URL'],
                  data=json.dumps({'foo': 'bar'}),
                  headers={'content-type': 'application/json'})
    Sns().publish(topic_arn=os.environ['TOPIC_ARN'],
                  subject='foo',
                  message='bar')
    Kinesis().put_record(stream_name=os.environ['STREAM_NAME'],
                         data={'foo': 'bar'},
                         partition_key='partition_key')
    Sqs().send_message(queue_url=os.environ['QUEUE_URL'],
コード例 #5
0
def handlers():
    """Get Handlers class."""
    app = framework.get_app(logging=Logging(correlation_attr_name='foo'),
                            rest_api=RestApi(correlation_id_header='x-bar-id'))
    return app.handlers
コード例 #6
0
 def __init__(self) -> None:
     self.app = framework.get_app()