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

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

Issue 2344123002: ImageCapture: Implement TakePhoto() for Linux/CrOs (Closed)
Patch Set: v4l2_capture_delegate.cc l.152: Added back '&0xf0' Created 4 years, 3 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/capture/video/linux/video_capture_device_linux.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: media/capture/video/video_capture_device_unittest.cc
diff --git a/media/capture/video/video_capture_device_unittest.cc b/media/capture/video/video_capture_device_unittest.cc
index ac61a4c50bc36e12061c4d61a5216848591252c8..4a59047df72eb198c6703ab0373eb801c52178ea 100644
--- a/media/capture/video/video_capture_device_unittest.cc
+++ b/media/capture/video/video_capture_device_unittest.cc
@@ -64,7 +64,7 @@
// http://crbug.com/94134 http://crbug.com/137260 http://crbug.com/417824
#define MAYBE_AllocateBadSize DISABLED_AllocateBadSize
#define MAYBE_CaptureMjpeg CaptureMjpeg
-#define MAYBE_TakePhoto DISABLED_TakePhoto
+#define MAYBE_TakePhoto TakePhoto
#else
#define MAYBE_AllocateBadSize AllocateBadSize
#define MAYBE_CaptureMjpeg CaptureMjpeg
@@ -142,15 +142,24 @@ class MockImageCaptureClient : public base::RefCounted<MockImageCaptureClient> {
public:
// GMock doesn't support move-only arguments, so we use this forward method.
void DoOnPhotoTaken(mojom::BlobPtr blob) {
- EXPECT_STREQ("image/jpeg", blob->mime_type.c_str());
- ASSERT_GT(blob->data.size(), 4u);
- // Check some bytes that univocally identify |data| as a JPEG File.
- // https://en.wikipedia.org/wiki/JPEG_File_Interchange_Format#File_format_structure
- EXPECT_EQ(0xFF, blob->data[0]); // First SOI byte
- EXPECT_EQ(0xD8, blob->data[1]); // Second SOI byte
- EXPECT_EQ(0xFF, blob->data[2]); // First JFIF-APP0 byte
- EXPECT_EQ(0xE0, blob->data[3] & 0xF0); // Second JFIF-APP0/APP1 byte
- OnCorrectPhotoTaken();
+ if (strcmp("image/jpeg", blob->mime_type.c_str()) == 0) {
+ ASSERT_GT(blob->data.size(), 4u);
+ // Check some bytes that univocally identify |data| as a JPEG File.
+ // https://en.wikipedia.org/wiki/JPEG_File_Interchange_Format#File_format_structure
+ EXPECT_EQ(0xFF, blob->data[0]); // First SOI byte
+ EXPECT_EQ(0xD8, blob->data[1]); // Second SOI byte
+ EXPECT_EQ(0xFF, blob->data[2]); // First JFIF-APP0 byte
+ EXPECT_EQ(0xE0, blob->data[3] & 0xF0); // Second JFIF-APP0 byte
+ OnCorrectPhotoTaken();
+ } else if (strcmp("image/png", blob->mime_type.c_str()) == 0) {
+ ASSERT_GT(blob->data.size(), 4u);
+ EXPECT_EQ('P', blob->data[1]);
+ EXPECT_EQ('N', blob->data[2]);
+ EXPECT_EQ('G', blob->data[3]);
+ OnCorrectPhotoTaken();
+ } else {
+ ADD_FAILURE() << "Photo format should be jpeg or png";
+ }
}
MOCK_METHOD0(OnCorrectPhotoTaken, void(void));
MOCK_METHOD1(OnTakePhotoFailure,
« no previous file with comments | « media/capture/video/linux/video_capture_device_linux.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698