summaryrefslogtreecommitdiff
path: root/addons/test_event_full
diff options
context:
space:
mode:
authorThibault Delavallée <tde@odoo.com>2020-08-17 13:11:45 +0000
committerThibault Delavallée <tde@odoo.com>2020-08-17 16:29:52 +0000
commit040c43945082bf26b7e2edf29d2d7e45eea7f58b (patch)
tree8b4a1763413aebd0db0d52dca7000cd43628f027 /addons/test_event_full
parent5ee37a42f70d3ec1d2ed775119d673cbbfae9a66 (diff)
[IMP] test_event_full: improve full tour registration test
Adding some steps and checks, notably * add questions and fill them while registering; * in unit test launching tour, check content of registration as well as visitor; LINKS Task ID-2169118 odoo/odoo#55967 odoo/enterprise#12438 X-original-commit: 83f5c49f8f6734ab2beb9347029cbb69d154d15d
Diffstat (limited to 'addons/test_event_full')
-rw-r--r--addons/test_event_full/static/src/js/tours/wevent_register_tour.js12
-rw-r--r--addons/test_event_full/tests/common.py20
-rw-r--r--addons/test_event_full/tests/test_wevent_register.py26
3 files changed, 42 insertions, 16 deletions
diff --git a/addons/test_event_full/static/src/js/tours/wevent_register_tour.js b/addons/test_event_full/static/src/js/tours/wevent_register_tour.js
index 5d1ba5102f7..7d24c0ef0c6 100644
--- a/addons/test_event_full/static/src/js/tours/wevent_register_tour.js
+++ b/addons/test_event_full/static/src/js/tours/wevent_register_tour.js
@@ -91,9 +91,12 @@ var registerSteps = [{
$("input[name='1-name']").val("Raoulette Poiluchette");
$("input[name='1-phone']").val("0456112233");
$("input[name='1-email']").val("raoulette@example.com");
+ $("select[name*='question_answer-1']").val($("select[name*='question_answer-1'] option:contains('Consumers')").val());
$("input[name='2-name']").val("Michel Tractopelle");
$("input[name='2-phone']").val("0456332211");
$("input[name='2-email']").val("michel@example.com");
+ $("select[name*='question_answer-2']").val($("select[name*='question_answer-1'] option:contains('Research')").val());
+ $("textarea[name*='question_answer']").text("An unicorn told me about you. I ate it afterwards.");
},
}, {
content: "Validate attendees details",
@@ -101,8 +104,15 @@ var registerSteps = [{
trigger: 'button:contains("Continue")',
run: 'click',
}, {
- trigger: 'h3:contains("Registration confirmed!")',
+ trigger: 'div.o_wereg_confirmed_attendees span:contains("Raoulette Poiluchette")',
run: function () {} // check
+}, {
+ trigger: 'div.o_wereg_confirmed_attendees span:contains("Michel Tractopelle")',
+ run: function () {} // check
+}, {
+ content: "Click on 'register favorites talks' button",
+ trigger: 'a:contains("register to your favorites talks now")',
+ run: 'click',
}];
/**
diff --git a/addons/test_event_full/tests/common.py b/addons/test_event_full/tests/common.py
index dfdfb9914be..ab729cb9fa7 100644
--- a/addons/test_event_full/tests/common.py
+++ b/addons/test_event_full/tests/common.py
@@ -3,7 +3,6 @@
from datetime import datetime, timedelta, time
-from odoo import fields
from odoo.addons.base.tests.common import HttpCaseWithUserDemo, HttpCaseWithUserPortal
from odoo.addons.event_crm.tests.common import TestEventCrmCommon
from odoo.addons.sales_team.tests.common import TestSalesCommon
@@ -209,27 +208,18 @@ class TestWEventCommon(HttpCaseWithUserDemo, HttpCaseWithUserPortal, EventDtPatc
# ------------------------------------------------------------
self.event_question_1 = self.env['event.question'].create({
- 'title': 'Question1',
+ 'title': 'Which field are you working in',
'question_type': 'simple_choice',
'event_id': self.event.id,
'once_per_order': False,
'answer_ids': [
- (0, 0, {'name': 'Q1-Answer1'}),
- (0, 0, {'name': 'Q1-Answer2'})
+ (0, 0, {'name': 'Consumers'}),
+ (0, 0, {'name': 'Sales'}),
+ (0, 0, {'name': 'Research'}),
],
})
self.event_question_2 = self.env['event.question'].create({
- 'title': 'Question2',
- 'question_type': 'simple_choice',
- 'event_id': self.event.id,
- 'once_per_order': True,
- 'answer_ids': [
- (0, 0, {'name': 'Q2-Answer1'}),
- (0, 0, {'name': 'Q2-Answer2'})
- ],
- })
- self.event_question_3 = self.env['event.question'].create({
- 'title': 'Question3',
+ 'title': 'How did you hear about us ?',
'question_type': 'text_box',
'event_id': self.event.id,
'once_per_order': True,
diff --git a/addons/test_event_full/tests/test_wevent_register.py b/addons/test_event_full/tests/test_wevent_register.py
index cd880ec0652..b1f34d102cd 100644
--- a/addons/test_event_full/tests/test_wevent_register.py
+++ b/addons/test_event_full/tests/test_wevent_register.py
@@ -16,3 +16,29 @@ class TestWEventRegister(TestWEventCommon):
'odoo.__DEBUG__.services["web_tour.tour"].tours.wevent_register.ready',
login=None
)
+ new_registrations = self.event.registration_ids
+ visitor = new_registrations.visitor_id
+
+ # check registration content
+ self.assertEqual(len(new_registrations), 2)
+ self.assertEqual(
+ set(new_registrations.mapped("name")),
+ set(["Raoulette Poiluchette", "Michel Tractopelle"])
+ )
+ self.assertEqual(
+ set(new_registrations.mapped("phone")),
+ set(["0456112233", "0456332211"])
+ )
+ self.assertEqual(
+ set(new_registrations.mapped("email")),
+ set(["raoulette@example.com", "michel@example.com"])
+ )
+
+ # check visitor stored information
+ self.assertEqual(visitor.name, "Raoulette Poiluchette")
+ self.assertEqual(visitor.event_registration_ids, new_registrations)
+ self.assertEqual(visitor.partner_id, self.env['res.partner'])
+ self.assertEqual(visitor.mobile, "0456112233")
+ self.assertEqual(visitor.email, "raoulette@example.com")
+ self.assertFalse(visitor.parent_id)
+ self.assertTrue(visitor.active)