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

Side by Side Diff: chrome/browser/extensions/api/image_writer_private/test_utils.cc

Issue 149313003: Significantly cleans up the ImageWriter Operation class and subclasses. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fixes cross-compilation and test issues. Created 6 years, 10 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 unified diff | Download patch
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/extensions/api/image_writer_private/test_utils.h" 5 #include "chrome/browser/extensions/api/image_writer_private/test_utils.h"
6 6
7 #if defined(OS_CHROMEOS) 7 #if defined(OS_CHROMEOS)
8 #include "chromeos/dbus/dbus_thread_manager.h" 8 #include "chromeos/dbus/dbus_thread_manager.h"
9 #include "chromeos/dbus/fake_dbus_thread_manager.h" 9 #include "chromeos/dbus/fake_dbus_thread_manager.h"
10 #include "chromeos/dbus/fake_image_burner_client.h" 10 #include "chromeos/dbus/fake_image_burner_client.h"
(...skipping 27 matching lines...) Expand all
38 base::Bind(burn_progress_update_handler_, to_path, 50, 100)); 38 base::Bind(burn_progress_update_handler_, to_path, 50, 100));
39 base::MessageLoop::current()->PostTask(FROM_HERE, 39 base::MessageLoop::current()->PostTask(FROM_HERE,
40 base::Bind(burn_progress_update_handler_, to_path, 100, 100)); 40 base::Bind(burn_progress_update_handler_, to_path, 100, 100));
41 base::MessageLoop::current()->PostTask(FROM_HERE, 41 base::MessageLoop::current()->PostTask(FROM_HERE,
42 base::Bind(burn_finished_handler_, to_path, true, "")); 42 base::Bind(burn_finished_handler_, to_path, true, ""));
43 } 43 }
44 44
45 private: 45 private:
46 BurnFinishedHandler burn_finished_handler_; 46 BurnFinishedHandler burn_finished_handler_;
47 BurnProgressUpdateHandler burn_progress_update_handler_; 47 BurnProgressUpdateHandler burn_progress_update_handler_;
48
49 }; 48 };
50 49
51 } // namespace 50 } // namespace
52 #endif 51 #endif
53 52
54 MockOperationManager::MockOperationManager() : OperationManager(NULL) {} 53 MockOperationManager::MockOperationManager() : OperationManager(NULL) {}
54 MockOperationManager::MockOperationManager(Profile* profile)
55 : OperationManager(profile) {}
55 MockOperationManager::~MockOperationManager() {} 56 MockOperationManager::~MockOperationManager() {}
56 57
57 ImageWriterUnitTestBase::ImageWriterUnitTestBase() {} 58 ImageWriterUnitTestBase::ImageWriterUnitTestBase()
59 : thread_bundle_(content::TestBrowserThreadBundle::IO_MAINLOOP) {}
58 ImageWriterUnitTestBase::~ImageWriterUnitTestBase() {} 60 ImageWriterUnitTestBase::~ImageWriterUnitTestBase() {}
59 61
60 void ImageWriterUnitTestBase::SetUp() { 62 void ImageWriterUnitTestBase::SetUp() {
61 testing::Test::SetUp(); 63 testing::Test::SetUp();
62 ASSERT_TRUE(temp_dir_.CreateUniqueTempDir()); 64 ASSERT_TRUE(temp_dir_.CreateUniqueTempDir());
63 65
64 ASSERT_TRUE(base::CreateTemporaryFileInDir(temp_dir_.path(), 66 ASSERT_TRUE(base::CreateTemporaryFileInDir(temp_dir_.path(),
65 &test_image_path_)); 67 &test_image_path_));
66 ASSERT_TRUE(base::CreateTemporaryFileInDir(temp_dir_.path(), 68 ASSERT_TRUE(base::CreateTemporaryFileInDir(temp_dir_.path(),
67 &test_device_path_)); 69 &test_device_path_));
(...skipping 12 matching lines...) Expand all
80 } 82 }
81 #endif 83 #endif
82 } 84 }
83 85
84 void ImageWriterUnitTestBase::TearDown() { 86 void ImageWriterUnitTestBase::TearDown() {
85 #if defined(OS_CHROMEOS) 87 #if defined(OS_CHROMEOS)
86 chromeos::DBusThreadManager::Shutdown(); 88 chromeos::DBusThreadManager::Shutdown();
87 #endif 89 #endif
88 } 90 }
89 91
90 bool ImageWriterUnitTestBase::CompareImageAndDevice() {
91 scoped_ptr<char[]> image_buffer(new char[kTestFileSize]);
92 scoped_ptr<char[]> device_buffer(new char[kTestFileSize]);
93
94 while (true) {
95 int image_bytes_read = ReadFile(test_image_path_,
96 image_buffer.get(),
97 kTestFileSize);
98 int device_bytes_read = ReadFile(test_device_path_,
99 device_buffer.get(),
100 kTestFileSize);
101
102 if (image_bytes_read != device_bytes_read)
103 return false;
104
105 if (image_bytes_read == 0)
106 return true;
107
108 if (memcmp(image_buffer.get(), device_buffer.get(), image_bytes_read) != 0)
109 return false;
110 }
111
112 return false;
113 }
114
115 bool ImageWriterUnitTestBase::FillFile(const base::FilePath& file, 92 bool ImageWriterUnitTestBase::FillFile(const base::FilePath& file,
116 const int pattern, 93 const int pattern,
117 const int length) { 94 const int length) {
118 scoped_ptr<char[]> buffer(new char[length]); 95 scoped_ptr<char[]> buffer(new char[length]);
119 memset(buffer.get(), pattern, length); 96 memset(buffer.get(), pattern, length);
120 97
121 return file_util::WriteFile(file, buffer.get(), length) == length; 98 return file_util::WriteFile(file, buffer.get(), length) == length;
122 } 99 }
123 100
124 } // namespace image_writer 101 } // namespace image_writer
125 } // namespace extensions 102 } // namespace extensions
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698