91 lines
3.9 KiB
Python
91 lines
3.9 KiB
Python
# -*- coding: utf-8 -*-
|
|
# Part of Odoo. See LICENSE file for full copyright and licensing details.
|
|
|
|
from datetime import datetime, timedelta
|
|
|
|
from odoo import fields
|
|
from odoo.addons.event.tests.common import EventCase
|
|
from odoo.tests import Form
|
|
|
|
|
|
class TestWebsiteEventMeet(EventCase):
|
|
|
|
@classmethod
|
|
def setUpClass(cls):
|
|
super(TestWebsiteEventMeet, cls).setUpClass()
|
|
cls.event_0 = cls.env['event.event'].create({
|
|
'name': 'TestEvent',
|
|
'date_begin': fields.Datetime.to_string(datetime.today() + timedelta(days=1)),
|
|
'date_end': fields.Datetime.to_string(datetime.today() + timedelta(days=15)),
|
|
'date_tz': 'Europe/Brussels',
|
|
})
|
|
|
|
def test_meeting_room_create(self):
|
|
"""Test that the field of the mixin are automatically filled."""
|
|
new_meeting_room_form = Form(self.env["event.meeting.room"])
|
|
new_meeting_room_form.name = "Test name"
|
|
new_meeting_room_form.event_id = self.event_0
|
|
new_meeting_room_form.target_audience = "dev"
|
|
new_meeting_room_form.room_max_capacity = "20"
|
|
meeting_room = new_meeting_room_form.save()
|
|
|
|
self.assertTrue(meeting_room.chat_room_id)
|
|
self.assertEqual(meeting_room.chat_room_id.max_capacity, "20")
|
|
|
|
# Try to create a meeting room without filling the related field
|
|
# It must create the `chat.room` with the default value
|
|
meeting_room = self.env["event.meeting.room"].create({
|
|
"name": "Test 2",
|
|
"event_id": self.event_0.id,
|
|
"target_audience": "dev"
|
|
})
|
|
self.assertTrue(meeting_room.chat_room_id)
|
|
self.assertTrue(meeting_room.chat_room_id.name)
|
|
self.assertEqual(meeting_room.chat_room_id.max_capacity, "8")
|
|
# Ensure default value for room_max_capacity in event.meeting.room
|
|
self.assertEqual(meeting_room.room_max_capacity, "8")
|
|
|
|
def test_meeting_room_copy(self):
|
|
"""Test the duplication of the meeting room."""
|
|
meeting_room_1 = self.env["event.meeting.room"].create({
|
|
"name": "Test meeting room",
|
|
"event_id": self.event_0.id,
|
|
"target_audience": "dev",
|
|
"room_max_capacity": "20",
|
|
})
|
|
self.assertEqual(meeting_room_1.room_name, 'odoo-room-test-meeting-room')
|
|
meeting_room_2 = meeting_room_1.copy()
|
|
self.assertEqual(meeting_room_2.room_name, 'odoo-room-test-meeting-room-1')
|
|
|
|
chat_room_1 = meeting_room_1.chat_room_id
|
|
chat_room_2 = meeting_room_2.chat_room_id
|
|
|
|
self.assertTrue(chat_room_1)
|
|
self.assertTrue(chat_room_2)
|
|
self.assertNotEqual(chat_room_1.id, chat_room_2.id, "Must create a new chat room")
|
|
self.assertNotEqual(chat_room_1.name, chat_room_2.name, "Must generate a new chat room name")
|
|
self.assertEqual(chat_room_1.max_capacity, "20", "Must set the max capacity on the chat room")
|
|
self.assertEqual(chat_room_2.max_capacity, "20", "Must copy the max capacity")
|
|
|
|
meeting_room_3 = meeting_room_1.copy()
|
|
self.assertEqual(meeting_room_3.room_name, 'odoo-room-test-meeting-room-2')
|
|
# Ensure room_max_capacity is copied to new meeting room
|
|
self.assertEqual(meeting_room_3.room_max_capacity, "20")
|
|
# Ensure max_capacity in linked chat room is same
|
|
self.assertEqual(meeting_room_3.chat_room_id.max_capacity, "20")
|
|
|
|
def test_meeting_room_unlink(self):
|
|
"""Test the duplication of the meeting room."""
|
|
meeting_room = self.env["event.meeting.room"].create({
|
|
"name": "Test meeting room",
|
|
"event_id": self.event_0.id,
|
|
"target_audience": "dev",
|
|
"room_max_capacity": "20",
|
|
})
|
|
|
|
self.assertTrue(meeting_room.chat_room_id)
|
|
chat_room_id = meeting_room.chat_room_id.id
|
|
|
|
meeting_room.unlink()
|
|
self.assertFalse(self.env["chat.room"].browse(chat_room_id).exists())
|