def test_can_be_created_with_an_offer(self): offer = create_offer() order = create_order(number='100002') discount = OrderDiscount.objects.create(order=order, amount=D('10.00'), offer_id=offer.id) self.assertEqual(offer.id, discount.offer.id) self.assertEqual(offer.name, discount.offer_name)
def test_can_be_created_with_an_offer_and_specified_offer_name(self): offer = create_offer(name="My offer") order = create_order(number='100002') discount = OrderDiscount.objects.create(order=order, amount=D('10.00'), offer_id=offer.id, offer_name="Your offer") self.assertEqual(offer.id, discount.offer.id) self.assertEqual("Your offer", discount.offer_name)
def setUp(self): offer = create_offer() self.login() self.add_product_to_basket() self.complete_shipping_address() self.complete_shipping_method() self.response = self.submit() # Reload offer self.offer = ConditionalOffer.objects.get(id=offer.id)
def test_can_update_an_existing_offer(self): factories.create_offer(name="Offer A") list_page = self.get(reverse('dashboard:offer-list')) detail_page = list_page.click('Offer A') metadata_page = detail_page.click(linkid="edit_metadata") metadata_form = metadata_page.form metadata_form['name'] = "Offer A+" benefit_page = metadata_form.submit().follow() benefit_form = benefit_page.form condition_page = benefit_form.submit().follow() condition_form = condition_page.form restrictions_page = condition_form.submit().follow() restrictions_page.form.submit() models.ConditionalOffer.objects.get(name="Offer A+")
def test_contains_offer_details_after_offer_is_deleted(self): offer = create_offer(name="Get 200% off") order = create_order(number='100002') discount = OrderDiscount.objects.create(order=order, amount=D('10.00'), offer_id=offer.id) offer.delete() self.assertTrue(discount.voucher is None) self.assertTrue(discount.offer is None) self.assertEquals(discount.description(), u'Get 200% off')
def test_can_suspend_an_offer(self): # Create an offer offer = factories.create_offer() self.assertFalse(offer.is_suspended) detail_page = self.get( reverse('dashboard:offer-detail', kwargs={'pk': offer.pk})) form = detail_page.forms['status_form'] form.submit('suspend') reloaded_offer = models.ConditionalOffer.objects.get(pk=offer.pk) self.assertTrue(reloaded_offer.is_suspended)
def test_can_suspend_an_offer(self): # Create an offer offer = factories.create_offer() self.assertFalse(offer.is_suspended) detail_page = self.get(reverse('dashboard:offer-detail', kwargs={'pk': offer.pk})) form = detail_page.forms['status_form'] form.submit('suspend') reloaded_offer = models.ConditionalOffer.objects.get(pk=offer.pk) self.assertTrue(reloaded_offer.is_suspended)
def test_can_jump_to_intermediate_step_for_existing_offer(self): offer = factories.create_offer() url = reverse('dashboard:offer-condition', kwargs={'pk': offer.id}) self.assertEqual(200, self.get(url).status_code)