1
1
/*
2
- * Copyright 2024 LiveKit, Inc.
2
+ * Copyright 2024-2025 LiveKit, Inc.
3
3
*
4
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
5
* you may not use this file except in compliance with the License.
@@ -18,6 +18,8 @@ package io.livekit.server
18
18
19
19
import io.livekit.server.okhttp.OkHttpFactory
20
20
import livekit.LivekitModels
21
+ import java.util.UUID
22
+ import kotlin.test.AfterTest
21
23
import kotlin.test.BeforeTest
22
24
import kotlin.test.Ignore
23
25
import kotlin.test.Test
@@ -31,59 +33,68 @@ class RoomServiceClientTest {
31
33
const val HOST = TestConstants .HOST
32
34
const val KEY = TestConstants .KEY
33
35
const val SECRET = TestConstants .SECRET
34
-
35
- const val ROOM_NAME = " room_name"
36
- const val METADATA = " metadata"
37
36
}
38
37
39
38
lateinit var client: RoomServiceClient
39
+ lateinit var roomName: String
40
40
41
41
@BeforeTest
42
42
fun setup () {
43
43
client = RoomServiceClient .createClient(HOST , KEY , SECRET , OkHttpFactory (true , null ))
44
+ roomName = " test_room_${UUID .randomUUID()} "
45
+ }
46
+
47
+ @AfterTest
48
+ fun cleanup () {
49
+ try {
50
+ client.deleteRoom(roomName).execute()
51
+ } catch (e: Exception ) {
52
+ // Ignore cleanup errors
53
+ }
44
54
}
45
55
46
56
@Test
47
57
fun createRoom () {
58
+ val metadata = " metadata"
48
59
val response = client.createRoom(
49
- name = ROOM_NAME ,
50
- metadata = METADATA ,
60
+ name = roomName ,
61
+ metadata = metadata ,
51
62
).execute()
52
63
val room = response.body()
53
64
54
65
assertTrue(response.isSuccessful)
55
- assertEquals(ROOM_NAME , room?.name)
56
- assertEquals(METADATA , room?.metadata)
66
+ assertEquals(roomName , room?.name)
67
+ assertEquals(metadata , room?.metadata)
57
68
}
58
69
59
70
@Test
60
71
fun listRooms () {
61
- client.createRoom(ROOM_NAME ).execute()
72
+ client.createRoom(roomName ).execute()
62
73
val response = client.listRooms(null ).execute()
63
74
val rooms = response.body()
64
75
65
76
assertTrue(response.isSuccessful)
66
77
assertNotNull(rooms)
67
- assertTrue(rooms.any { room -> room.name == ROOM_NAME })
78
+ assertTrue(rooms.any { room -> room.name == roomName })
68
79
}
69
80
70
81
@Test
71
82
fun deleteRoom () {
72
- client.createRoom(ROOM_NAME ).execute()
73
- client.deleteRoom(ROOM_NAME ).execute()
83
+ client.createRoom(roomName ).execute()
84
+ client.deleteRoom(roomName ).execute()
74
85
val response = client.listRooms(null ).execute()
75
86
val rooms = response.body()
76
87
77
88
assertTrue(response.isSuccessful)
78
89
assertNotNull(rooms)
79
- assertTrue(rooms.none { room -> room.name == ROOM_NAME })
90
+ assertTrue(rooms.none { room -> room.name == roomName })
80
91
}
81
92
82
93
@Test
83
94
fun updateRoomMetadata () {
84
95
val metadata = " NewMetadata"
85
- client.createRoom(ROOM_NAME ).execute()
86
- val response = client.updateRoomMetadata(ROOM_NAME , metadata).execute()
96
+ client.createRoom(roomName ).execute()
97
+ val response = client.updateRoomMetadata(roomName , metadata).execute()
87
98
val room = response.body()
88
99
89
100
assertTrue(response.isSuccessful)
@@ -93,8 +104,8 @@ class RoomServiceClientTest {
93
104
94
105
@Test
95
106
fun listParticipants () {
96
- client.createRoom(ROOM_NAME ).execute()
97
- val response = client.listParticipants(ROOM_NAME ).execute()
107
+ client.createRoom(roomName ).execute()
108
+ val response = client.listParticipants(roomName ).execute()
98
109
val participants = response.body()
99
110
assertTrue(response.isSuccessful)
100
111
assertNotNull(participants)
@@ -104,12 +115,13 @@ class RoomServiceClientTest {
104
115
@Test
105
116
@Ignore(" Requires manual participant" )
106
117
fun updateParticipant () {
107
- val participants = client.listParticipants(ROOM_NAME ).execute().body()
118
+ client.createRoom(roomName).execute()
119
+ val participants = client.listParticipants(roomName).execute().body()
108
120
if (participants != null ) {
109
121
val participant = participants.first()
110
122
111
123
val newMetadata = " new_metadata"
112
- val response = client.updateParticipant(ROOM_NAME , participant.identity, metadata = newMetadata).execute()
124
+ val response = client.updateParticipant(roomName , participant.identity, metadata = newMetadata).execute()
113
125
val updatedParticipant = response.body()!!
114
126
assertTrue(response.isSuccessful)
115
127
assertEquals(newMetadata, updatedParticipant.metadata)
@@ -118,13 +130,14 @@ class RoomServiceClientTest {
118
130
119
131
@Test
120
132
fun getParticipant () {
121
- val response = client.getParticipant(ROOM_NAME , " fdsa" ).execute()
133
+ client.createRoom(roomName).execute()
134
+ client.getParticipant(roomName, " fdsa" ).execute()
122
135
}
123
136
124
137
@Test
125
138
fun sendData () {
126
- client.createRoom(ROOM_NAME ).execute()
127
- val response = client.sendData(ROOM_NAME , " data" .toByteArray(), LivekitModels .DataPacket .Kind .RELIABLE ).execute()
139
+ client.createRoom(roomName ).execute()
140
+ val response = client.sendData(roomName , " data" .toByteArray(), LivekitModels .DataPacket .Kind .RELIABLE ).execute()
128
141
assertTrue(response.isSuccessful)
129
142
}
130
143
}
0 commit comments