+
diff --git a/addons/calendar/static/tests/attendee_calendar_views_tests.js b/addons/calendar/static/tests/attendee_calendar_views_tests.js
index 3c3420c0fbb..b8be68008b1 100644
--- a/addons/calendar/static/tests/attendee_calendar_views_tests.js
+++ b/addons/calendar/static/tests/attendee_calendar_views_tests.js
@@ -1,15 +1,8 @@
/** @odoo-module **/
-import {
- getFixture,
- patchDate,
- patchWithCleanup,
-} from "@web/../tests/helpers/utils";
+import { getFixture, patchDate, patchWithCleanup } from "@web/../tests/helpers/utils";
-import {
- changeScale,
- clickEvent,
-} from "@web/../tests/views/calendar/helpers";
+import { changeScale, clickEvent } from "@web/../tests/views/calendar/helpers";
import { makeView, setupViewRegistries } from "@web/../tests/views/helpers";
import { browser } from "@web/core/browser/browser";
import { registry } from "@web/core/registry";
@@ -27,7 +20,7 @@ QUnit.module("CalendarView", ({ beforeEach }) => {
patchWithCleanup(browser, {
setTimeout: (fn) => fn(),
- clearTimeout: () => { },
+ clearTimeout: () => {},
});
target = getFixture();
@@ -93,7 +86,7 @@ QUnit.module("CalendarView", ({ beforeEach }) => {
},
is_hatched: { string: "Hatched", type: "boolean" },
is_striked: { string: "Striked", type: "boolean" },
- res_model_name: { string: "Linked Model Name", type: "char" }
+ res_model_name: { string: "Linked Model Name", type: "char" },
},
records: [
{
@@ -124,7 +117,7 @@ QUnit.module("CalendarView", ({ beforeEach }) => {
methods: {
check_access_rights() {
return Promise.resolve(true);
- }
+ },
},
},
user: {
@@ -171,8 +164,8 @@ QUnit.module("CalendarView", ({ beforeEach }) => {
{ id: 2, user_id: uid, partner_id: 2, partner_checked: true },
{ id: 3, user_id: 4, partner_id: 3, partner_checked: true },
],
- }
- }
+ },
+ },
};
});
@@ -188,8 +181,7 @@ QUnit.module("CalendarView", ({ beforeEach }) => {
stop: "2016-12-11 10:00:00",
allday: false,
partner_ids: [1, 2, 3],
- res_model_name: 'Time Off',
-
+ res_model_name: "Time Off",
});
await makeView({
@@ -222,6 +214,8 @@ QUnit.module("CalendarView", ({ beforeEach }) => {
return Promise.resolve(true);
} else if (route === "/web/dataset/call_kw/res.partner/get_attendee_detail") {
return Promise.resolve([]);
+ } else if (route === "/calendar/check_credentials") {
+ return Promise.resolve({});
}
},
});
@@ -230,13 +224,9 @@ QUnit.module("CalendarView", ({ beforeEach }) => {
".o_calendar_renderer .fc-view-container",
"should instance of fullcalendar"
);
- await changeScale(target, 'week');
+ await changeScale(target, "week");
await clickEvent(target, 3);
- assert.containsOnce(
- target,
- ".fa-link",
- "A link icon should be present"
- );
+ assert.containsOnce(target, ".fa-link", "A link icon should be present");
assert.strictEqual(target.querySelector("li a[href='#']").textContent, "Time Off");
});
});
diff --git a/addons/calendar/static/tests/calendar_tests.js b/addons/calendar/static/tests/calendar_tests.js
index 8398e2a5ffb..98258ab181f 100644
--- a/addons/calendar/static/tests/calendar_tests.js
+++ b/addons/calendar/static/tests/calendar_tests.js
@@ -102,8 +102,8 @@ QUnit.module(
"the tag should be correctly named"
);
assert.hasClass(
- badges[0].querySelector('img'),
- "o_attendee_border_accepted",
+ badges[0].querySelector(".attendee_tag_status"),
+ "o_attendee_status_accepted",
"Jesus should attend the meeting"
);
assert.strictEqual(
@@ -112,8 +112,8 @@ QUnit.module(
"the tag should be correctly named"
);
assert.hasClass(
- badges[1].querySelector('img'),
- "o_attendee_border_tentative",
+ badges[1].querySelector(".attendee_tag_status"),
+ "o_attendee_status_tentative",
"Mohamet should still confirm his attendance to the meeting"
);
assert.containsOnce(badges[0], "img", "should have img tag");
diff --git a/addons/calendar/static/tests/tours/calendar_tour.js b/addons/calendar/static/tests/tours/calendar_tour.js
index b524cdc9b2f..7b23d6c12ac 100644
--- a/addons/calendar/static/tests/tours/calendar_tour.js
+++ b/addons/calendar/static/tests/tours/calendar_tour.js
@@ -1,156 +1,161 @@
/** @odoo-module **/
- import { registry } from "@web/core/registry";
- import { stepUtils } from "@web_tour/tour_service/tour_utils";
+import { registry } from "@web/core/registry";
+import { stepUtils } from "@web_tour/tour_service/tour_utils";
- const todayDate = function() {
- let now = new Date();
- let year = now.getFullYear();
- let month = String(now.getMonth() + 1).padStart(2, '0');
- let day = String(now.getDate()).padStart(2, '0');
+const todayDate = function () {
+ const now = new Date();
+ const year = now.getFullYear();
+ const month = String(now.getMonth() + 1).padStart(2, "0");
+ const day = String(now.getDate()).padStart(2, "0");
- return `${month}/${day}/${year} 10:00:00`;
- };
+ return `${month}/${day}/${year} 10:00:00`;
+};
- registry.category("web_tour.tours").add('calendar_appointments_hour_tour', {
- url: '/web',
- test: true,
- steps: () => [stepUtils.showAppsMenuItem(),
+registry.category("web_tour.tours").add("calendar_appointments_hour_tour", {
+ url: "/web",
+ test: true,
+ steps: () => [
+ stepUtils.showAppsMenuItem(),
{
trigger: '.o_app[data-menu-xmlid="calendar.mail_menu_calendar"]',
- content: 'Open Calendar',
- run: 'click',
+ content: "Open Calendar",
+ run: "click",
},
{
- trigger: '.o-calendar-button-new',
- content: 'Create a new event',
- run: 'click',
+ trigger: ".o-calendar-button-new",
+ content: "Create a new event",
+ run: "click",
},
{
- trigger: '#name_0',
- content: 'Give a name to the new event',
- run: 'text TEST EVENT',
+ trigger: "#name_0",
+ content: "Give a name to the new event",
+ run: "text TEST EVENT",
},
{
- trigger: '#start_0',
- content: 'Give a date to the new event',
+ trigger: "#start_0",
+ content: "Give a date to the new event",
run: `text ${todayDate()}`,
},
{
- trigger: '.fa-cloud-upload',
- content: 'Save the new event',
- run: 'click',
+ trigger: ".fa-cloud-upload",
+ content: "Save the new event",
+ run: "click",
},
{
- trigger: '.o_back_button',
- content: 'Go back to Calendar view',
- run: 'click',
+ trigger: ".o_back_button",
+ content: "Go back to Calendar view",
+ run: "click",
},
{
trigger: '.dropdown-toggle:contains("Week")',
- content: 'Click to change calendar view',
- run: 'click',
+ content: "Click to change calendar view",
+ run: "click",
},
{
trigger: '.dropdown-item:contains("Month")',
- content: 'Change the calendar view to Month',
- run: 'click',
+ content: "Change the calendar view to Month",
+ run: "click",
},
{
- trigger: '.fc-day-header:contains("Monday")',
- content: 'Change the calendar view to week',
+ trigger: '.fc-day-header:contains("Mon")',
+ content: "Check the day is properly displayed",
},
{
trigger: '.fc-time:contains("10:00")',
- content: 'Check the time is properly displayed',
+ content: "Check the time is properly displayed",
},
{
trigger: '.o_event_title:contains("TEST EVENT")',
- content: 'Check the event title',
+ content: "Check the event title",
isCheck: true,
},
- ]});
+ ],
+});
- registry.category("web_tour.tours").add('test_calendar_delete_tour', {
- test: true,
- steps: () => [
+registry.category("web_tour.tours").add("test_calendar_delete_tour", {
+ test: true,
+ steps: () => [
{
- content: 'Select filter (everybody)',
+ content: "Select filter (everybody)",
trigger: 'div[data-value="all"] input',
},
{
- content: 'Click on the event (focus + waiting)',
+ content: "Click on the event (focus + waiting)",
trigger: 'a .fc-content:contains("Test Event")',
async run() {
$('a .fc-content:contains("Test Event")').click();
await new Promise((r) => setTimeout(r, 1000));
$('a .fc-content:contains("Test Event")').click();
- }
+ },
},
{
- content: 'Delete the event',
- trigger: '.o_cw_popover_delete',
+ content: "Delete the event",
+ trigger: ".o_cw_popover_delete",
},
{
- content: 'Validate the deletion',
- trigger:'button:contains("Delete")',
+ content: "Validate the deletion",
+ trigger: 'button:contains("Delete")',
async run() {
$('button:contains("Delete")').click();
await new Promise((r) => setTimeout(r, 1000));
- }
+ },
},
- ]});
-
- registry.category("web_tour.tours").add('test_calendar_decline_tour', {
- test: true,
- steps: () => [
+ ],
+});
+
+registry.category("web_tour.tours").add("test_calendar_decline_tour", {
+ test: true,
+ steps: () => [
{
- content: 'Click on the event (focus + waiting)',
+ content: "Click on the event (focus + waiting)",
trigger: 'a .fc-content:contains("Test Event")',
async run() {
$('a .fc-content:contains("Test Event")').click();
await new Promise((r) => setTimeout(r, 1000));
$('a .fc-content:contains("Test Event")').click();
- }
+ },
},
{
- content: 'Delete the event',
- trigger: '.o_cw_popover_delete',
+ content: "Delete the event",
+ trigger: ".o_cw_popover_delete",
},
{
- content: 'Wait declined status',
- trigger: '.o_attendee_status_declined',
+ content: "Wait declined status",
+ trigger: ".o_attendee_status_declined",
isCheck: true,
},
- ]});
-
- registry.category("web_tour.tours").add('test_calendar_decline_with_everybody_filter_tour', {
- test: true,
- steps: () => [
+ ],
+});
+
+registry.category("web_tour.tours").add("test_calendar_decline_with_everybody_filter_tour", {
+ test: true,
+ steps: () => [
{
- content: 'Select filter (everybody)',
+ content: "Select filter (everybody)",
trigger: 'div[data-value="all"] input',
},
{
- content: 'Click on the event (focus + waiting)',
+ content: "Click on the event (focus + waiting)",
trigger: 'a .fc-content:contains("Test Event")',
async run() {
$('a .fc-content:contains("Test Event")').click();
await new Promise((r) => setTimeout(r, 1000));
$('a .fc-content:contains("Test Event")').click();
- }
+ },
},
{
- content: 'Delete the event',
- trigger: '.o_cw_popover_delete',
+ content: "Delete the event",
+ trigger: ".o_cw_popover_delete",
},
{
- content: 'Select filter (everybody)',
+ content: "Select filter (everybody)",
trigger: 'div[data-value="all"] input',
},
{
- content: 'Wait declined status',
- trigger: '.o_attendee_status_declined',
+ content: "Wait declined status",
+ trigger: ".o_attendee_status_declined",
isCheck: true,
},
- ]});
+ ],
+});
diff --git a/addons/calendar/views/calendar_views.xml b/addons/calendar/views/calendar_views.xml
index 8b027fcf237..08c6adff3e0 100644
--- a/addons/calendar/views/calendar_views.xml
+++ b/addons/calendar/views/calendar_views.xml
@@ -126,111 +126,42 @@