1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
|
# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
import odoo.tests
from datetime import timedelta
from odoo.addons.base.tests.common import HttpCaseWithUserDemo
from odoo.fields import Datetime
@odoo.tests.common.tagged('post_install', '-at_install')
class TestUi(HttpCaseWithUserDemo):
def setUp(self):
super().setUp()
self.event_2 = self.env['event.event'].create({
'name': 'Conference for Architects TEST',
'user_id': self.env.ref('base.user_admin').id,
'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'),
'website_published': True,
})
self.env['event.event.ticket'].create([{
'name': 'Standard',
'event_id': self.event_2.id,
'product_id': self.env.ref('event_sale.product_product_event').id,
'start_sale_date': (Datetime.today() - timedelta(days=5)).strftime('%Y-%m-%d 07:00:00'),
'end_sale_date': (Datetime.today() + timedelta(90)).strftime('%Y-%m-%d'),
'price': 1000.0,
}, {
'name': 'VIP',
'event_id': self.event_2.id,
'product_id': self.env.ref('event_sale.product_product_event').id,
'end_sale_date': (Datetime.today() + timedelta(90)).strftime('%Y-%m-%d'),
'price': 1500.0,
}])
# flush event to ensure having tickets available in the tests
self.event_2.flush()
(self.env.ref('base.partner_admin') + self.partner_demo).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',
})
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
def test_admin(self):
# Seen that:
# - this test relies on demo data that are entirely in USD (pricelists)
# - that main demo company is gelocated in US
# - that this test awaits for hardcoded USDs amount
# we have to force company currency as USDs only for this test
self.cr.execute("UPDATE res_company SET currency_id = %s WHERE id = %s", [self.env.ref('base.USD').id, self.env.ref('base.main_company').id])
self.start_tour("/", 'event_buy_tickets', login="admin")
def test_demo(self):
self.start_tour("/", 'event_buy_tickets', login="demo")
# TO DO - add public test with new address when convert to web.tour format.
|