backend: enhance room API tests to validate extra fields in responses

This commit is contained in:
CSantosM 2026-02-12 16:03:28 +01:00
parent f6dd80e8eb
commit 5c80387244
3 changed files with 23 additions and 5 deletions

View File

@ -8,7 +8,7 @@ import {
MeetRoomDeletionSuccessCode,
MeetRoomStatus
} from '@openvidu-meet/typings';
import { expectValidRoom } from '../../../helpers/assertion-helpers.js';
import { expectExtraFieldsInResponse, expectValidRoom } from '../../../helpers/assertion-helpers.js';
import {
bulkDeleteRooms,
createRoom,
@ -220,6 +220,7 @@ describe('Room API Tests', () => {
MeetRoomStatus.ACTIVE_MEETING,
MeetingEndAction.DELETE
);
expectExtraFieldsInResponse(successfulRoom2.room);
const successfulRoom3 = response.body.successful.find(
(r: { roomId: string; successCode: MeetRoomDeletionSuccessCode; message: string; room?: MeetRoom }) =>
r.room?.roomId === room3.roomId
@ -234,6 +235,8 @@ describe('Room API Tests', () => {
MeetRoomStatus.ACTIVE_MEETING,
MeetingEndAction.CLOSE
);
expectExtraFieldsInResponse(successfulRoom3.room);
const successfulRoom4 = response.body.successful.find(
(r: { roomId: string; successCode: MeetRoomDeletionSuccessCode; message: string; room?: MeetRoom }) =>
r.room?.roomId === room4.roomId
@ -248,6 +251,7 @@ describe('Room API Tests', () => {
MeetRoomStatus.CLOSED,
MeetingEndAction.NONE
);
expectExtraFieldsInResponse(successfulRoom4.room);
});
});

View File

@ -7,7 +7,11 @@ import {
MeetRoomDeletionSuccessCode,
MeetRoomStatus
} from '@openvidu-meet/typings';
import { expectSuccessListRecordingResponse, expectValidRoom } from '../../../helpers/assertion-helpers.js';
import {
expectExtraFieldsInResponse,
expectSuccessListRecordingResponse,
expectValidRoom
} from '../../../helpers/assertion-helpers.js';
import {
createRoom,
deleteAllRecordings,
@ -41,6 +45,7 @@ describe('Room API Tests', () => {
const response = await deleteRoom(roomId);
expect(response.status).toBe(200);
expect(response.body).toHaveProperty('successCode', MeetRoomDeletionSuccessCode.ROOM_DELETED);
expect(response.body).not.toHaveProperty('room');
// Check room is deleted
const getResponse = await getRoom(roomId);
@ -70,6 +75,7 @@ describe('Room API Tests', () => {
'successCode',
MeetRoomDeletionSuccessCode.ROOM_WITH_ACTIVE_MEETING_DELETED
);
expect(response.body).not.toHaveProperty('room');
// Check room is deleted
const getResponse = await getRoom(roomId);
@ -95,6 +101,7 @@ describe('Room API Tests', () => {
MeetRoomStatus.ACTIVE_MEETING,
MeetingEndAction.DELETE
);
expectExtraFieldsInResponse(response.body.room);
// End meeting and check the room is deleted
await endMeeting(roomId, moderatorToken);
@ -130,6 +137,7 @@ describe('Room API Tests', () => {
'successCode',
MeetRoomDeletionSuccessCode.ROOM_AND_RECORDINGS_DELETED
);
expect(response.body).not.toHaveProperty('room');
// Check the room and recordings are deleted
const roomResponse = await getRoom(roomId);
@ -144,7 +152,7 @@ describe('Room API Tests', () => {
});
expect(response.status).toBe(200);
expect(response.body).toHaveProperty('successCode', MeetRoomDeletionSuccessCode.ROOM_CLOSED);
expect(response.body).toHaveProperty('room');
// Check that the room is closed and recordings are not deleted
expectValidRoom(
response.body.room,
@ -156,6 +164,7 @@ describe('Room API Tests', () => {
MeetRoomStatus.CLOSED,
MeetingEndAction.NONE
);
expectExtraFieldsInResponse(response.body.room);
const recordingsResponse = await getAllRecordings({ roomId, maxItems: 1 });
expectSuccessListRecordingResponse(recordingsResponse, 1, false, false, 1);
@ -193,6 +202,7 @@ describe('Room API Tests', () => {
'successCode',
MeetRoomDeletionSuccessCode.ROOM_WITH_ACTIVE_MEETING_AND_RECORDINGS_DELETED
);
expect(response.body).not.toHaveProperty('room');
// Check the room and recordings are deleted
const roomResponse = await getRoom(roomId);
@ -221,6 +231,7 @@ describe('Room API Tests', () => {
MeetRoomStatus.ACTIVE_MEETING,
MeetingEndAction.CLOSE
);
expectExtraFieldsInResponse(response.body.room);
// Check that the room is closed and recordings are not deleted
const roomResponse = await getRoom(roomId);
@ -272,6 +283,7 @@ describe('Room API Tests', () => {
MeetRoomStatus.ACTIVE_MEETING,
MeetingEndAction.DELETE
);
expectExtraFieldsInResponse(response.body.room);
// End meeting and check the room and recordings are deleted
await endMeeting(roomId, moderatorToken);
@ -301,6 +313,7 @@ describe('Room API Tests', () => {
MeetRoomStatus.ACTIVE_MEETING,
MeetingEndAction.CLOSE
);
expectExtraFieldsInResponse(response.body.room);
// End meeting and check that the room is closed and recordings are not deleted
await endMeeting(roomId, moderatorToken);

View File

@ -38,7 +38,7 @@ describe('Room API Tests', () => {
const response = await getRooms();
expectSuccessRoomsResponse(response, 1, 10, false, false);
expectValidRoom(response.body.rooms[0], 'test-room', 'test_room');
expectExtraFieldsInResponse(response.body.rooms[0]);
expectExtraFieldsInResponse(response.body);
});
it('should return a list of rooms applying fields filter', async () => {
@ -53,7 +53,7 @@ describe('Room API Tests', () => {
expectSuccessRoomsResponse(response, 1, 10, false, false);
expectValidRoomWithFields(rooms[0], ['roomId', 'creationDate']);
expectExtraFieldsInResponse(rooms[0]);
expectExtraFieldsInResponse(response.body);
});
it('should return a list of rooms applying roomName filter', async () => {
@ -71,6 +71,7 @@ describe('Room API Tests', () => {
expectSuccessRoomsResponse(response, 1, 10, false, false);
expectValidRoom(rooms[0], 'test-room');
expectExtraFieldsInResponse(response.body);
});
it('should return a list of rooms applying status filter', async () => {