mirror of https://github.com/OpenVidu/openvidu.git
openvidu-test-e2e: add tags @OnlyPion and @OnlyMediasoup. Fix customIngress test
parent
d3b8214dcb
commit
f2cb2fb252
|
@ -52,6 +52,9 @@ import com.google.gson.JsonElement;
|
||||||
import com.google.gson.JsonObject;
|
import com.google.gson.JsonObject;
|
||||||
import com.google.gson.JsonParser;
|
import com.google.gson.JsonParser;
|
||||||
|
|
||||||
|
import io.openvidu.test.e2e.annotations.OnlyMediasoup;
|
||||||
|
import io.openvidu.test.e2e.annotations.OnlyPion;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* E2E tests for openvidu-testapp.
|
* E2E tests for openvidu-testapp.
|
||||||
*
|
*
|
||||||
|
@ -583,7 +586,8 @@ public class OpenViduTestAppE2eTest extends AbstractOpenViduTestappE2eTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@DisplayName("Chrome force H264")
|
@DisplayName("Chrome force H264")
|
||||||
@Disabled // TODO: enable when not forcing VP8
|
// TODO: remove tag when not forcing VP8 with mediasoup
|
||||||
|
@OnlyPion
|
||||||
void chromeForceH264Test() throws Exception {
|
void chromeForceH264Test() throws Exception {
|
||||||
OpenViduTestappUser user = setupBrowserAndConnectToOpenViduTestapp("chrome");
|
OpenViduTestappUser user = setupBrowserAndConnectToOpenViduTestapp("chrome");
|
||||||
log.info("Chrome force H264");
|
log.info("Chrome force H264");
|
||||||
|
@ -601,7 +605,8 @@ public class OpenViduTestAppE2eTest extends AbstractOpenViduTestappE2eTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@DisplayName("Chrome force VP9")
|
@DisplayName("Chrome force VP9")
|
||||||
@Disabled // TODO: enable when not forcing VP8
|
// TODO: remove tag when not forcing VP8 with mediasoup
|
||||||
|
@OnlyPion
|
||||||
void chromeForceVP9Test() throws Exception {
|
void chromeForceVP9Test() throws Exception {
|
||||||
OpenViduTestappUser user = setupBrowserAndConnectToOpenViduTestapp("chrome");
|
OpenViduTestappUser user = setupBrowserAndConnectToOpenViduTestapp("chrome");
|
||||||
log.info("Chrome force VP9");
|
log.info("Chrome force VP9");
|
||||||
|
@ -668,7 +673,8 @@ public class OpenViduTestAppE2eTest extends AbstractOpenViduTestappE2eTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@DisplayName("Firefox subscribe to H264")
|
@DisplayName("Firefox subscribe to H264")
|
||||||
@Disabled // TODO: enable when not forcing VP8
|
// TODO: remove tag when not forcing VP8 with mediasoup
|
||||||
|
@OnlyPion
|
||||||
void firefoxSubscribeToH264Test() throws Exception {
|
void firefoxSubscribeToH264Test() throws Exception {
|
||||||
log.info("Firefox subscribe to H264");
|
log.info("Firefox subscribe to H264");
|
||||||
firefoxSubscribeToCodecTest("h264", false);
|
firefoxSubscribeToCodecTest("h264", false);
|
||||||
|
@ -676,7 +682,8 @@ public class OpenViduTestAppE2eTest extends AbstractOpenViduTestappE2eTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@DisplayName("Firefox subscribe to VP9")
|
@DisplayName("Firefox subscribe to VP9")
|
||||||
@Disabled // TODO: enable when not forcing VP8
|
// TODO: remove tag when not forcing VP8 with mediasoup
|
||||||
|
@OnlyPion
|
||||||
void firefoxSubscribeToVP9Test() throws Exception {
|
void firefoxSubscribeToVP9Test() throws Exception {
|
||||||
log.info("Firefox subscribe to VP9");
|
log.info("Firefox subscribe to VP9");
|
||||||
firefoxSubscribeToCodecTest("vp9", false);
|
firefoxSubscribeToCodecTest("vp9", false);
|
||||||
|
@ -691,7 +698,8 @@ public class OpenViduTestAppE2eTest extends AbstractOpenViduTestappE2eTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@DisplayName("Firefox subscribe to H264 simulcast")
|
@DisplayName("Firefox subscribe to H264 simulcast")
|
||||||
@Disabled // TODO: enable when not forcing VP8
|
// TODO: remove tag when not forcing VP8 with mediasoup
|
||||||
|
@OnlyPion
|
||||||
void firefoxSubscribeToH264SimulcastTest() throws Exception {
|
void firefoxSubscribeToH264SimulcastTest() throws Exception {
|
||||||
log.info("Firefox subscribe to H264 simulcast");
|
log.info("Firefox subscribe to H264 simulcast");
|
||||||
firefoxSubscribeToCodecTest("h264", true);
|
firefoxSubscribeToCodecTest("h264", true);
|
||||||
|
@ -699,7 +707,8 @@ public class OpenViduTestAppE2eTest extends AbstractOpenViduTestappE2eTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@DisplayName("Firefox subscribe to VP9 simulcast")
|
@DisplayName("Firefox subscribe to VP9 simulcast")
|
||||||
@Disabled // TODO: enable when not forcing VP8
|
// TODO: remove tag when not forcing VP8 with mediasoup
|
||||||
|
@OnlyPion
|
||||||
void firefoxSubscribeToVP9SimulcastTest() throws Exception {
|
void firefoxSubscribeToVP9SimulcastTest() throws Exception {
|
||||||
log.info("Firefox subscribe to VP9 simulcast");
|
log.info("Firefox subscribe to VP9 simulcast");
|
||||||
firefoxSubscribeToCodecTest("vp9", true);
|
firefoxSubscribeToCodecTest("vp9", true);
|
||||||
|
@ -1498,7 +1507,8 @@ public class OpenViduTestAppE2eTest extends AbstractOpenViduTestappE2eTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@DisplayName("Ingress VP8 Simulcast Chrome")
|
@DisplayName("Ingress VP8 Simulcast Chrome")
|
||||||
@Disabled // TODO: enable when not forcing VP8 no-simulcast in ingress
|
// TODO: remove tag when not forcing VP8 no-simulcast in ingress with mediasoup
|
||||||
|
@OnlyPion
|
||||||
void ingressVP8SimulcastChromeTest() throws Exception {
|
void ingressVP8SimulcastChromeTest() throws Exception {
|
||||||
OpenViduTestappUser user = setupBrowserAndConnectToOpenViduTestapp("chrome");
|
OpenViduTestappUser user = setupBrowserAndConnectToOpenViduTestapp("chrome");
|
||||||
|
|
||||||
|
@ -1512,7 +1522,8 @@ public class OpenViduTestAppE2eTest extends AbstractOpenViduTestappE2eTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@DisplayName("Ingress VP8 Simulcast Firefox")
|
@DisplayName("Ingress VP8 Simulcast Firefox")
|
||||||
@Disabled // TODO: enable when not forcing VP8 no-simulcast in ingress
|
// TODO: remove tag when not forcing VP8 no-simulcast in ingress with mediasoup
|
||||||
|
@OnlyPion
|
||||||
void ingressVP8SimulcastFirefoxTest() throws Exception {
|
void ingressVP8SimulcastFirefoxTest() throws Exception {
|
||||||
OpenViduTestappUser user = setupBrowserAndConnectToOpenViduTestapp("firefox");
|
OpenViduTestappUser user = setupBrowserAndConnectToOpenViduTestapp("firefox");
|
||||||
|
|
||||||
|
@ -1526,7 +1537,8 @@ public class OpenViduTestAppE2eTest extends AbstractOpenViduTestappE2eTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@DisplayName("Ingress H264 Simulcast Chrome")
|
@DisplayName("Ingress H264 Simulcast Chrome")
|
||||||
@Disabled // TODO: enable when not forcing VP8 no-simulcast in ingress
|
// TODO: remove tag when not forcing VP8 no-simulcast in ingress with mediasoup
|
||||||
|
@OnlyPion
|
||||||
void ingressH264SimulcastChromeTest() throws Exception {
|
void ingressH264SimulcastChromeTest() throws Exception {
|
||||||
OpenViduTestappUser user = setupBrowserAndConnectToOpenViduTestapp("chrome");
|
OpenViduTestappUser user = setupBrowserAndConnectToOpenViduTestapp("chrome");
|
||||||
|
|
||||||
|
@ -1539,7 +1551,8 @@ public class OpenViduTestAppE2eTest extends AbstractOpenViduTestappE2eTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@DisplayName("Ingress H264 Simulcast Firefox")
|
@DisplayName("Ingress H264 Simulcast Firefox")
|
||||||
@Disabled // TODO: enable when not forcing VP8 no-simulcast in ingress
|
// TODO: remove tag when not forcing VP8 no-simulcast in ingress with mediasoup
|
||||||
|
@OnlyPion
|
||||||
void ingressH264SimulcastFirefoxTest() throws Exception {
|
void ingressH264SimulcastFirefoxTest() throws Exception {
|
||||||
OpenViduTestappUser user = setupBrowserAndConnectToOpenViduTestapp("firefox");
|
OpenViduTestappUser user = setupBrowserAndConnectToOpenViduTestapp("firefox");
|
||||||
|
|
||||||
|
@ -1552,7 +1565,8 @@ public class OpenViduTestAppE2eTest extends AbstractOpenViduTestappE2eTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@DisplayName("Ingress H264 Simulcast two layers Chrome")
|
@DisplayName("Ingress H264 Simulcast two layers Chrome")
|
||||||
@Disabled // TODO: enable when not forcing VP8 no-simulcast in ingress
|
// TODO: remove tag when not forcing VP8 no-simulcast in ingress with mediasoup
|
||||||
|
@OnlyPion
|
||||||
void ingressH264SimulcastTwoLayersChromeTest() throws Exception {
|
void ingressH264SimulcastTwoLayersChromeTest() throws Exception {
|
||||||
OpenViduTestappUser user = setupBrowserAndConnectToOpenViduTestapp("chrome");
|
OpenViduTestappUser user = setupBrowserAndConnectToOpenViduTestapp("chrome");
|
||||||
|
|
||||||
|
@ -1565,7 +1579,8 @@ public class OpenViduTestAppE2eTest extends AbstractOpenViduTestappE2eTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@DisplayName("Ingress H264 Simulcast two layers Firefox")
|
@DisplayName("Ingress H264 Simulcast two layers Firefox")
|
||||||
@Disabled // TODO: enable when not forcing VP8 no-simulcast in ingress
|
// TODO: remove tag when not forcing VP8 no-simulcast in ingress with mediasoup
|
||||||
|
@OnlyPion
|
||||||
void ingressH264SimulcastTwoLayersFirefoxTest() throws Exception {
|
void ingressH264SimulcastTwoLayersFirefoxTest() throws Exception {
|
||||||
OpenViduTestappUser user = setupBrowserAndConnectToOpenViduTestapp("firefox");
|
OpenViduTestappUser user = setupBrowserAndConnectToOpenViduTestapp("firefox");
|
||||||
|
|
||||||
|
@ -1602,7 +1617,8 @@ public class OpenViduTestAppE2eTest extends AbstractOpenViduTestappE2eTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@DisplayName("Ingress H264 No Simulcast Chrome")
|
@DisplayName("Ingress H264 No Simulcast Chrome")
|
||||||
@Disabled // TODO: enable when not forcing VP8 no-simulcast in ingress
|
// TODO: remove tag when not forcing VP8 no-simulcast in ingress with mediasoup
|
||||||
|
@OnlyPion
|
||||||
void ingressH264NoSimulcastChromeTest() throws Exception {
|
void ingressH264NoSimulcastChromeTest() throws Exception {
|
||||||
OpenViduTestappUser user = setupBrowserAndConnectToOpenViduTestapp("chrome");
|
OpenViduTestappUser user = setupBrowserAndConnectToOpenViduTestapp("chrome");
|
||||||
|
|
||||||
|
@ -1615,7 +1631,8 @@ public class OpenViduTestAppE2eTest extends AbstractOpenViduTestappE2eTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@DisplayName("Ingress H264 No Simulcast Firefox")
|
@DisplayName("Ingress H264 No Simulcast Firefox")
|
||||||
@Disabled // TODO: enable when not forcing VP8 no-simulcast in ingress
|
// TODO: remove tag when not forcing VP8 no-simulcast in ingress with mediasoup
|
||||||
|
@OnlyPion
|
||||||
void ingressH264NoSimulcastFirefoxTest() throws Exception {
|
void ingressH264NoSimulcastFirefoxTest() throws Exception {
|
||||||
OpenViduTestappUser user = setupBrowserAndConnectToOpenViduTestapp("firefox");
|
OpenViduTestappUser user = setupBrowserAndConnectToOpenViduTestapp("firefox");
|
||||||
|
|
||||||
|
@ -1628,11 +1645,13 @@ public class OpenViduTestAppE2eTest extends AbstractOpenViduTestappE2eTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
@DisplayName("Custom ingress")
|
@DisplayName("Custom ingress")
|
||||||
@Disabled // ONLY FOR CUSTOM ingress IMAGE
|
// TODO: remove tag when not using custom ingress image with mediasoup
|
||||||
|
@OnlyMediasoup
|
||||||
void customIngressTest() throws Exception {
|
void customIngressTest() throws Exception {
|
||||||
OpenViduTestappUser user = setupBrowserAndConnectToOpenViduTestapp("firefox");
|
OpenViduTestappUser user = setupBrowserAndConnectToOpenViduTestapp("firefox");
|
||||||
|
|
||||||
// With custom ingress it should force VP8 no simulcast 1920x0180
|
// With custom ingress and mediasoup it should force VP8 no simulcast with
|
||||||
|
// highest quality layer width, height, framerate and bitrate
|
||||||
log.info("Custom ingress");
|
log.info("Custom ingress");
|
||||||
|
|
||||||
this.addSubscriber(user, true);
|
this.addSubscriber(user, true);
|
||||||
|
@ -1649,19 +1668,47 @@ public class OpenViduTestAppE2eTest extends AbstractOpenViduTestappE2eTest {
|
||||||
Assertions.assertTrue(user.getBrowserUser().assertAllElementsHaveTracks("video", false, true),
|
Assertions.assertTrue(user.getBrowserUser().assertAllElementsHaveTracks("video", false, true),
|
||||||
"HTMLVideoElements were expected to have only one video track");
|
"HTMLVideoElements were expected to have only one video track");
|
||||||
|
|
||||||
// Should receive VP8 1920
|
// Should receive VP8 960x540 25 fps
|
||||||
WebElement subscriberVideo = user.getDriver().findElement(By.cssSelector("#openvidu-instance-0 video.remote"));
|
WebElement subscriberVideo = user.getDriver().findElement(By.cssSelector("#openvidu-instance-0 video.remote"));
|
||||||
waitUntilVideoLayersNotEmpty(user, subscriberVideo);
|
waitUntilVideoLayersNotEmpty(user, subscriberVideo);
|
||||||
|
Assertions.assertEquals(1, getLayersAsJsonArray(user, subscriberVideo).size());
|
||||||
|
long bytesReceived = this.getSubscriberVideoBytesReceived(user, subscriberVideo);
|
||||||
|
this.waitUntilSubscriberBytesReceivedIncrease(user, subscriberVideo, bytesReceived);
|
||||||
|
this.waitUntilSubscriberFramesPerSecondNotZero(user, subscriberVideo);
|
||||||
JsonArray json = this.getLayersAsJsonArray(user, subscriberVideo);
|
JsonArray json = this.getLayersAsJsonArray(user, subscriberVideo);
|
||||||
String subscriberCodec = json.get(0).getAsJsonObject().get("codec").getAsString();
|
String subscriberCodec = json.get(0).getAsJsonObject().get("codec").getAsString();
|
||||||
String expectedCodec = "video/VP8";
|
String expectedCodec = "video/VP8";
|
||||||
Assertions.assertEquals(expectedCodec, subscriberCodec);
|
Assertions.assertEquals(expectedCodec, subscriberCodec);
|
||||||
this.waitUntilSubscriberFrameWidthIs(user, subscriberVideo, 1920);
|
this.waitUntilSubscriberFramesPerSecondIs(user, subscriberVideo, 25);
|
||||||
|
this.waitUntilSubscriberFrameWidthIs(user, subscriberVideo, 960);
|
||||||
|
this.waitUntilSubscriberFrameHeightIs(user, subscriberVideo, 540);
|
||||||
|
|
||||||
|
this.deleteAllIngresses(LK_INGRESS);
|
||||||
|
user.getEventManager().waitUntilEventReaches("trackUnpublished", "RoomEvent", 1);
|
||||||
|
user.getEventManager().waitUntilEventReaches("participantDisconnected", "RoomEvent", 1);
|
||||||
|
|
||||||
|
// Try publishing H264 with 3 layer simulcast
|
||||||
|
createIngress(user, "H264_1080P_30FPS_3_LAYERS_HIGH_MOTION", null, true);
|
||||||
|
user.getEventManager().waitUntilEventReaches("trackSubscribed", "ParticipantEvent", 1);
|
||||||
|
user.getWaiter().until(ExpectedConditions.numberOfElementsToBe(By.tagName("video"), 1));
|
||||||
|
numberOfVideos = user.getDriver().findElements(By.tagName("video")).size();
|
||||||
|
Assertions.assertEquals(1, numberOfVideos, "Wrong number of videos");
|
||||||
|
Assertions.assertTrue(user.getBrowserUser().assertAllElementsHaveTracks("video", false, true),
|
||||||
|
"HTMLVideoElements were expected to have only one video track");
|
||||||
|
|
||||||
|
subscriberVideo = user.getDriver().findElement(By.cssSelector("#openvidu-instance-0 video.remote"));
|
||||||
waitUntilVideoLayersNotEmpty(user, subscriberVideo);
|
waitUntilVideoLayersNotEmpty(user, subscriberVideo);
|
||||||
long bytesReceived = this.getSubscriberVideoBytesReceived(user, subscriberVideo);
|
Assertions.assertEquals(1, getLayersAsJsonArray(user, subscriberVideo).size());
|
||||||
|
bytesReceived = this.getSubscriberVideoBytesReceived(user, subscriberVideo);
|
||||||
this.waitUntilSubscriberBytesReceivedIncrease(user, subscriberVideo, bytesReceived);
|
this.waitUntilSubscriberBytesReceivedIncrease(user, subscriberVideo, bytesReceived);
|
||||||
this.waitUntilSubscriberFramesPerSecondNotZero(user, subscriberVideo);
|
this.waitUntilSubscriberFramesPerSecondNotZero(user, subscriberVideo);
|
||||||
|
json = this.getLayersAsJsonArray(user, subscriberVideo);
|
||||||
|
subscriberCodec = json.get(0).getAsJsonObject().get("codec").getAsString();
|
||||||
|
expectedCodec = "video/VP8";
|
||||||
|
Assertions.assertEquals(expectedCodec, subscriberCodec);
|
||||||
|
this.waitUntilSubscriberFramesPerSecondIs(user, subscriberVideo, 30);
|
||||||
|
this.waitUntilSubscriberFrameWidthIs(user, subscriberVideo, 1920);
|
||||||
|
this.waitUntilSubscriberFrameHeightIs(user, subscriberVideo, 1080);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void ingressSimulcastTest(OpenViduTestappUser user, boolean simulcast, String codec, String preset)
|
private void ingressSimulcastTest(OpenViduTestappUser user, boolean simulcast, String codec, String preset)
|
||||||
|
@ -1764,6 +1811,12 @@ public class OpenViduTestAppE2eTest extends AbstractOpenViduTestappE2eTest {
|
||||||
return json.get(0).getAsJsonObject().get("frameWidth").getAsInt();
|
return json.get(0).getAsJsonObject().get("frameWidth").getAsInt();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private int getSubscriberVideoFrameHeight(OpenViduTestappUser user, WebElement subscriberVideo) {
|
||||||
|
waitUntilVideoLayersNotEmpty(user, subscriberVideo);
|
||||||
|
JsonArray json = this.getLayersAsJsonArray(user, subscriberVideo);
|
||||||
|
return json.get(0).getAsJsonObject().get("frameHeight").getAsInt();
|
||||||
|
}
|
||||||
|
|
||||||
private long getSubscriberVideoBytesReceived(OpenViduTestappUser user, WebElement subscriberVideo) {
|
private long getSubscriberVideoBytesReceived(OpenViduTestappUser user, WebElement subscriberVideo) {
|
||||||
JsonArray json = this.getLayersAsJsonArray(user, subscriberVideo);
|
JsonArray json = this.getLayersAsJsonArray(user, subscriberVideo);
|
||||||
return json.get(0).getAsJsonObject().get("bytesReceived").getAsLong();
|
return json.get(0).getAsJsonObject().get("bytesReceived").getAsLong();
|
||||||
|
@ -1815,6 +1868,12 @@ public class OpenViduTestAppE2eTest extends AbstractOpenViduTestappE2eTest {
|
||||||
}, "Timeout waiting for video track to have a framesPerSecond greater than 0");
|
}, "Timeout waiting for video track to have a framesPerSecond greater than 0");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void waitUntilSubscriberFramesPerSecondIs(OpenViduTestappUser user, WebElement videoElement, int fps) {
|
||||||
|
this.waitUntilAux(user, videoElement, () -> {
|
||||||
|
return this.getSubscriberVideoFramesPerSecond(user, videoElement) == fps;
|
||||||
|
}, "Timeout waiting for video track to have a framesPerSecond equal to " + fps);
|
||||||
|
}
|
||||||
|
|
||||||
private void waitUntilSubscriberFrameWidthIs(OpenViduTestappUser user, WebElement videoElement,
|
private void waitUntilSubscriberFrameWidthIs(OpenViduTestappUser user, WebElement videoElement,
|
||||||
final int expectedFrameWidth) {
|
final int expectedFrameWidth) {
|
||||||
this.waitUntilAux(user, videoElement, () -> {
|
this.waitUntilAux(user, videoElement, () -> {
|
||||||
|
@ -1822,6 +1881,13 @@ public class OpenViduTestAppE2eTest extends AbstractOpenViduTestappE2eTest {
|
||||||
}, "Timeout waiting for video track to have a frameWidth of " + expectedFrameWidth);
|
}, "Timeout waiting for video track to have a frameWidth of " + expectedFrameWidth);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void waitUntilSubscriberFrameHeightIs(OpenViduTestappUser user, WebElement videoElement,
|
||||||
|
final int expectedFrameHeight) {
|
||||||
|
this.waitUntilAux(user, videoElement, () -> {
|
||||||
|
return this.getSubscriberVideoFrameHeight(user, videoElement) == expectedFrameHeight;
|
||||||
|
}, "Timeout waiting for video track to have a frameHeight of " + expectedFrameHeight);
|
||||||
|
}
|
||||||
|
|
||||||
private void waitUntilSubscriberFrameWidthChanges(OpenViduTestappUser user, WebElement videoElement,
|
private void waitUntilSubscriberFrameWidthChanges(OpenViduTestappUser user, WebElement videoElement,
|
||||||
final int oldFrameWidth, final boolean shouldBeHigher) {
|
final int oldFrameWidth, final boolean shouldBeHigher) {
|
||||||
this.waitUntilAux(user, videoElement, () -> {
|
this.waitUntilAux(user, videoElement, () -> {
|
||||||
|
|
|
@ -0,0 +1,15 @@
|
||||||
|
package io.openvidu.test.e2e.annotations;
|
||||||
|
|
||||||
|
import java.lang.annotation.ElementType;
|
||||||
|
import java.lang.annotation.Retention;
|
||||||
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
|
import org.springframework.test.context.junit.jupiter.DisabledIf;
|
||||||
|
|
||||||
|
@Target(ElementType.METHOD)
|
||||||
|
@Retention(RetentionPolicy.RUNTIME)
|
||||||
|
@DisabledIf(expression = "#{systemProperties['OPENVIDU_RTC_ENGINE'] != null && !systemProperties['OPENVIDU_RTC_ENGINE'].equals('mediasoup')}")
|
||||||
|
public @interface OnlyMediasoup {
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,15 @@
|
||||||
|
package io.openvidu.test.e2e.annotations;
|
||||||
|
|
||||||
|
import java.lang.annotation.ElementType;
|
||||||
|
import java.lang.annotation.Retention;
|
||||||
|
import java.lang.annotation.RetentionPolicy;
|
||||||
|
import java.lang.annotation.Target;
|
||||||
|
|
||||||
|
import org.springframework.test.context.junit.jupiter.DisabledIf;
|
||||||
|
|
||||||
|
@Target(ElementType.METHOD)
|
||||||
|
@Retention(RetentionPolicy.RUNTIME)
|
||||||
|
@DisabledIf(expression = "#{systemProperties['OPENVIDU_RTC_ENGINE'] != null && !systemProperties['OPENVIDU_RTC_ENGINE'].equals('pion')}")
|
||||||
|
public @interface OnlyPion {
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in New Issue