[IMP] website_sale_delivery: Adapt tests to work with/without demo data
This commit is contained in:
@@ -11,7 +11,7 @@ tour.register('check_free_delivery', {
|
||||
// Part 1: Check free delivery
|
||||
{
|
||||
content: "select office chair black",
|
||||
trigger: '.oe_product_cart:first a:contains("Office Chair Black")',
|
||||
trigger: '.oe_product_cart a:contains("Office Chair Black TEST")',
|
||||
},
|
||||
{
|
||||
content: "click on add to cart",
|
||||
|
||||
@@ -1,21 +1,70 @@
|
||||
import odoo.tests
|
||||
# Part of Odoo. See LICENSE file for full copyright and licensing details.
|
||||
|
||||
import odoo.tests
|
||||
|
||||
|
||||
@odoo.tests.tagged('post_install', '-at_install')
|
||||
class TestUi(odoo.tests.HttpCase):
|
||||
|
||||
def test_01_free_delivery_when_exceed_threshold(self):
|
||||
|
||||
# Avoid Shipping/Billing address page
|
||||
self.env.ref('base.partner_admin').write({
|
||||
'street': '215 Vine St',
|
||||
'city': 'Scranton',
|
||||
'zip': '18503',
|
||||
'country_id': self.env.ref('base.us').id,
|
||||
'state_id': self.env.ref('base.state_us_39').id,
|
||||
'phone': '+1 555-555-5555',
|
||||
'email': 'admin@yourcompany.example.com',
|
||||
})
|
||||
|
||||
office_chair = self.env['product.product'].create({
|
||||
'name': 'Office Chair Black TEST',
|
||||
'list_price': 12.50,
|
||||
})
|
||||
self.env.ref("delivery.free_delivery_carrier").write({
|
||||
'name': 'Delivery Now Free Over 10',
|
||||
'fixed_price': 2,
|
||||
'free_over': True,
|
||||
'amount': 10,
|
||||
})
|
||||
self.env.ref("delivery.delivery_carrier").write({
|
||||
'sequence': 9999, # ensure last to load price async
|
||||
self.product_delivery_poste = self.env['product.product'].create({
|
||||
'name': 'The Poste',
|
||||
'type': 'service',
|
||||
'categ_id': self.env.ref('delivery.product_category_deliveries').id,
|
||||
'sale_ok': False,
|
||||
'purchase_ok': False,
|
||||
'list_price': 20.0,
|
||||
})
|
||||
self.carrier = self.env['delivery.carrier'].create({
|
||||
'name': 'The Poste',
|
||||
'sequence': 9999, # ensure last to load price async
|
||||
'fixed_price': 20.0,
|
||||
'delivery_type': 'base_on_rule',
|
||||
'product_id': self.product_delivery_poste.id,
|
||||
'website_published': True,
|
||||
})
|
||||
self.env['delivery.price.rule'].create([{
|
||||
'carrier_id': self.carrier.id,
|
||||
'max_value': 5,
|
||||
'list_base_price': 20,
|
||||
}, {
|
||||
'carrier_id': self.carrier.id,
|
||||
'operator': '>=',
|
||||
'max_value': 5,
|
||||
'list_base_price': 50,
|
||||
}, {
|
||||
'carrier_id': self.carrier.id,
|
||||
'operator': '>=',
|
||||
'max_value': 300,
|
||||
'variable': 'price',
|
||||
'list_base_price': 0,
|
||||
}])
|
||||
|
||||
cash_journal = self.env['account.journal'].create({'name': 'Cash - Test', 'type': 'cash', 'code': 'CASH - Test'})
|
||||
self.env.ref('payment.payment_acquirer_transfer').journal_id = cash_journal
|
||||
|
||||
# Ensure "Wire Transfer" is the default acquirer.
|
||||
# Acquirers are sorted by state, showing `test` acquirers first (don't ask why).
|
||||
self.env.ref("payment.payment_acquirer_transfer").write({"state": "test"})
|
||||
|
||||
Reference in New Issue
Block a user