57 lines
2 KiB
Python
57 lines
2 KiB
Python
from odoo.tests.common import HttpCase, tagged
|
|
from .test_bemade_fsm_common import FSMManagerUserTransactionCase
|
|
from odoo import Command
|
|
from odoo.exceptions import MissingError
|
|
|
|
|
|
@tagged("-at_install", "post_install")
|
|
class TestEquipmentCommon(FSMManagerUserTransactionCase):
|
|
|
|
@classmethod
|
|
def setUpClass(cls):
|
|
super().setUpClass()
|
|
|
|
# Set up the test partner
|
|
cls.partner_company = cls.env['res.partner'].create({
|
|
'name': 'Test Partner Company',
|
|
'company_type': 'company',
|
|
'street': '123 Street St.',
|
|
'city': 'Montreal',
|
|
'state_id': cls.env['res.country.state'].search([('name', 'ilike', 'Quebec%')]).id,
|
|
'country_id': cls.env['res.country'].search([('name', '=', 'Canada')]).id
|
|
})
|
|
|
|
cls.partner_contact = cls.env['res.partner'].create({
|
|
'name': 'Site Contact',
|
|
'company_type': 'person',
|
|
'parent_id': cls.partner_company.id,
|
|
})
|
|
|
|
cls.equipment = cls.env['bemade_fsm.equipment'].create({
|
|
'name': 'Test Equipment 1',
|
|
'partner_location_id': cls.partner_company.id,
|
|
})
|
|
|
|
|
|
@tagged('-at_install', 'post_install')
|
|
class TestEquipmentBase(TestEquipmentCommon):
|
|
|
|
def test_crd(self):
|
|
# Just make sure the basic ORM stuff is OK
|
|
self.assertTrue(self.equipment in self.partner_company.equipment_ids)
|
|
self.assertTrue(len(self.partner_company.equipment_ids) == 1)
|
|
self.partner_company.write({'equipment_ids': [Command.set([])]})
|
|
# Delete should cascade
|
|
with self.assertRaises(MissingError):
|
|
self.equipment.name
|
|
|
|
|
|
@tagged('-at_install', 'post_install')
|
|
class TestEquipmentTours(HttpCase, TestEquipmentCommon):
|
|
|
|
def test_equipment_base_tour(self):
|
|
self.start_tour('/web', 'equipment_base_tour',
|
|
login=self.user.login, )
|
|
|
|
def test_equipment_sale_order_tour(self):
|
|
self.start_tour('/web', 'equipment_sale_order_tour', login=self.user.login)
|