mochieee
7/30/2019 - 8:36 AM

moto snippet

moto snippet

いつもmotoの使い方がわからなくなるのでメモ.
botoのmockライブラリなので、基本的な使い方なmockオブジェクトを作るところから始まる

基本的な使い方

s3にobjectをput

import boto3
from moto import mock_s3
import hogehoge

# botoを使ってs3にオブジェクトをアップするメソッドの
# handler.store_license_info()のテスト
@mock_s3
def test_put_object():
    client = boto3.resource('s3')
    client.create_bucket(Bucket="dummy-bucket")
    hogehoge.put_object(client, "path/to/file", "dummy-data")

sesでメール送付

from moto import mock_ses
import boto3
improt hogehoge

@mock_ses
def test_メールアドレスが設定されている場合は正常終了():
    ses = boto3.client('ses', region_name='us-east-1')
    ses.verify_email_identity(EmailAddress='no-reply-dummy@mail.example.com')
    result = hogehoge.send_email(destination_address="test_to@example.com")
    assert result["MessageId"]
    assert result["ResponseMetadata"]["HTTPStatusCode"] == 200