50 """Prueba la creación exitosa de una preferencia de pago"""
52 mock_cart_service.get_cart.return_value = self.
cart_data
55 mock_mp_service_instance = MagicMock()
56 mock_mp_service.return_value = mock_mp_service_instance
59 mock_mp_service_instance.process_cart_to_items.return_value = self.
preference_data[
"items"]
60 mock_mp_service_instance.create_preference.return_value = self.
preference_data
63 token =
"test_token_123"
64 response = self.
client.post(
66 data=json.dumps({
"user_token": token,
"email":
"cliente@example.com"}),
67 content_type=
"application/json"
71 self.assertEqual(response.status_code, status.HTTP_201_CREATED)
72 self.assertEqual(response.data[
"preference_id"],
"test_preference_id")
73 self.assertEqual(response.data[
"init_point"],
"https://www.mercadopago.com/init_point")
76 mock_cart_service.get_cart.assert_called_once_with(token)
77 mock_mp_service_instance.process_cart_to_items.assert_called_once_with(self.
cart_data)
80 self.assertTrue(PaymentRequest.objects.filter(preference_id=
"test_preference_id").exists())