def test_updates_order(self): contact = ContactFactory() cart = CartFactory() data = {"shipping": None, "discount": None} order = TestOrderFactory(contact=contact) request = self.request_factory.get("/") request.session = {"orderID": order.id} request.user = contact.user test_order = get_or_create_order(request, cart, contact, data) self.assertEqual(Order.objects.all().count(), 1) self.assertEqual(test_order.contact, contact) self.assertEqual(test_order.currency, order.currency) for item in cart.cartitem_set.all(): self.assertIn(item.product, (oi.product for oi in test_order.orderitem_set.all()))
def test_creates_order(self): usd = USDCurrencyFactory() usd.accepted = True usd.save() cart = CartFactory() contact = ContactFactory() data = {"shipping": None, "discount": None} request = self.request_factory.get("/") request.session = {"currency_code": "USD"} order = get_or_create_order(request, cart, contact, data) self.assertEqual(Order.objects.all().count(), 1) self.assertEqual(order.contact, contact) self.assertEqual(order.currency.iso_4217_code, "USD") for item in cart.cartitem_set.all(): self.assertIn(item.product, (oi.product for oi in order.orderitem_set.all()))
def giftcert_pay_ship_process_form(request, contact, working_cart, payment_module): if request.method == "POST": new_data = request.POST.copy() form = GiftCertPayShipForm(request, payment_module, new_data) if form.is_valid(): data = form.cleaned_data # Create a new order. newOrder = get_or_create_order(request, working_cart, contact, data) newOrder.add_variable(GIFTCODE_KEY, data["giftcode"]) request.session["orderID"] = newOrder.id url = None if not url: url = lookup_url(payment_module, "satchmo_checkout-step3") return (True, http.HttpResponseRedirect(url)) else: form = GiftCertPayShipForm(request, payment_module) return (False, form)
def giftcert_pay_ship_process_form(request, contact, working_cart, payment_module): if request.method == "POST": new_data = request.POST.copy() form = GiftCertPayShipForm(request, payment_module, new_data) if form.is_valid(): data = form.cleaned_data # Create a new order. newOrder = get_or_create_order(request, working_cart, contact, data) newOrder.add_variable(GIFTCODE_KEY, data['giftcode']) request.session['orderID'] = newOrder.id url = None if not url: url = lookup_url(payment_module, 'satchmo_checkout-step3') return (True, http.HttpResponseRedirect(url)) else: form = GiftCertPayShipForm(request, payment_module) return (False, form)
def save(self, request, cart, contact, payment_module): self.order = get_or_create_order(request, cart, contact, self.cleaned_data) self.orderpayment = create_pending_payment(self.order, payment_module) signals.form_save.send(SimplePayShipForm, form=self)