def test_lambda_timer_handler_error(self, mock_logging, mock_FSM, mock_retriable_entities): mock_retriable_entities.return_value = [{'payload': 'payloadZ'}] mock_FSM.return_value.create_FSM_instance.side_effect = Exception() lambda_timer_handler() mock_logging.exception.assert_called_with( 'Critical error handling entity: %s', {'payload': 'payloadZ'})
def test_lambda_timer_handler(self, mock_process_payload, mock_retriable_entities): mock_retriable_entities.return_value = [{ 'payload': 'payloadZ', 'correlation_id': 'abc123' }] lambda_timer_handler() mock_process_payload.assert_called_with('payloadZ', {'source': 'dynamodb_retry'})
shard_its.append(shard_it) dynamodb_old_images = {} seen_seq_num = set() # now loop on the stream, pulling records and calling # the lambda handler with something approximating a lambda # request while True: lambda_context = {} if args.run_timer_lambda: # run the timer handler lambda_timer_handler() if args.run_sqs_lambda and sqs_conn: # receive up to 10 messages from SQS sqs_messages = [] response = sqs_conn.receive_message(QueueUrl=sqs_queue_url, MaxNumberOfMessages=10) sqs_messages = response.get(AWS_SQS.Messages, []) if sqs_messages: # create the lambda event lambda_event = {AWS_LAMBDA.Records: []} # populate the lambda event