Esempio n. 1
0
def test_zero_default_price(rf):
    request = initialize_test(rf, True)

    # create a product with zero price
    product = create_product("random-1", shop=request.shop, default_price=0)

    DiscountedProductPrice.objects.create(product=product, shop=request.shop, price=50)

    dpm = DiscountPricingModule()
    pricing_context = dpm.get_context_from_request(request)
    price_info = dpm.get_price_info(pricing_context, product)

    assert price_info.price == TaxfulPrice(0)
Esempio n. 2
0
def test_price_is_discounted(rf):
    shop = get_default_shop()

    product = create_product("random-1", shop=shop, default_price=100)

    DiscountedProductPrice.objects.create(product=product, shop=shop, price_value=50)

    request = rf.get("/")
    request.shop = shop

    dpm = DiscountPricingModule()
    pricing_context = dpm.get_context_from_request(request)

    price_info = dpm.get_price_info(pricing_context, product)

    assert price_info.price == shop.create_price(50)
Esempio n. 3
0
def test_zero_default_price(rf):
    request = initialize_test(rf, True)
    price = request.shop.create_price

    # create a product with zero price
    product = create_product("random-1", shop=request.shop, default_price=0)

    DiscountedProductPrice.objects.create(product=product, shop=request.shop, price_value=50)

    dpm = DiscountPricingModule()
    pricing_context = dpm.get_context_from_request(request)
    price_info = dpm.get_price_info(pricing_context, product)

    assert price_info.price == price(0)

    assert product.get_price(request) == price(0)
Esempio n. 4
0
def test_set_taxful_price_works_with_product_id(rf):
    request = initialize_test(rf, True)
    price = request.shop.create_price

    product = create_product("Anuva-Product", request.shop, default_price=300)

    # create ssp with higher price
    spp = DiscountedProductPrice(product=product, shop=request.shop, price_value=250)
    spp.save()

    dpm = DiscountPricingModule()
    pricing_context = dpm.get_context_from_request(request)
    price_info = dpm.get_price_info(pricing_context, product=product.pk, quantity=1)

    assert price_info.price == request.shop.create_price(250)

    assert product.get_price(pricing_context, quantity=1) == price(250)