mirror of
https://github.com/bringout/oca-ocb-core.git
synced 2026-04-20 08:52:08 +02:00
vanilla 19.0
This commit is contained in:
parent
991d2234ca
commit
d1963a3c3a
3066 changed files with 1651266 additions and 922560 deletions
|
|
@ -0,0 +1,123 @@
|
|||
import { registry } from "@web/core/registry";
|
||||
|
||||
registry.category("web_tour.tours").add("test_favorite_management", {
|
||||
url: "/odoo/apps",
|
||||
steps: () => [
|
||||
{
|
||||
trigger:
|
||||
".o_kanban_renderer:not(:has(.o_kanban_record:contains(France - Localizations)))",
|
||||
},
|
||||
{
|
||||
trigger: ".o_facet_remove",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
trigger: ".o_kanban_renderer:has(.o_kanban_record:contains(France - Localizations))",
|
||||
},
|
||||
{
|
||||
trigger: ".o_searchview_dropdown_toggler",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
trigger: ".o_favorite_menu .o_accordion > .o_menu_item",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
trigger: ".o_favorite_menu .o_accordion_values .o_input",
|
||||
run: "edit Apps1",
|
||||
},
|
||||
{
|
||||
trigger: ".o_save_favorite",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
trigger: ".o_searchview_facet .o_facet_value:contains(Apps1)",
|
||||
},
|
||||
{
|
||||
trigger: ".o_group_by_menu > .o-dropdown-item:contains(Category)",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
trigger: ".o_kanban_header:contains(Account Charts)",
|
||||
},
|
||||
{
|
||||
trigger: ".o_favorite_menu .o_accordion_values .o_input",
|
||||
run: "edit Apps2",
|
||||
},
|
||||
{
|
||||
trigger: ".o_save_favorite",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
trigger: ".o_favorite_menu .o-dropdown-item:contains(Apps2)",
|
||||
},
|
||||
{
|
||||
trigger: ".o_favorite_menu .o-dropdown-item:contains(Apps1) i:not(:visible)",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
trigger: ".o_field_domain > div > div",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
trigger: ".o_tree_editor_row:contains(New Rule) > a",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
trigger: ".o_form_button_save",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
trigger: ".o_back_button > a",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
trigger: ".o_facet_values:contains('Apps2')",
|
||||
},
|
||||
{
|
||||
trigger: ".o_kanban_header:contains(Account Charts)",
|
||||
},
|
||||
{
|
||||
trigger: ".o_searchview_dropdown_toggler",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
trigger: ".o_favorite_menu .o-dropdown-item:contains(Apps1)",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
trigger: ".o_kanban_record:not(.o_kanban_ghost):only",
|
||||
},
|
||||
{
|
||||
trigger: ".o_favorite_menu .o-dropdown-item:contains(Apps1) i:not(:visible)",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
trigger: ".o_form_view .o_cp_action_menus .o-dropdown",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
trigger: ".o_popover > .o-dropdown-item:contains(Delete)",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
trigger: ".o_technical_modal button:contains(Delete)",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
trigger: ".o_searchview_dropdown_toggler",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
trigger: ".o_favorite_menu .o-dropdown-item:contains(Apps2)",
|
||||
},
|
||||
{
|
||||
content: "There should not be any facet inside the search bar",
|
||||
trigger: "body:not(:has(.o_searchview_facet))",
|
||||
},
|
||||
{
|
||||
content: "The Apps1 filter should be deleted",
|
||||
trigger: "body:not(:has(.o_favorite_menu .o-dropdown-item:contains(Apps1)))",
|
||||
},
|
||||
],
|
||||
});
|
||||
|
|
@ -0,0 +1,147 @@
|
|||
import { registry } from "@web/core/registry";
|
||||
|
||||
registry.category("web_tour.tours").add("test_user_group_settings", {
|
||||
url: "/odoo/settings?debug=assets,tests",
|
||||
steps: () => [
|
||||
// create new privileges
|
||||
{
|
||||
trigger: 'button[data-menu-xmlid="base.menu_users"]',
|
||||
content: "open user menu",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
trigger: 'a[data-menu-xmlid="base.menu_action_res_groups_privilege"]',
|
||||
content: "open privilege menu",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
trigger: 'th.o_group_name:contains("Master Data")',
|
||||
},
|
||||
{
|
||||
trigger: "button.o_list_button_add",
|
||||
content: "click on new button",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
trigger: '.o_field_char[name="name"] input',
|
||||
content: "insert a privilege name",
|
||||
run: "edit Privi Foo",
|
||||
},
|
||||
{
|
||||
trigger: ".o_field_x2many_list_row_add a",
|
||||
content: "add groups (open modal)",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
trigger: ".o_create_button",
|
||||
content: "create the first group",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
trigger: '.o_field_char[name="name"] input[placeholder="Group Name"]',
|
||||
content: "insert the first group name",
|
||||
run: "edit Bar User",
|
||||
},
|
||||
{
|
||||
trigger: "footer .o_form_button_save_new",
|
||||
content: "create the second group",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
trigger: "body .o_notebook_content:contains(bar user)",
|
||||
},
|
||||
{
|
||||
trigger: '.o_field_char[name="name"] input[placeholder="Group Name"]',
|
||||
content: "insert the second group name",
|
||||
run: "edit Bar Manager",
|
||||
},
|
||||
{
|
||||
trigger: 'a[name="inherit_groups"]',
|
||||
content: "get implied groups",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
trigger: 'div[name="implied_ids"] .o_field_x2many_list_row_add a',
|
||||
content: "switch to implied",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
trigger: ".o_searchview_input",
|
||||
content: "search 'Bar' groups",
|
||||
run: "edit Bar",
|
||||
},
|
||||
{
|
||||
trigger: ".o_searchview_autocomplete .o-dropdown-item.focus",
|
||||
content: "Validate search",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
trigger: '.o_data_cell:contains("Bar User"):last',
|
||||
content: "click to implied group 'Bar User'",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
trigger: "footer .o_form_button_save",
|
||||
content: "save group and close modal",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
trigger:
|
||||
"body:not(:has(.modal:visible)) .o_notebook_content:contains(bar user):contains(bar manager)",
|
||||
},
|
||||
// and the new manager group to the demo user
|
||||
{
|
||||
trigger: 'button[data-menu-xmlid="base.menu_users"]',
|
||||
content: "open user menu",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
trigger: 'a[data-menu-xmlid="base.menu_action_res_users"]',
|
||||
content: "open users & companies menu",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
trigger: ".o_list_renderer:contains(marc demo):contains(mitchell admin)",
|
||||
},
|
||||
{
|
||||
trigger: '.o_data_row:contains(Marc Demo) .o_field_cell[name="name"]',
|
||||
content: "open users menu",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
trigger: '.o_last_breadcrumb_item:contains("Marc Demo")',
|
||||
content: "check if is demo user",
|
||||
},
|
||||
{
|
||||
trigger:
|
||||
'.o_field_widget[name="group_ids"] .o_cell:has(label:contains("Privi Foo")) + .o_cell .o_select_menu input',
|
||||
content: "Add 'Bar Manager' access to demo user",
|
||||
run: `click`,
|
||||
},
|
||||
{
|
||||
trigger: `.o-dropdown--menu .o_select_menu_item:contains("Bar Manager")`,
|
||||
run: "click",
|
||||
},
|
||||
// open group information button (popover)
|
||||
{
|
||||
trigger:
|
||||
'.o_field_widget[name="group_ids"] .o_cell:has(label:contains("Privi Foo")) + .o_cell .o_group_info_button',
|
||||
content: "open group information for the new group",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
trigger: '.o_popover:contains("Privi Foo") a:contains("Bar Manager")',
|
||||
content: "open the group from the info button",
|
||||
run: "click",
|
||||
},
|
||||
// check if demo user has this group
|
||||
{
|
||||
trigger: '.o_last_breadcrumb_item:contains("Bar Manager")',
|
||||
content: "check if is Bar Manager group",
|
||||
},
|
||||
{
|
||||
trigger: '.o_field_many2many[name="user_ids"] .o_data_cell:contains("Marc Demo")',
|
||||
content: "check if demo user has this group",
|
||||
},
|
||||
],
|
||||
});
|
||||
|
|
@ -0,0 +1,173 @@
|
|||
import { registry } from "@web/core/registry";
|
||||
import { WORKER_STATE } from "@bus/workers/websocket_worker";
|
||||
import { whenReady } from "@odoo/owl";
|
||||
|
||||
function logout() {
|
||||
return [
|
||||
{
|
||||
trigger: ".o_web_client .o_navbar",
|
||||
async run() {
|
||||
await whenReady();
|
||||
await new Promise((resolve) => requestAnimationFrame(resolve));
|
||||
await new Promise((resolve) => {
|
||||
const bus = odoo.__WOWL_DEBUG__.root.env.services.bus_service;
|
||||
bus.addEventListener("BUS:CONNECT", resolve, { once: true });
|
||||
if (bus.workerState === WORKER_STATE.CONNECTED) {
|
||||
resolve();
|
||||
}
|
||||
});
|
||||
},
|
||||
},
|
||||
{
|
||||
content: "check we're logged in",
|
||||
trigger: ".o_user_menu .dropdown-toggle",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
content: "click the Log out button",
|
||||
trigger: ".dropdown-item[data-menu=logout]",
|
||||
run: "click",
|
||||
expectUnloadPage: true,
|
||||
},
|
||||
{
|
||||
// Wait and check we are logged out
|
||||
// o_database_list is used in the case website is not installed and only portal is.
|
||||
trigger: ".oe_website_login_container, .o_database_list",
|
||||
},
|
||||
];
|
||||
}
|
||||
|
||||
registry.category("web_tour.tours").add("test_user_switch", {
|
||||
url: "/odoo",
|
||||
steps: () => [
|
||||
...logout(),
|
||||
{
|
||||
content: "check if the login input is empty",
|
||||
trigger: "input#login:empty",
|
||||
},
|
||||
{
|
||||
content: "check if the password input is empty",
|
||||
trigger: "input#password:empty",
|
||||
},
|
||||
{
|
||||
content: "Should contains the user switch button",
|
||||
trigger: ".oe_login_form .o_user_switch_btn",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
content: "Click on Marc Demo on the quick login page",
|
||||
trigger:
|
||||
".o_user_switch:not(:has(.list-group-item:nth-child(2))) .list-group-item:contains('Marc Demo')",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
content: "Check user choice button to back on the quick login page",
|
||||
trigger: ".oe_login_form .o_user_switch_btn",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
content: "Display the login form",
|
||||
trigger: ".o_user_switch .fa-user-circle-o",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
content: "fill the login",
|
||||
trigger: "input#login",
|
||||
run: "edit admin",
|
||||
},
|
||||
{
|
||||
content: "fill the password",
|
||||
trigger: "input#password",
|
||||
run: "edit admin",
|
||||
},
|
||||
{
|
||||
content: "click on login button",
|
||||
trigger: 'button:contains("Log in")',
|
||||
run: "click",
|
||||
expectUnloadPage: true,
|
||||
},
|
||||
...logout(),
|
||||
{
|
||||
content: "Check if there is Mitchell Admin in user list selection",
|
||||
trigger: ".o_user_switch .list-group-item:nth-child(1):contains('Mitchell Admin')",
|
||||
},
|
||||
{
|
||||
content: "Check if there is Marc Demo in user list selection",
|
||||
trigger: ".o_user_switch .list-group-item:nth-child(2):contains('Marc Demo')",
|
||||
},
|
||||
{
|
||||
content: "Choice demo",
|
||||
trigger: ".o_user_switch .list-group-item:contains('Marc Demo')",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
content: "check the login for demo",
|
||||
trigger: "input#login:value('demo')",
|
||||
},
|
||||
{
|
||||
content: "fill the password",
|
||||
trigger: "input#password",
|
||||
run: "edit demo",
|
||||
},
|
||||
{
|
||||
content: "Check back button to back on the quick login page",
|
||||
trigger: ".oe_login_form .o_user_switch_btn",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
content: "Check have 2 users",
|
||||
trigger: ".o_user_switch .list-group-item:nth-child(2)",
|
||||
},
|
||||
{
|
||||
content: "Click on Mitchell Admin",
|
||||
trigger: ".o_user_switch .list-group-item:nth-child(1):contains('Mitchell Admin')",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
content: "check the login for admin",
|
||||
trigger: "input#login:value('admin')",
|
||||
},
|
||||
{
|
||||
content: "fill the password",
|
||||
trigger: "input#password",
|
||||
run: "edit admin",
|
||||
},
|
||||
{
|
||||
content: "Check back button to back on the quick login page",
|
||||
trigger: ".oe_login_form .o_user_switch_btn",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
content: "Display the login form",
|
||||
trigger: ".o_user_switch .fa-user-circle-o",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
content: "the login form is display",
|
||||
trigger: "form.oe_login_form:not(.d-none)",
|
||||
},
|
||||
{
|
||||
content: "check if the login input is empty",
|
||||
trigger: "input#login:empty",
|
||||
},
|
||||
{
|
||||
content: "check if the password input is empty",
|
||||
trigger: "input#password:empty",
|
||||
},
|
||||
{
|
||||
content: "Back to user switch",
|
||||
trigger: ".oe_login_form .o_user_switch_btn",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
content: "Remove the admin user from page",
|
||||
trigger: ".o_user_switch .d-flex:first-child .fa-times",
|
||||
run: "click",
|
||||
},
|
||||
{
|
||||
content: "only one user is left on quick login",
|
||||
trigger:
|
||||
".o_user_switch:not(:has(.list-group-item:nth-child(2))) .list-group-item:contains('Marc Demo')",
|
||||
},
|
||||
],
|
||||
});
|
||||
Loading…
Add table
Add a link
Reference in a new issue