1# Copyright 2017 The Chromium OS Authors. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5AUTHOR = "kerl@google.com, chromeos-meetings@google.com"
6NAME = "video_WebRtcResolutionSwitching"
7PURPOSE = "Stress WebRTC by frequently switching between different resolutions"
8CRITERIA = "Fails if any video element gets a lower resolution than requested"
9ATTRIBUTES = "suite:hotrod"
10TIME = "SHORT"
11TEST_CATEGORY = "Stress"
12TEST_CLASS = "video"
13TEST_TYPE = "client"
14BUG_TEMPLATE = {
15    "labels": ["OS-Chrome"],
16    "components": ["OS>Kernel>Video"],
17}
18JOB_RETRIES = 2
19
20DOC = """
21This test starts 5 loopback peer connections, each with 4 streams with
22different resolutions. The test then switches randomly which of the streams are
23active for each connection, effectively flipping between different resolutions.
24
25If any of the video elements gets a resolution that is lower than the lowest we
26request, the test fails.
27
28The tests use a fake media stream - not a real camera.
29
30This test acts as a stress test and ensures that we do not encounter issues
31such as https://crbug.com/758850 again.
32"""
33
34job.run_test("video_WebRtcResolutionSwitching")
35
36