Может издеваться, но получает исключение, так как объект типа int не вызывается - PullRequest
0 голосов
/ 24 января 2019
  @patch("dao.qualcomm_transaction_service.QualcommTransactionService.get_max_qualcomm_id",20) 
def test_lambda_handler(): 
lambda_handler(event, None)

Я использовал mocking, увидев ваш пример, и мой метод должен возвращать 20 всякий раз, когда в лямбда-функции тестирование локально get_max_qualcomm_id, которое мы сделали. Но при достижении вышеупомянутого метода я получаю исключение, объект типа int не Callable.Пожалуйста, дайте мне знать, в чем здесь проблема.

Это фактический вызов метода, который я пытаюсь смоделировать, который вызывается с помощью лямбда-функции (локальное тестирование лямбды):

last_max_id = QualcommTransactionService().get_max_qualcomm_id(self.subscriber_id)

Myпапка strcuture выглядит так:

functions
  -subscription_lambda
     -qt_lambda_event.py
layers
  -subscription-service
     -python
       -soap
          -qt
             -qualcomm-transaction-main.py
       -config
   -data-access-layer
      -python
        -dao
          -qualcomm_transaction-service.py

1 Ответ

0 голосов
/ 24 января 2019

Отвечая на мой собственный вопрос, все, что мне нужно было, вместо этого передать 20 в пути, я возвратил объект Mock () и возвратил значение как 20

maxidMock = Mock()
maxidMock.return_value = 20

      @patch("dao.qualcomm_transaction_service.QualcommTransactionService.get_max_qualcomm_id",20) 
def test_lambda_handler(): 
 lambda_handler(event, None)
 maxidMock.assert_called_with(6)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...