Chromium Code Reviews| Index: chrome/browser/extensions/api/image_writer_private/test_utils.cc |
| diff --git a/chrome/browser/extensions/api/image_writer_private/test_utils.cc b/chrome/browser/extensions/api/image_writer_private/test_utils.cc |
| index 999898bd9029da0a3c01d01735977336fe93bf97..a15debb3a8a1dc5abaf701b05a2211422dd072b4 100644 |
| --- a/chrome/browser/extensions/api/image_writer_private/test_utils.cc |
| +++ b/chrome/browser/extensions/api/image_writer_private/test_utils.cc |
| @@ -51,16 +51,33 @@ class ImageWriterFakeImageBurnerClient |
| } // namespace |
| #endif |
| +QuittingMockManager::QuittingMockManager(const base::Closure& quit_closure) |
| + : quit_closure_(quit_closure) {} |
| + |
| +void QuittingMockManager::OnComplete(const ExtensionId& extension_id) { |
| + MockOperationManager::OnComplete(extension_id); |
| + quit_closure_.Run(); |
| +} |
| + |
| +void QuittingMockManager::OnError(const ExtensionId& extension_id, |
| + image_writer_api::Stage stage, |
| + int progress, |
| + const std::string& error_message) { |
| + MockOperationManager::OnError(extension_id, stage, progress, error_message); |
| + quit_closure_.Run(); |
| +} |
| + |
| MockOperationManager::MockOperationManager() : OperationManager(NULL) {} |
| MockOperationManager::~MockOperationManager() {} |
| -ImageWriterUnitTestBase::ImageWriterUnitTestBase() {} |
| +ImageWriterUnitTestBase::ImageWriterUnitTestBase() |
| + : thread_bundle_(content::TestBrowserThreadBundle::IO_MAINLOOP) {} |
| ImageWriterUnitTestBase::~ImageWriterUnitTestBase() {} |
| void ImageWriterUnitTestBase::SetUp() { |
| testing::Test::SetUp(); |
| - ASSERT_TRUE(temp_dir_.CreateUniqueTempDir()); |
| + ASSERT_TRUE(temp_dir_.CreateUniqueTempDir()); |
| ASSERT_TRUE(base::CreateTemporaryFileInDir(temp_dir_.path(), |
| &test_image_path_)); |
| ASSERT_TRUE(base::CreateTemporaryFileInDir(temp_dir_.path(), |
| @@ -87,29 +104,29 @@ void ImageWriterUnitTestBase::TearDown() { |
| #endif |
| } |
| -bool ImageWriterUnitTestBase::CompareImageAndDevice() { |
| +bool ImageWriterUnitTestBase::ImageWrittenToDevice( |
| + const base::FilePath& image_path, |
| + const base::FilePath& device_path) { |
| scoped_ptr<char[]> image_buffer(new char[kTestFileSize]); |
| scoped_ptr<char[]> device_buffer(new char[kTestFileSize]); |
| - while (true) { |
| - int image_bytes_read = ReadFile(test_image_path_, |
| - image_buffer.get(), |
| - kTestFileSize); |
| - int device_bytes_read = ReadFile(test_device_path_, |
| - device_buffer.get(), |
| - kTestFileSize); |
| + int image_bytes_read = |
| + ReadFile(image_path, image_buffer.get(), kTestFileSize); |
| - if (image_bytes_read != device_bytes_read) |
| - return false; |
| + if (image_bytes_read == 0) |
|
Lei Zhang
2014/02/15 01:07:26
This can't happen when you have requested 32 KB.
Drew Haven
2014/02/15 02:15:15
Done.
|
| + // Trivially true. |
| + return true; |
| - if (image_bytes_read == 0) |
| - return true; |
| + if (image_bytes_read < 0) |
| + return false; |
| - if (memcmp(image_buffer.get(), device_buffer.get(), image_bytes_read) != 0) |
| - return false; |
| - } |
| + int device_bytes_read = |
| + ReadFile(device_path, device_buffer.get(), kTestFileSize); |
| + |
| + if (image_bytes_read != device_bytes_read) |
| + return false; |
| - return false; |
| + return memcmp(image_buffer.get(), device_buffer.get(), image_bytes_read) == 0; |
|
Jorge Lucangeli Obes
2014/02/15 01:43:19
This is converting signed -> size_t, but at least
Drew Haven
2014/02/15 02:15:15
Good point. How convinient that ReadFile takes an
|
| } |
| bool ImageWriterUnitTestBase::FillFile(const base::FilePath& file, |