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

Side by Side Diff: chromecast/crash/linux/dummy_minidump_generator_unittest.cc

Issue 2322573002: misc files A-P: Change ScopedTempDir::path() to GetPath() (Closed)
Patch Set: Just rebased 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 unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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 <stddef.h> 5 #include <stddef.h>
6 6
7 #include <string> 7 #include <string>
8 8
9 #include "base/files/file_util.h" 9 #include "base/files/file_util.h"
10 #include "base/files/scoped_temp_dir.h" 10 #include "base/files/scoped_temp_dir.h"
11 #include "base/rand_util.h" 11 #include "base/rand_util.h"
12 #include "chromecast/base/scoped_temp_file.h" 12 #include "chromecast/base/scoped_temp_file.h"
13 #include "chromecast/crash/linux/dummy_minidump_generator.h" 13 #include "chromecast/crash/linux/dummy_minidump_generator.h"
14 #include "testing/gtest/include/gtest/gtest.h" 14 #include "testing/gtest/include/gtest/gtest.h"
15 15
16 namespace chromecast { 16 namespace chromecast {
17 17
18 TEST(DummyMinidumpGeneratorTest, GenerateFailsWithInvalidPath) { 18 TEST(DummyMinidumpGeneratorTest, GenerateFailsWithInvalidPath) {
19 // Create directory in which to put minidump. 19 // Create directory in which to put minidump.
20 base::ScopedTempDir minidump_dir; 20 base::ScopedTempDir minidump_dir;
21 ASSERT_TRUE(minidump_dir.CreateUniqueTempDir()); 21 ASSERT_TRUE(minidump_dir.CreateUniqueTempDir());
22 22
23 // Attempt to generate a minidump from an invalid path. 23 // Attempt to generate a minidump from an invalid path.
24 DummyMinidumpGenerator generator("/path/does/not/exist/minidump.dmp"); 24 DummyMinidumpGenerator generator("/path/does/not/exist/minidump.dmp");
25 ASSERT_FALSE( 25 ASSERT_FALSE(generator.Generate(
26 generator.Generate(minidump_dir.path().Append("minidump.dmp").value())); 26 minidump_dir.GetPath().Append("minidump.dmp").value()));
27 } 27 }
28 28
29 TEST(DummyMinidumpGeneratorTest, GenerateSucceedsWithSmallSource) { 29 TEST(DummyMinidumpGeneratorTest, GenerateSucceedsWithSmallSource) {
30 // Create directory in which to put minidump. 30 // Create directory in which to put minidump.
31 base::ScopedTempDir minidump_dir; 31 base::ScopedTempDir minidump_dir;
32 ASSERT_TRUE(minidump_dir.CreateUniqueTempDir()); 32 ASSERT_TRUE(minidump_dir.CreateUniqueTempDir());
33 33
34 // Create a fake minidump file. 34 // Create a fake minidump file.
35 ScopedTempFile fake_minidump; 35 ScopedTempFile fake_minidump;
36 const std::string data("Test contents of the minidump file.\n"); 36 const std::string data("Test contents of the minidump file.\n");
37 ASSERT_EQ(static_cast<int>(data.size()), 37 ASSERT_EQ(static_cast<int>(data.size()),
38 base::WriteFile(fake_minidump.path(), data.c_str(), data.size())); 38 base::WriteFile(fake_minidump.path(), data.c_str(), data.size()));
39 39
40 DummyMinidumpGenerator generator(fake_minidump.path().value()); 40 DummyMinidumpGenerator generator(fake_minidump.path().value());
41 base::FilePath new_minidump = minidump_dir.path().Append("minidump.dmp"); 41 base::FilePath new_minidump = minidump_dir.GetPath().Append("minidump.dmp");
42 EXPECT_TRUE(generator.Generate(new_minidump.value())); 42 EXPECT_TRUE(generator.Generate(new_minidump.value()));
43 43
44 // Original file should not exist, and new file should contain original 44 // Original file should not exist, and new file should contain original
45 // contents. 45 // contents.
46 std::string copied_data; 46 std::string copied_data;
47 EXPECT_FALSE(base::PathExists(fake_minidump.path())); 47 EXPECT_FALSE(base::PathExists(fake_minidump.path()));
48 ASSERT_TRUE(base::PathExists(new_minidump)); 48 ASSERT_TRUE(base::PathExists(new_minidump));
49 EXPECT_TRUE(base::ReadFileToString(new_minidump, &copied_data)); 49 EXPECT_TRUE(base::ReadFileToString(new_minidump, &copied_data));
50 EXPECT_EQ(data, copied_data); 50 EXPECT_EQ(data, copied_data);
51 } 51 }
52 52
53 TEST(DummyMinidumpGeneratorTest, GenerateSucceedsWithLargeSource) { 53 TEST(DummyMinidumpGeneratorTest, GenerateSucceedsWithLargeSource) {
54 // Create directory in which to put minidump. 54 // Create directory in which to put minidump.
55 base::ScopedTempDir minidump_dir; 55 base::ScopedTempDir minidump_dir;
56 ASSERT_TRUE(minidump_dir.CreateUniqueTempDir()); 56 ASSERT_TRUE(minidump_dir.CreateUniqueTempDir());
57 57
58 // Create a large fake minidump file. 58 // Create a large fake minidump file.
59 ScopedTempFile fake_minidump; 59 ScopedTempFile fake_minidump;
60 size_t str_len = 32768 * 10 + 1; 60 size_t str_len = 32768 * 10 + 1;
61 const std::string data = base::RandBytesAsString(str_len); 61 const std::string data = base::RandBytesAsString(str_len);
62 62
63 // Write the string to the file. 63 // Write the string to the file.
64 ASSERT_EQ(static_cast<int>(data.size()), 64 ASSERT_EQ(static_cast<int>(data.size()),
65 base::WriteFile(fake_minidump.path(), data.c_str(), data.size())); 65 base::WriteFile(fake_minidump.path(), data.c_str(), data.size()));
66 66
67 base::FilePath new_minidump = minidump_dir.path().Append("minidump.dmp"); 67 base::FilePath new_minidump = minidump_dir.GetPath().Append("minidump.dmp");
68 DummyMinidumpGenerator generator(fake_minidump.path().value()); 68 DummyMinidumpGenerator generator(fake_minidump.path().value());
69 ASSERT_TRUE(generator.Generate(new_minidump.value())); 69 ASSERT_TRUE(generator.Generate(new_minidump.value()));
70 70
71 // Original file should not exist, and new file should contain original 71 // Original file should not exist, and new file should contain original
72 // contents. 72 // contents.
73 std::string copied_data; 73 std::string copied_data;
74 EXPECT_FALSE(base::PathExists(fake_minidump.path())); 74 EXPECT_FALSE(base::PathExists(fake_minidump.path()));
75 ASSERT_TRUE(base::PathExists(new_minidump)); 75 ASSERT_TRUE(base::PathExists(new_minidump));
76 EXPECT_TRUE(base::ReadFileToString(new_minidump, &copied_data)); 76 EXPECT_TRUE(base::ReadFileToString(new_minidump, &copied_data));
77 EXPECT_EQ(data, copied_data); 77 EXPECT_EQ(data, copied_data);
78 } 78 }
79 79
80 } // namespace chromecast 80 } // namespace chromecast
OLDNEW
« no previous file with comments | « chromecast/base/error_codes_unittest.cc ('k') | chromecast/crash/linux/minidump_uploader_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698