2022-04-24 12:38:44 -06:00

63 lines
1.8 KiB
Python

import logging
from django.test import TestCase, Client, RequestFactory
from django.urls import reverse
from django.conf import settings
from paypalcheckoutsdk.orders import OrdersCreateRequest, OrdersCaptureRequest
from paypalcheckoutsdk.core import PayPalHttpClient, SandboxEnvironment
from accounts.models import User, Address
from core.models import Product, Order
from .views import OrderCreateView
from .cart import Cart
logger = logging.getLogger(__name__)
class CartTest(TestCase):
def setUp(self):
self.client = Client()
self.customer = User.objects.create_user(
username='Peter Templer', email='peter@testing.com', password='peterspassword321'
)
self.product = Product.objects.create(
name='Dante\'s Tornado',
description='Coffee',
sku='23987',
price=13.4,
weight=10,
visible_in_listings=True
)
self.order = Order.objects.create(
customer=self.customer,
total_net_amount=13.4
)
self.client.force_login(self.customer)
def test_post_checkout_form(self):
url = reverse('storefront:order-create')
response = self.client.get(url)
self.assertTemplateUsed(response, 'storefront/order_form.html')
request = response.wsgi_request
cart = Cart(request)
cart.add(
request=request,
product=self.product,
quantity=1,
update_quantity=False
)
logger.info(f'Body data:\n{body_data}\n')
params = {
'email': 'nathanchapman@hey.com',
'first_name': 'Nathan',
'last_name': 'Chapman',
'total_net_amount': 26.80
}
response = self.client.post(url, params)