| OLD | NEW |
| 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 #include "update_engine/test_utils.h" | 5 #include "update_engine/test_utils.h" |
| 6 #include <sys/stat.h> | 6 #include <sys/stat.h> |
| 7 #include <sys/types.h> | 7 #include <sys/types.h> |
| 8 #include <errno.h> | 8 #include <errno.h> |
| 9 #include <stdio.h> | 9 #include <stdio.h> |
| 10 #include <stdlib.h> | 10 #include <stdlib.h> |
| (...skipping 159 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 170 if (a.size() != b.size()) | 170 if (a.size() != b.size()) |
| 171 return false; | 171 return false; |
| 172 for (unsigned int i = 0; i < a.size(); i++) { | 172 for (unsigned int i = 0; i < a.size(); i++) { |
| 173 EXPECT_EQ(a[i], b[i]) << "offset: " << i; | 173 EXPECT_EQ(a[i], b[i]) << "offset: " << i; |
| 174 } | 174 } |
| 175 return true; | 175 return true; |
| 176 } | 176 } |
| 177 | 177 |
| 178 void CreateExtImageAtPath(const string& path, vector<string>* out_paths) { | 178 void CreateExtImageAtPath(const string& path, vector<string>* out_paths) { |
| 179 // create 10MiB sparse file | 179 // create 10MiB sparse file |
| 180 const char* const mount_path = kMountPath.c_str(); | |
| 181 EXPECT_EQ(0, System(StringPrintf("dd if=/dev/zero of=%s" | 180 EXPECT_EQ(0, System(StringPrintf("dd if=/dev/zero of=%s" |
| 182 " seek=10485759 bs=1 count=1", | 181 " seek=10485759 bs=1 count=1", |
| 183 path.c_str()))); | 182 path.c_str()))); |
| 184 EXPECT_EQ(0, System(StringPrintf("mkfs.ext3 -F %s", path.c_str()))); | 183 EXPECT_EQ(0, System(StringPrintf("mkfs.ext3 -F %s", path.c_str()))); |
| 185 EXPECT_EQ(0, System(StringPrintf("mkdir -p %s", mount_path))); | 184 EXPECT_EQ(0, System(StringPrintf("mkdir -p %s", kMountPath))); |
| 186 EXPECT_EQ(0, System(StringPrintf("mount -o loop %s %s", path.c_str(), | 185 EXPECT_EQ(0, System(StringPrintf("mount -o loop %s %s", path.c_str(), |
| 187 mount_path))); | 186 kMountPath))); |
| 188 EXPECT_EQ(0, System(StringPrintf("echo hi > %s/hi", mount_path))); | 187 EXPECT_EQ(0, System(StringPrintf("echo hi > %s/hi", kMountPath))); |
| 189 EXPECT_EQ(0, System(StringPrintf("echo hello > %s/hello", mount_path))); | 188 EXPECT_EQ(0, System(StringPrintf("echo hello > %s/hello", kMountPath))); |
| 190 EXPECT_EQ(0, System(StringPrintf("mkdir %s/some_dir", mount_path))); | 189 EXPECT_EQ(0, System(StringPrintf("mkdir %s/some_dir", kMountPath))); |
| 191 EXPECT_EQ(0, System(StringPrintf("mkdir %s/some_dir/empty_dir", mount_path))); | 190 EXPECT_EQ(0, System(StringPrintf("mkdir %s/some_dir/empty_dir", kMountPath))); |
| 192 EXPECT_EQ(0, System(StringPrintf("mkdir %s/some_dir/mnt", mount_path))); | 191 EXPECT_EQ(0, System(StringPrintf("mkdir %s/some_dir/mnt", kMountPath))); |
| 193 EXPECT_EQ(0, System(StringPrintf("echo T > %s/some_dir/test", mount_path))); | 192 EXPECT_EQ(0, System(StringPrintf("echo T > %s/some_dir/test", kMountPath))); |
| 194 EXPECT_EQ(0, System(StringPrintf("mkfifo %s/some_dir/fifo", mount_path))); | 193 EXPECT_EQ(0, System(StringPrintf("mkfifo %s/some_dir/fifo", kMountPath))); |
| 195 EXPECT_EQ(0, System(StringPrintf("mknod %s/cdev c 2 3", mount_path))); | 194 EXPECT_EQ(0, System(StringPrintf("mknod %s/cdev c 2 3", kMountPath))); |
| 196 EXPECT_EQ(0, System(StringPrintf("ln -s /some/target %s/sym", mount_path))); | 195 EXPECT_EQ(0, System(StringPrintf("ln -s /some/target %s/sym", kMountPath))); |
| 197 EXPECT_EQ(0, System(StringPrintf("ln %s/some_dir/test %s/testlink", | 196 EXPECT_EQ(0, System(StringPrintf("ln %s/some_dir/test %s/testlink", |
| 198 mount_path, mount_path))); | 197 kMountPath, kMountPath))); |
| 199 EXPECT_EQ(0, System(StringPrintf("umount %s", mount_path))); | 198 EXPECT_EQ(0, System(StringPrintf("umount %s", kMountPath))); |
| 200 | 199 |
| 201 if (out_paths) { | 200 if (out_paths) { |
| 202 out_paths->clear(); | 201 out_paths->clear(); |
| 203 out_paths->push_back(""); | 202 out_paths->push_back(""); |
| 204 out_paths->push_back("/hi"); | 203 out_paths->push_back("/hi"); |
| 205 out_paths->push_back("/hello"); | 204 out_paths->push_back("/hello"); |
| 206 out_paths->push_back("/some_dir"); | 205 out_paths->push_back("/some_dir"); |
| 207 out_paths->push_back("/some_dir/empty_dir"); | 206 out_paths->push_back("/some_dir/empty_dir"); |
| 208 out_paths->push_back("/some_dir/mnt"); | 207 out_paths->push_back("/some_dir/mnt"); |
| 209 out_paths->push_back("/some_dir/test"); | 208 out_paths->push_back("/some_dir/test"); |
| (...skipping 45 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 255 EXPECT_TRUE(expected_paths.empty()); | 254 EXPECT_TRUE(expected_paths.empty()); |
| 256 if (!expected_paths.empty()) { | 255 if (!expected_paths.empty()) { |
| 257 for (set<string>::const_iterator it = expected_paths.begin(); | 256 for (set<string>::const_iterator it = expected_paths.begin(); |
| 258 it != expected_paths.end(); ++it) { | 257 it != expected_paths.end(); ++it) { |
| 259 LOG(INFO) << "extra path: " << *it; | 258 LOG(INFO) << "extra path: " << *it; |
| 260 } | 259 } |
| 261 } | 260 } |
| 262 } | 261 } |
| 263 | 262 |
| 264 } // namespace chromeos_update_engine | 263 } // namespace chromeos_update_engine |
| OLD | NEW |