私は2つのクラスを書いています。システムと注文は "オンラインチケット配布ストア"のようなものです。djangoのテストでモックとクライアントを接続する
order = Order('title', set(['1', '2', '5']))
System.fill(order)
が、私は私のviews.fill_order機能をテストし、それが正しくPOSTパラメータから順に埋めていますかどうかを確認したいと思います:
作るためには簡単です。これを行うには私はこのような偽およびクライアントを使用することができます。
from core.order import Order
from core.system import System
from django.test.client import Client
from mock import Mock, sentinel
self.logged_client = Client()
# skipping logging process
Order = Mock(sentinel.return_value)
System = Mock()
System.fill = Mock()
# sending hypotetic POST
self.logged_client.post('/my_view_url/', {'title': self.PHANTOM, 'seat_numbers': '1I', 'seat_numbers': '3IV'})
System.fill.assert_called_with(Order.return_value)
Order.assert_called_with(self.PHANTOM, set(['1I', '2II', '3IV']))
しかし...それは(失敗アサート)働いていません。それを修正するには?
私は私のviews.fill_order関数内で私がやるので、それは知っている:
from core.system import System
from core.order import Order
再び、しかし、持続的にテスト中に嘲笑されるように、このクラスを強制的にどのように?