From 2d7b76a44ef49a2ada99c4162077c90083eee6f0 Mon Sep 17 00:00:00 2001 From: Marc Durepos Date: Thu, 15 Jun 2023 17:00:41 -0400 Subject: [PATCH] bemade_fsm: First functional test written for creating equipment linked to a client. Ref #11. --- static/tests/tours/task_equipment_tour.js | 12 ++++++++---- tests/test_bemade_fsm_common.py | 21 ++++++++++----------- 2 files changed, 18 insertions(+), 15 deletions(-) diff --git a/static/tests/tours/task_equipment_tour.js b/static/tests/tours/task_equipment_tour.js index e36b2cd..bf2fa16 100644 --- a/static/tests/tours/task_equipment_tour.js +++ b/static/tests/tours/task_equipment_tour.js @@ -5,15 +5,16 @@ import tour from 'web_tour.tour'; tour.register('task_equipment_tour', { test: true, url: '/web', -}, [tour.stepUtils.showAppsMenuItem(), { +}, /* Create a new "Test Equipment" and link it to "Test Partner Company" */ + [tour.stepUtils.showAppsMenuItem(), { content: 'Navigate to the Service menu', trigger: '.o_app[data-menu-xmlid="industry_fsm.fsm_menu_root"]', }, { content: 'Navigate to the Clients submenu', - trigger: '.o_app[data-menu-xmlid="bemade_fsm.menu_service_client"]', + trigger: 'button.dropdown-toggle[data-menu-xmlid="bemade_fsm.menu_service_client"]', }, { content: 'Navigate to the Equipment menu', - trigger: '.o_app[data-menu-xmlid="bemade_fsm.menu_service_client_equipment"]', + trigger: '.dropdown-item[data-menu-xmlid="bemade_fsm.menu_service_client_equipment"]', }, { content: 'Click the create button', trigger: '.o_list_button_add', @@ -28,11 +29,14 @@ tour.register('task_equipment_tour', { run: 'text Test Tag Name', }, { content: 'Set the partner', - trigger: 'input[id="o_field_input_303"]', + trigger: 'div[name="partner_location_id"] div div input', run: 'text Test Partner Company', }, { content: 'Click the partner in the dropdown', trigger: 'li a.dropdown-item:contains(Test Partner Company)', +}, { + content: 'Save', + trigger: 'button.o_form_button_save', } // Fill in the required fields, including creating a new Client Location and PID Tag // Navigate to the client location, then to the client, making sure that the equipment and client location links appear diff --git a/tests/test_bemade_fsm_common.py b/tests/test_bemade_fsm_common.py index ecd334a..47942ac 100644 --- a/tests/test_bemade_fsm_common.py +++ b/tests/test_bemade_fsm_common.py @@ -1,5 +1,5 @@ from odoo.tests.common import TransactionCase - +from odoo import Command class FSMManagerUserTransactionCase(TransactionCase): @@ -15,15 +15,15 @@ class FSMManagerUserTransactionCase(TransactionCase): user_group_sales_user = cls.env.ref('sales_team.group_sale_salesman') user_product_customer = cls.env.ref('customer_product_code.group_product_customer_code_user') - group_ids = [user_group_employee, - user_group_project_user, - user_group_project_manager, - user_group_fsm_user, - user_group_fsm_manager, - user_group_sales_user, - user_group_sales_manager, ] + group_ids = [user_group_employee.id, + user_group_project_user.id, + user_group_project_manager.id, + user_group_fsm_user.id, + user_group_fsm_manager.id, + user_group_sales_user.id, + user_group_sales_manager.id, ] if user_product_customer: - group_ids.append(user_product_customer) + group_ids.append(user_product_customer.id) # Test user with project access rights for the various tests Users = cls.env['res.users'].with_context({'no_reset_password': True}) @@ -33,6 +33,5 @@ class FSMManagerUserTransactionCase(TransactionCase): 'password': 'misterpm', 'email': 'mrpm@testco.com', 'signature': 'Mr. PM', - 'groups_id': [(6, 0, [user_group_employee.id, user_group_project_user.id, user_group_project_manager.id, - user_group_sales_user.id])], + 'groups_id': [Command.set(group_ids)], })