Дразнить AWS SDK на Голанге? - PullRequest
       43

Дразнить AWS SDK на Голанге?

0 голосов
/ 25 февраля 2019

Я нахожусь в ситуации, когда мне нужно смоделировать огромные части пакетов Lambda, API Gateway и S3 SDK для модульного тестирования.

Сначала я думал, что это не будет плохой идеей, но сейчаснеобходимость реализовать некоторое хранение данных в памяти и имитировать всю логику AWS для этих сервисов кажется невозможной (или, по крайней мере, очень трудоемкой).

Так что в основном моя mock-реализация выглядит примерно так

package awsmock

type Lambda struct {
    lambda.Lambda
    data map[string]*LambdaFunction
}

func (svc *Lambda) CreateFunction(...) (...) {
    // mimic the AWS logic but save to svc.data
}

// etc

Есть ли какой-нибудь лучший способ подумать о том, чтобы дразнить AWS SDK?Если нет, я мог бы написать библиотеку и опубликовать ее на Github, чтобы другие могли ее использовать и улучшить, но я надеюсь, что справлюсь, не реализовав это.

...