def test_change_request_product_no_item_price(self, mock_product):
# make fake object for receive result from Product.objects.get()
res = MagicMock()
res.price = 5
# fake object Product.objects.get() return fake pr.price ( this 5 )
mock_product.objects.get.return_value = res
request = MagicMock()
request.POST = {} # must have
fake_self = MagicMock()
fake_self.kwargs = {}
fake_self.total_deal_price = 0
product = 'products-0-product'
item_price = 'products-0-item_price'
qty = 'products-0-qty'
delete = 'products-0-DELETE'
with patch.dict(request.POST,
{'products-TOTAL_FORMS': '1', item_price: '0', product : '3', qty :'50', delete: 'on' }), \
patch.dict(fake_self.kwargs, {'pk': '3'}):
request = DealUpdateView.change_request_product(fake_self, request)
self.assertEqual(request.POST['products-0-deal'], '3')
self.assertEqual(request.POST['products-0-total_price'], '250')
评论列表
文章目录