Skip to content

Commit 6c46059

Browse files
committed
[IMP] portal_event_tickets: добавил tour для смены билета
1 parent df65071 commit 6c46059

3 files changed

Lines changed: 88 additions & 1 deletion

File tree

portal_event_tickets/__manifest__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@
2727
"/portal_event_tickets/static/src/js/portal.esm.js",
2828
],
2929
"web.assets_tests": [
30-
"/portal_event_tickets/static/src/js/ticket_transfer.tour.esm.js",
30+
"/portal_event_tickets/static/src/js/*.tour.esm.js",
3131
],
3232
},
3333
"qweb": [],
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
/** @odoo-module **/
2+
3+
import {registry} from "@web/core/registry";
4+
5+
registry.category("web_tour.tours").add("portal_event_tickets.ticket_upgrade_tour", {
6+
test: true,
7+
url: "/my/tickets",
8+
steps: () => [
9+
{
10+
content: "Choose first ticket",
11+
trigger: "a.ticket-id",
12+
},
13+
{
14+
content: "Click on upgrade ticket",
15+
trigger: "a:contains('Upgrade / Change ticket')",
16+
},
17+
{
18+
content: "Confirm upgrade",
19+
trigger: "#changeTicketModal button[type=submit]",
20+
},
21+
{
22+
content: "Open the register modal",
23+
trigger: 'button:contains("Register")',
24+
},
25+
{
26+
content: "Select 1 unit of `VIP` ticket type",
27+
extra_trigger:
28+
'#wrap:not(:has(a[href*="/event"]:contains("Conference for Architects")))',
29+
trigger: "select:eq(0)",
30+
run: "text 1",
31+
},
32+
],
33+
});
Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
from datetime import timedelta
2+
3+
from odoo.fields import Datetime
4+
from odoo.tests.common import tagged
5+
6+
from odoo.addons.base.tests.common import HttpCaseWithUserPortal
7+
from odoo.addons.website_event_sale.tests.common import TestWebsiteEventSaleCommon
8+
9+
10+
@tagged("-at_install", "post_install")
11+
class TestTicketUpgrade(TestWebsiteEventSaleCommon, HttpCaseWithUserPortal):
12+
def setUp(self):
13+
super().setUp()
14+
15+
self.ticket_vip = self.env["event.event.ticket"].create(
16+
{
17+
"name": "VIP",
18+
"event_id": self.event_2.id,
19+
"product_id": self.env.ref("event_sale.product_product_event").id,
20+
"end_sale_datetime": (Datetime.today() + timedelta(90)).strftime(
21+
"%Y-%m-%d"
22+
),
23+
"price": 1500.0,
24+
}
25+
)
26+
27+
def test_ticket_upgrade(self):
28+
q = self.env["sale.order"].create(
29+
{
30+
"company_id": self.env.company.id,
31+
"partner_id": self.partner_portal.id,
32+
"pricelist_id": self.pricelist.id,
33+
"order_line": [
34+
(
35+
0,
36+
0,
37+
{
38+
"product_id": self.product_event.id,
39+
"event_id": self.event_2.id,
40+
"event_ticket_id": self.ticket_2.id,
41+
},
42+
)
43+
],
44+
}
45+
)
46+
47+
q.action_confirm()
48+
49+
reg = q.order_line.registration_ids
50+
self.assertEqual(len(reg), 1, "Unexpected behavior")
51+
52+
self.start_tour(
53+
"/my/tickets", "portal_event_tickets.ticket_upgrade_tour", login="portal"
54+
)

0 commit comments

Comments
 (0)