mirror of
https://github.com/bringout/oca-ocb-vertical-industry.git
synced 2026-04-21 20:12:07 +02:00
19.0 vanilla
This commit is contained in:
parent
4607ccbd2e
commit
825ff6514e
487 changed files with 184979 additions and 195262 deletions
|
|
@ -4,20 +4,74 @@ from odoo.tests import common, new_test_user
|
|||
|
||||
|
||||
class TestFleet(common.TransactionCase):
|
||||
@classmethod
|
||||
def setUpClass(cls):
|
||||
super().setUpClass()
|
||||
|
||||
cls.manager = new_test_user(cls.env, "test fleet manager", groups="fleet.fleet_group_manager,base.group_partner_manager")
|
||||
cls.user = new_test_user(cls.env, "test base user", groups="base.group_user")
|
||||
cls.car_brand, cls.bike_brand = cls.env["fleet.vehicle.model.brand"].create([
|
||||
{"name": "Audi"},
|
||||
{"name": "Nakamura"},
|
||||
])
|
||||
cls.car_model, cls.bike_model = cls.env["fleet.vehicle.model"].create([
|
||||
{
|
||||
"brand_id": cls.car_brand.id,
|
||||
"name": "A3",
|
||||
},
|
||||
{
|
||||
"brand_id": cls.bike_brand.id,
|
||||
"name": "Crossover xv",
|
||||
"vehicle_type": "bike",
|
||||
},
|
||||
])
|
||||
|
||||
def test_manager_create_vehicle(self):
|
||||
manager = new_test_user(self.env, "test fleet manager", groups="fleet.fleet_group_manager,base.group_partner_manager")
|
||||
user = new_test_user(self.env, "test base user", groups="base.group_user")
|
||||
brand = self.env["fleet.vehicle.model.brand"].create({
|
||||
"name": "Audi",
|
||||
})
|
||||
model = self.env["fleet.vehicle.model"].create({
|
||||
"brand_id": brand.id,
|
||||
"name": "A3",
|
||||
})
|
||||
car = self.env["fleet.vehicle"].with_user(manager).create({
|
||||
"model_id": model.id,
|
||||
"driver_id": user.partner_id.id,
|
||||
car = self.env["fleet.vehicle"].with_user(self.manager).create({
|
||||
"model_id": self.car_model.id,
|
||||
"driver_id": self.user.partner_id.id,
|
||||
"plan_to_change_car": False
|
||||
})
|
||||
car.with_user(manager).plan_to_change_car = True
|
||||
car.with_user(self.manager).plan_to_change_car = True
|
||||
|
||||
def test_change_future_driver(self):
|
||||
car1, car2, bike1, bike2 = self.env["fleet.vehicle"].create([
|
||||
{
|
||||
"model_id": self.car_model.id,
|
||||
"driver_id": self.user.partner_id.id,
|
||||
"plan_to_change_car": False,
|
||||
},
|
||||
{
|
||||
"model_id": self.car_model.id,
|
||||
"driver_id": self.manager.partner_id.id,
|
||||
"plan_to_change_car": False,
|
||||
},
|
||||
{
|
||||
"model_id": self.bike_model.id,
|
||||
"driver_id": self.user.partner_id.id,
|
||||
"plan_to_change_car": False,
|
||||
},
|
||||
{
|
||||
"model_id": self.bike_model.id,
|
||||
"driver_id": self.manager.partner_id.id,
|
||||
"plan_to_change_car": False,
|
||||
},
|
||||
])
|
||||
self.assertFalse(car1.future_driver_id)
|
||||
self.assertFalse(bike1.future_driver_id)
|
||||
self.assertFalse(car1.plan_to_change_car)
|
||||
self.assertFalse(bike1.plan_to_change_bike)
|
||||
self.assertFalse(car2.future_driver_id)
|
||||
self.assertFalse(bike2.future_driver_id)
|
||||
self.assertFalse(car2.plan_to_change_car)
|
||||
self.assertFalse(bike2.plan_to_change_bike)
|
||||
|
||||
(car1 + bike1).write({"future_driver_id": self.manager.partner_id.id})
|
||||
self.assertEqual(car1.future_driver_id, self.manager.partner_id)
|
||||
self.assertEqual(bike1.future_driver_id, self.manager.partner_id)
|
||||
self.assertFalse(bike1.plan_to_change_bike)
|
||||
self.assertFalse(car1.plan_to_change_car)
|
||||
self.assertFalse(car2.future_driver_id)
|
||||
self.assertFalse(bike2.future_driver_id)
|
||||
self.assertTrue(car2.plan_to_change_car)
|
||||
self.assertTrue(bike2.plan_to_change_bike)
|
||||
|
|
|
|||
|
|
@ -43,3 +43,35 @@ class TestFleet(common.TransactionCase):
|
|||
})
|
||||
res = self.env["fleet.vehicle"].search([('contract_renewal_overdue', '=', True), ('id', '=', car_1.id)])
|
||||
self.assertEqual(res, car_1)
|
||||
|
||||
def test_exclude_resolved_vehicles_from_overdue(self):
|
||||
"""
|
||||
if there is an expired contract for the car, but it also has an open contract
|
||||
it should not be considered overdue
|
||||
"""
|
||||
user = new_test_user(self.env, "test base user", groups="base.group_user")
|
||||
brand = self.env["fleet.vehicle.model.brand"].create({
|
||||
"name": "Audi",
|
||||
})
|
||||
model = self.env["fleet.vehicle.model"].create({
|
||||
"brand_id": brand.id,
|
||||
"name": "A3",
|
||||
})
|
||||
car_1 = self.env["fleet.vehicle"].create({
|
||||
"model_id": model.id,
|
||||
"driver_id": user.partner_id.id,
|
||||
"plan_to_change_car": False
|
||||
})
|
||||
|
||||
Log = self.env['fleet.vehicle.log.contract']
|
||||
Log.create({
|
||||
'vehicle_id': car_1.id,
|
||||
'expiration_date': fields.Date.add(fields.Date.today(), days=-2)
|
||||
})
|
||||
Log.create({
|
||||
'vehicle_id': car_1.id,
|
||||
'expiration_date': fields.Date.add(fields.Date.today(), days=365)
|
||||
})
|
||||
|
||||
res = self.env["fleet.vehicle"].search([('contract_renewal_overdue', '=', True), ('id', '=', car_1.id)])
|
||||
self.assertFalse(res)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue