選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。

tests.py 1.9KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. from decimal import Decimal as D
  2. from django.utils import unittest
  3. from django.test.client import Client
  4. from django.core.urlresolvers import reverse
  5. from oscar.test.helpers import create_product
  6. class CheckoutViewsTest(unittest.TestCase):
  7. def setUp(self):
  8. self.client = Client()
  9. def test_anonymous_checkout(self):
  10. # Add a product to the basket
  11. p = create_product(price=D('10.00'))
  12. response = self.client.post(reverse('oscar-basket'), {'action': 'add',
  13. 'product_id': str(p.id),
  14. 'quantity': 1})
  15. self.assertEqual(302, response.status_code)
  16. # Submit shipping address
  17. response = self.client.post(reverse('oscar-checkout-shipping-address'),
  18. {'last_name': 'Smith',
  19. 'line1': '1 Portland Street',
  20. 'postcode': 'N12 9ET',
  21. 'country': 'GB'})
  22. self.assertEqual(302, response.status_code)
  23. # Choose shipping method
  24. response = self.client.post(reverse('oscar-checkout-shipping-method'),
  25. {'method_code': 'royal-mail-first-class'})
  26. self.assertEqual(302, response.status_code)
  27. # Shipping method
  28. response = self.client.get(reverse('oscar-checkout-payment-method'))
  29. self.assertEqual(302, response.status_code)
  30. # View preview
  31. response = self.client.get(reverse('oscar-checkout-preview'))
  32. self.assertEqual(200, response.status_code)
  33. # Submit
  34. response = self.client.post(reverse('oscar-checkout-payment-details'), {})
  35. self.assertEqual(302, response.status_code)