davidliu

easy simulate scenario

... ... @@ -62,6 +62,16 @@ constructor(
RECONNECTING;
}
/**
* @suppress
*/
enum class SimulateScenario {
SPEAKER_UPDATE,
NODE_FAILURE,
MIGRATION,
SERVER_LEAVE;
}
@JvmInline
value class Sid(val sid: String)
... ... @@ -507,6 +517,23 @@ constructor(
}
/**
* Sends a simulated scenario for the server to use.
*
* To be used for internal testing purposes only.
* @suppress
*/
fun sendSimulateScenario(scenario: SimulateScenario) {
val builder = LivekitRtc.SimulateScenario.newBuilder()
when (scenario) {
SimulateScenario.SPEAKER_UPDATE -> builder.speakerUpdate = 5
SimulateScenario.NODE_FAILURE -> builder.nodeFailure = true
SimulateScenario.MIGRATION -> builder.migration = true
SimulateScenario.SERVER_LEAVE -> builder.serverLeave = true
}
sendSimulateScenario(builder.build())
}
/**
* @suppress
*/
@AssistedFactory
... ...