で実行しているときに対応するアプリにグローバルな変数がある場合はdev_appserver.py
、その変数を条件とする失敗したメソッドのモックを作成できます。
私の場合、その変数は と呼ばれenv_conf.FLASK_CONF
ます。次のコードを使用して、braintree 生成呼び出しをモックしました。
# Imports
import braintree
import env_conf
from flask import render_template
# Mock Braintree in DEV environment
if env_conf.FLASK_CONF == 'DEV':
from functools import partial
def mock_generate(self):
return 'foobarbaz123'
braintree.ClientToken.generate = partial(mock_generate, braintree.ClientToken())
# Add payment handler
def add_payment():
token = braintree.ClientToken.generate()
return render_template('add-payment.html',
braintree_client_token=token)
一般的な考え方は次のとおりです。
import problem_function
if DEV_ENVIRONMENT:
def mock_problem_fcn():
return 'expected response'
problem_function = mock_problem_function
problem_function()