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

Side by Side Diff: src/platform/update_engine/test_utils.h

Issue 1694025: AU: Update Downloader to support our image formats. (Closed) Base URL: ssh://git@chromiumos-git/chromeos
Patch Set: fixes for review Created 10 years, 7 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 (c) 2009 The Chromium OS Authors. All rights reserved. 1 // Copyright (c) 2009 The Chromium OS 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 #ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_TEST_UTILS_H__ 5 #ifndef CHROMEOS_PLATFORM_UPDATE_ENGINE_TEST_UTILS_H__
6 #define CHROMEOS_PLATFORM_UPDATE_ENGINE_TEST_UTILS_H__ 6 #define CHROMEOS_PLATFORM_UPDATE_ENGINE_TEST_UTILS_H__
7 7
8 #include <set> 8 #include <set>
9 #include <string> 9 #include <string>
10 #include <vector> 10 #include <vector>
11 #include <gtest/gtest.h> 11 #include <gtest/gtest.h>
12 #include "base/scoped_ptr.h"
12 #include "update_engine/action.h" 13 #include "update_engine/action.h"
13 #include "update_engine/subprocess.h" 14 #include "update_engine/subprocess.h"
15 #include "update_engine/utils.h"
14 16
15 // These are some handy functions for unittests. 17 // These are some handy functions for unittests.
16 18
17 namespace chromeos_update_engine { 19 namespace chromeos_update_engine {
18 20
19 // Writes the data passed to path. The file at path will be overwritten if it 21 // Writes the data passed to path. The file at path will be overwritten if it
20 // exists. Returns true on success, false otherwise. 22 // exists. Returns true on success, false otherwise.
21 bool WriteFileVector(const std::string& path, const std::vector<char>& data); 23 bool WriteFileVector(const std::string& path, const std::vector<char>& data);
22 bool WriteFileString(const std::string& path, const std::string& data); 24 bool WriteFileString(const std::string& path, const std::string& data);
23 25
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after
112 args.push_back(dev_); 114 args.push_back(dev_);
113 int return_code = 0; 115 int return_code = 0;
114 EXPECT_TRUE(Subprocess::SynchronousExec(args, &return_code)); 116 EXPECT_TRUE(Subprocess::SynchronousExec(args, &return_code));
115 EXPECT_EQ(0, return_code); 117 EXPECT_EQ(0, return_code);
116 } 118 }
117 private: 119 private:
118 const std::string dev_; 120 const std::string dev_;
119 DISALLOW_COPY_AND_ASSIGN(ScopedLoopbackDeviceReleaser); 121 DISALLOW_COPY_AND_ASSIGN(ScopedLoopbackDeviceReleaser);
120 }; 122 };
121 123
124 class ScopedTempFile {
125 public:
126 ScopedTempFile() {
127 EXPECT_TRUE(utils::MakeTempFile("/tmp/update_engine_test_temp_file.XXXXXX",
128 &path_,
129 NULL));
130 unlinker_.reset(new ScopedPathUnlinker(path_));
131 }
132 const std::string& GetPath() { return path_; }
133 private:
134 std::string path_;
135 scoped_ptr<ScopedPathUnlinker> unlinker_;
136 };
137
122 // Useful actions for test 138 // Useful actions for test
123 139
124 class NoneType; 140 class NoneType;
125 141
126 template<typename T> 142 template<typename T>
127 class ObjectFeederAction; 143 class ObjectFeederAction;
128 144
129 template<typename T> 145 template<typename T>
130 class ActionTraits<ObjectFeederAction<T> > { 146 class ActionTraits<ObjectFeederAction<T> > {
131 public: 147 public:
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
184 } 200 }
185 static std::string StaticType() { return "ObjectCollectorAction"; } 201 static std::string StaticType() { return "ObjectCollectorAction"; }
186 std::string Type() const { return StaticType(); } 202 std::string Type() const { return StaticType(); }
187 const T& object() const { return object_; } 203 const T& object() const { return object_; }
188 private: 204 private:
189 T object_; 205 T object_;
190 }; 206 };
191 207
192 } // namespace chromeos_update_engine 208 } // namespace chromeos_update_engine
193 209
194 #endif // CHROMEOS_PLATFORM_UPDATE_ENGINE_TEST_UTILS_H__ 210 #endif // CHROMEOS_PLATFORM_UPDATE_ENGINE_TEST_UTILS_H__
OLDNEW
« no previous file with comments | « src/platform/update_engine/split_file_writer.cc ('k') | src/platform/update_engine/update_attempter.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698