Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(183)

Unified Diff: media/video/capture/video_capture_device_unittest.cc

Issue 24079003: Add VideoCaptureDevice::GetDeviceSupportedFormats to interface + implementation for Linux and Fake (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: perkj@'s nits Created 7 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « media/video/capture/video_capture_device.h ('k') | media/video/capture/video_capture_types.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: media/video/capture/video_capture_device_unittest.cc
diff --git a/media/video/capture/video_capture_device_unittest.cc b/media/video/capture/video_capture_device_unittest.cc
index 9f0f0da2a006b812de28c94e193e4d5478b9e79d..517e7b288b841c7a9b89db9f9ac0eda178c50959 100644
--- a/media/video/capture/video_capture_device_unittest.cc
+++ b/media/video/capture/video_capture_device_unittest.cc
@@ -409,6 +409,22 @@ TEST_F(VideoCaptureDeviceTest, MAYBE_CaptureMjpeg) {
device->StopAndDeAllocate();
}
+TEST_F(VideoCaptureDeviceTest, GetDeviceSupportedFormats) {
+ VideoCaptureDevice::GetDeviceNames(&names_);
+ if (!names_.size()) {
+ DVLOG(1) << "No camera available. Exiting test.";
+ return;
+ }
+ VideoCaptureCapabilities capture_formats;
+ VideoCaptureDevice::Names::iterator names_iterator;
+ for (names_iterator = names_.begin(); names_iterator != names_.end();
+ ++names_iterator) {
+ VideoCaptureDevice::GetDeviceSupportedFormats(*names_iterator,
+ &capture_formats);
+ // Nothing to test here since we cannot forecast the hardware capabilities.
+ }
+}
+
TEST_F(VideoCaptureDeviceTest, FakeCaptureVariableResolution) {
VideoCaptureDevice::Names names;
@@ -447,4 +463,23 @@ TEST_F(VideoCaptureDeviceTest, FakeCaptureVariableResolution) {
device->StopAndDeAllocate();
}
+TEST_F(VideoCaptureDeviceTest, FakeGetDeviceSupportedFormats) {
+ VideoCaptureDevice::Names names;
+ FakeVideoCaptureDevice::GetDeviceNames(&names);
+
+ VideoCaptureCapabilities capture_formats;
+ VideoCaptureDevice::Names::iterator names_iterator;
+
+ for (names_iterator = names.begin(); names_iterator != names.end();
+ ++names_iterator) {
+ FakeVideoCaptureDevice::GetDeviceSupportedFormats(*names_iterator,
+ &capture_formats);
+ EXPECT_GE(capture_formats.size(), 1u);
+ EXPECT_EQ(capture_formats[0].width, 640);
+ EXPECT_EQ(capture_formats[0].height, 480);
+ EXPECT_EQ(capture_formats[0].color, media::PIXEL_FORMAT_I420);
+ EXPECT_GE(capture_formats[0].frame_rate, 20);
+ }
+}
+
}; // namespace media
« no previous file with comments | « media/video/capture/video_capture_device.h ('k') | media/video/capture/video_capture_types.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698