mirror of
https://github.com/bringout/oca-ocb-sale.git
synced 2026-04-27 02:52:04 +02:00
19.0 vanilla
This commit is contained in:
parent
79f83631d5
commit
73afc09215
6267 changed files with 1534193 additions and 1130106 deletions
|
|
@ -1,17 +1,17 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
# Part of Odoo. See LICENSE file for full copyright and licensing details.
|
||||
|
||||
from datetime import timedelta
|
||||
|
||||
from odoo.fields import Datetime
|
||||
from odoo.tests.common import TransactionCase
|
||||
from odoo.fields import Command, Datetime
|
||||
|
||||
from odoo.addons.website_sale.tests.common import WebsiteSaleCommon
|
||||
|
||||
|
||||
class TestWebsiteEventSaleCommon(TransactionCase):
|
||||
class TestWebsiteEventSaleCommon(WebsiteSaleCommon):
|
||||
|
||||
@classmethod
|
||||
def setUpClass(cls):
|
||||
super(TestWebsiteEventSaleCommon, cls).setUpClass()
|
||||
super().setUpClass()
|
||||
|
||||
cls.env.company.country_id = cls.env.ref('base.us')
|
||||
cls.currency_test = cls.env['res.currency'].create({
|
||||
|
|
@ -19,7 +19,6 @@ class TestWebsiteEventSaleCommon(TransactionCase):
|
|||
'rounding': 0.01,
|
||||
'symbol': 'EX',
|
||||
})
|
||||
cls.partner = cls.env['res.partner'].create({'name': 'test'})
|
||||
cls.env['res.currency.rate'].search([]).unlink()
|
||||
cls.rate = cls.env['res.currency.rate'].create({
|
||||
'company_id': cls.env.company.id,
|
||||
|
|
@ -30,51 +29,63 @@ class TestWebsiteEventSaleCommon(TransactionCase):
|
|||
cls.zero_tax = cls.env['account.tax'].sudo().create({
|
||||
'name': 'Tax 0',
|
||||
'amount': 0,
|
||||
'tax_group_id': cls.env['account.tax.group'].create({
|
||||
'name': 'Text Tax Group',
|
||||
'company_id': cls.env.company.id,
|
||||
}).id
|
||||
})
|
||||
cls.product_event = cls.env['product.product'].create({
|
||||
'detailed_type': 'event',
|
||||
'type': 'service',
|
||||
'service_tracking': 'event',
|
||||
'list_price': 100,
|
||||
'name': 'Event Registration No Company Assigned',
|
||||
'taxes_id': [(6, 0, cls.zero_tax.ids)],
|
||||
'taxes_id': [Command.set(cls.zero_tax.ids)],
|
||||
})
|
||||
|
||||
cls.event = cls.env['event.event'].create({
|
||||
'date_begin': (Datetime.today() + timedelta(days=5)).strftime('%Y-%m-%d 07:00:00'),
|
||||
'date_end': (Datetime.today() + timedelta(days=5)).strftime('%Y-%m-%d 16:30:00'),
|
||||
'name': 'Pycon',
|
||||
'user_id': cls.env.ref('base.user_admin').id,
|
||||
'website_published': True,
|
||||
})
|
||||
cls.ticket = cls.env['event.event.ticket'].create([{
|
||||
'event_id': cls.event.id,
|
||||
'name': 'Standard',
|
||||
'product_id': cls.product_event.id,
|
||||
'price': 100,
|
||||
}])
|
||||
cls.event, cls.event_2 = cls.env['event.event'].create([
|
||||
{
|
||||
'date_begin': (Datetime.today() + timedelta(days=5)).strftime('%Y-%m-%d 07:00:00'),
|
||||
'date_end': (Datetime.today() + timedelta(days=5)).strftime('%Y-%m-%d 16:30:00'),
|
||||
'name': 'Pycon',
|
||||
'user_id': cls.env.ref('base.user_admin').id,
|
||||
'website_published': True,
|
||||
},
|
||||
{
|
||||
'date_begin': (Datetime.today() + timedelta(days=5)).strftime('%Y-%m-%d 07:00:00'),
|
||||
'date_end': (Datetime.today() + timedelta(days=5)).strftime('%Y-%m-%d 16:30:00'),
|
||||
'name': 'Conference for Architects TEST',
|
||||
'user_id': cls.env.ref('base.user_admin').id,
|
||||
'website_published': True,
|
||||
}
|
||||
])
|
||||
cls.ticket, cls.ticket_2 = cls.env['event.event.ticket'].create([
|
||||
{
|
||||
'event_id': cls.event.id,
|
||||
'name': 'Standard',
|
||||
'product_id': cls.product_event.id,
|
||||
'price': 100,
|
||||
},
|
||||
{
|
||||
'event_id': cls.event_2.id,
|
||||
'name': 'Standard',
|
||||
'product_id': cls.product_event.id,
|
||||
'price': 1000,
|
||||
}
|
||||
])
|
||||
|
||||
cls.current_website = cls.env['website'].get_current_website()
|
||||
cls.pricelist = cls.current_website.get_current_pricelist()
|
||||
|
||||
cls.so = cls.env['sale.order'].create({
|
||||
'company_id': cls.env.company.id,
|
||||
'partner_id': cls.partner.id,
|
||||
'pricelist_id': cls.pricelist.id,
|
||||
})
|
||||
|
||||
def create_pricelist(currency, name, policy):
|
||||
def create_pricelist(currency, name):
|
||||
return cls.env['product.pricelist'].create({
|
||||
'currency_id': currency.id,
|
||||
'discount_policy': policy,
|
||||
'item_ids': [(5, 0, 0), (0, 0, {
|
||||
'applied_on': '3_global',
|
||||
'compute_price': 'percentage',
|
||||
'percent_price': 10,
|
||||
})],
|
||||
'item_ids': [
|
||||
Command.create({
|
||||
'applied_on': '3_global',
|
||||
'compute_price': 'percentage',
|
||||
'percent_price': 10,
|
||||
}),
|
||||
],
|
||||
'name': name,
|
||||
'selectable': True,
|
||||
})
|
||||
|
||||
cls.pricelist_with_discount = create_pricelist(currency=cls.env.company.currency_id, name='EUR With Discount Included', policy='with_discount')
|
||||
cls.pricelist_without_discount = create_pricelist(currency=cls.env.company.currency_id, name='EUR Without Discount Included', policy='without_discount')
|
||||
cls.ex_pricelist_with_discount = create_pricelist(currency=cls.currency_test, name='EX With Discount Included', policy='with_discount')
|
||||
cls.ex_pricelist_without_discount = create_pricelist(currency=cls.currency_test, name='EX Without Discount Included', policy='without_discount')
|
||||
cls.pricelist_without_discount = create_pricelist(currency=cls.env.company.currency_id, name='EUR Without Discount Included')
|
||||
cls.ex_pricelist_without_discount = create_pricelist(currency=cls.currency_test, name='EX Without Discount Included')
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue