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

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

Issue 1875623002: Convert //chromecast from scoped_ptr to std::unique_ptr (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 8 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
« no previous file with comments | « chromecast/crash/linux/dump_info.cc ('k') | chromecast/crash/linux/minidump_writer_unittest.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 <time.h> 5 #include <time.h>
6 6
7 #include "base/values.h" 7 #include "base/values.h"
8 #include "chromecast/crash/linux/crash_testing_utils.h" 8 #include "chromecast/crash/linux/crash_testing_utils.h"
9 #include "chromecast/crash/linux/dump_info.h" 9 #include "chromecast/crash/linux/dump_info.h"
10 #include "testing/gtest/include/gtest/gtest.h" 10 #include "testing/gtest/include/gtest/gtest.h"
11 11
12 namespace chromecast { 12 namespace chromecast {
13 13
14 TEST(DumpInfoTest, EmptyStringIsNotValid) { 14 TEST(DumpInfoTest, EmptyStringIsNotValid) {
15 scoped_ptr<DumpInfo> dump_info(CreateDumpInfo("")); 15 std::unique_ptr<DumpInfo> dump_info(CreateDumpInfo(""));
16 ASSERT_FALSE(dump_info->valid()); 16 ASSERT_FALSE(dump_info->valid());
17 } 17 }
18 18
19 TEST(DumpInfoTest, TooFewFieldsIsNotValid) { 19 TEST(DumpInfoTest, TooFewFieldsIsNotValid) {
20 scoped_ptr<DumpInfo> dump_info(CreateDumpInfo( 20 std::unique_ptr<DumpInfo> dump_info(
21 "{" 21 CreateDumpInfo("{"
22 "\"name\": \"name\"," 22 "\"name\": \"name\","
23 "\"dump_time\" : \"2001-11-12 18:31:01\"," 23 "\"dump_time\" : \"2001-11-12 18:31:01\","
24 "\"dump\": \"dump_string\"" 24 "\"dump\": \"dump_string\""
25 "}")); 25 "}"));
26 ASSERT_FALSE(dump_info->valid()); 26 ASSERT_FALSE(dump_info->valid());
27 } 27 }
28 28
29 TEST(DumpInfoTest, BadTimeStringIsNotValid) { 29 TEST(DumpInfoTest, BadTimeStringIsNotValid) {
30 scoped_ptr<DumpInfo> info(CreateDumpInfo( 30 std::unique_ptr<DumpInfo> info(
31 "{" 31 CreateDumpInfo("{"
32 "\"name\": \"name\"," 32 "\"name\": \"name\","
33 "\"dump_time\" : \"Mar 23 2014 01:23:45\"," 33 "\"dump_time\" : \"Mar 23 2014 01:23:45\","
34 "\"dump\": \"dump_string\"," 34 "\"dump\": \"dump_string\","
35 "\"uptime\": \"123456789\"," 35 "\"uptime\": \"123456789\","
36 "\"logfile\": \"logfile.log\"" 36 "\"logfile\": \"logfile.log\""
37 "}")); 37 "}"));
38 ASSERT_FALSE(info->valid()); 38 ASSERT_FALSE(info->valid());
39 } 39 }
40 40
41 TEST(DumpInfoTest, AllRequiredFieldsIsValid) { 41 TEST(DumpInfoTest, AllRequiredFieldsIsValid) {
42 scoped_ptr<DumpInfo> info(CreateDumpInfo( 42 std::unique_ptr<DumpInfo> info(
43 "{" 43 CreateDumpInfo("{"
44 "\"name\": \"name\"," 44 "\"name\": \"name\","
45 "\"dump_time\" : \"2001-11-12 18:31:01\"," 45 "\"dump_time\" : \"2001-11-12 18:31:01\","
46 "\"dump\": \"dump_string\"," 46 "\"dump\": \"dump_string\","
47 "\"uptime\": \"123456789\"," 47 "\"uptime\": \"123456789\","
48 "\"logfile\": \"logfile.log\"" 48 "\"logfile\": \"logfile.log\""
49 "}")); 49 "}"));
50 struct tm tm = {0}; 50 struct tm tm = {0};
51 tm.tm_isdst = 0; 51 tm.tm_isdst = 0;
52 tm.tm_sec = 1; 52 tm.tm_sec = 1;
53 tm.tm_min = 31; 53 tm.tm_min = 31;
54 tm.tm_hour = 18; 54 tm.tm_hour = 18;
55 tm.tm_mday = 12; 55 tm.tm_mday = 12;
56 tm.tm_mon = 10; 56 tm.tm_mon = 10;
57 tm.tm_year = 101; 57 tm.tm_year = 101;
58 time_t dump_time = mktime(&tm); 58 time_t dump_time = mktime(&tm);
59 59
60 ASSERT_TRUE(info->valid()); 60 ASSERT_TRUE(info->valid());
61 ASSERT_EQ("name", info->params().process_name); 61 ASSERT_EQ("name", info->params().process_name);
62 ASSERT_EQ(dump_time, info->dump_time()); 62 ASSERT_EQ(dump_time, info->dump_time());
63 ASSERT_EQ("dump_string", info->crashed_process_dump()); 63 ASSERT_EQ("dump_string", info->crashed_process_dump());
64 ASSERT_EQ(123456789u, info->params().process_uptime); 64 ASSERT_EQ(123456789u, info->params().process_uptime);
65 ASSERT_EQ("logfile.log", info->logfile()); 65 ASSERT_EQ("logfile.log", info->logfile());
66 } 66 }
67 67
68 TEST(DumpInfoTest, EmptyProcessNameIsValid) { 68 TEST(DumpInfoTest, EmptyProcessNameIsValid) {
69 scoped_ptr<DumpInfo> dump_info(CreateDumpInfo( 69 std::unique_ptr<DumpInfo> dump_info(
70 "{" 70 CreateDumpInfo("{"
71 "\"name\": \"\"," 71 "\"name\": \"\","
72 "\"dump_time\" : \"2001-11-12 18:31:01\"," 72 "\"dump_time\" : \"2001-11-12 18:31:01\","
73 "\"dump\": \"dump_string\"," 73 "\"dump\": \"dump_string\","
74 "\"uptime\": \"123456789\"," 74 "\"uptime\": \"123456789\","
75 "\"logfile\": \"logfile.log\"" 75 "\"logfile\": \"logfile.log\""
76 "}")); 76 "}"));
77 ASSERT_TRUE(dump_info->valid()); 77 ASSERT_TRUE(dump_info->valid());
78 } 78 }
79 79
80 TEST(DumpInfoTest, SomeRequiredFieldsEmptyIsValid) { 80 TEST(DumpInfoTest, SomeRequiredFieldsEmptyIsValid) {
81 scoped_ptr<DumpInfo> info(CreateDumpInfo( 81 std::unique_ptr<DumpInfo> info(
82 "{" 82 CreateDumpInfo("{"
83 "\"name\": \"name\"," 83 "\"name\": \"name\","
84 "\"dump_time\" : \"2001-11-12 18:31:01\"," 84 "\"dump_time\" : \"2001-11-12 18:31:01\","
85 "\"dump\": \"\"," 85 "\"dump\": \"\","
86 "\"uptime\": \"\"," 86 "\"uptime\": \"\","
87 "\"logfile\": \"\"" 87 "\"logfile\": \"\""
88 "}")); 88 "}"));
89 struct tm tm = {0}; 89 struct tm tm = {0};
90 tm.tm_isdst = 0; 90 tm.tm_isdst = 0;
91 tm.tm_sec = 1; 91 tm.tm_sec = 1;
92 tm.tm_min = 31; 92 tm.tm_min = 31;
93 tm.tm_hour = 18; 93 tm.tm_hour = 18;
94 tm.tm_mday = 12; 94 tm.tm_mday = 12;
95 tm.tm_mon = 10; 95 tm.tm_mon = 10;
96 tm.tm_year = 101; 96 tm.tm_year = 101;
97 time_t dump_time = mktime(&tm); 97 time_t dump_time = mktime(&tm);
98 98
99 ASSERT_TRUE(info->valid()); 99 ASSERT_TRUE(info->valid());
100 ASSERT_EQ("name", info->params().process_name); 100 ASSERT_EQ("name", info->params().process_name);
101 ASSERT_EQ(dump_time, info->dump_time()); 101 ASSERT_EQ(dump_time, info->dump_time());
102 ASSERT_EQ("", info->crashed_process_dump()); 102 ASSERT_EQ("", info->crashed_process_dump());
103 ASSERT_EQ(0u, info->params().process_uptime); 103 ASSERT_EQ(0u, info->params().process_uptime);
104 ASSERT_EQ("", info->logfile()); 104 ASSERT_EQ("", info->logfile());
105 } 105 }
106 106
107 TEST(DumpInfoTest, AllOptionalFieldsIsValid) { 107 TEST(DumpInfoTest, AllOptionalFieldsIsValid) {
108 scoped_ptr<DumpInfo> info(CreateDumpInfo( 108 std::unique_ptr<DumpInfo> info(
109 "{" 109 CreateDumpInfo("{"
110 "\"name\": \"name\"," 110 "\"name\": \"name\","
111 "\"dump_time\" : \"2001-11-12 18:31:01\"," 111 "\"dump_time\" : \"2001-11-12 18:31:01\","
112 "\"dump\": \"dump_string\"," 112 "\"dump\": \"dump_string\","
113 "\"uptime\": \"123456789\"," 113 "\"uptime\": \"123456789\","
114 "\"logfile\": \"logfile.log\"," 114 "\"logfile\": \"logfile.log\","
115 "\"suffix\": \"suffix\"," 115 "\"suffix\": \"suffix\","
116 "\"prev_app_name\": \"previous_app\"," 116 "\"prev_app_name\": \"previous_app\","
117 "\"cur_app_name\": \"current_app\"," 117 "\"cur_app_name\": \"current_app\","
118 "\"last_app_name\": \"last_app\"," 118 "\"last_app_name\": \"last_app\","
119 "\"release_version\": \"RELEASE\"," 119 "\"release_version\": \"RELEASE\","
120 "\"build_number\": \"BUILD_NUMBER\"," 120 "\"build_number\": \"BUILD_NUMBER\","
121 "\"reason\": \"foo\"" 121 "\"reason\": \"foo\""
122 "}")); 122 "}"));
123 struct tm tm = {0}; 123 struct tm tm = {0};
124 tm.tm_isdst = 0; 124 tm.tm_isdst = 0;
125 tm.tm_sec = 1; 125 tm.tm_sec = 1;
126 tm.tm_min = 31; 126 tm.tm_min = 31;
127 tm.tm_hour = 18; 127 tm.tm_hour = 18;
128 tm.tm_mday = 12; 128 tm.tm_mday = 12;
129 tm.tm_mon = 10; 129 tm.tm_mon = 10;
130 tm.tm_year = 101; 130 tm.tm_year = 101;
131 time_t dump_time = mktime(&tm); 131 time_t dump_time = mktime(&tm);
132 132
133 ASSERT_TRUE(info->valid()); 133 ASSERT_TRUE(info->valid());
134 ASSERT_EQ("name", info->params().process_name); 134 ASSERT_EQ("name", info->params().process_name);
135 ASSERT_EQ(dump_time, info->dump_time()); 135 ASSERT_EQ(dump_time, info->dump_time());
136 ASSERT_EQ("dump_string", info->crashed_process_dump()); 136 ASSERT_EQ("dump_string", info->crashed_process_dump());
137 ASSERT_EQ(123456789u, info->params().process_uptime); 137 ASSERT_EQ(123456789u, info->params().process_uptime);
138 ASSERT_EQ("logfile.log", info->logfile()); 138 ASSERT_EQ("logfile.log", info->logfile());
139 139
140 ASSERT_EQ("suffix", info->params().suffix); 140 ASSERT_EQ("suffix", info->params().suffix);
141 ASSERT_EQ("previous_app", info->params().previous_app_name); 141 ASSERT_EQ("previous_app", info->params().previous_app_name);
142 ASSERT_EQ("current_app", info->params().current_app_name); 142 ASSERT_EQ("current_app", info->params().current_app_name);
143 ASSERT_EQ("last_app", info->params().last_app_name); 143 ASSERT_EQ("last_app", info->params().last_app_name);
144 ASSERT_EQ("foo", info->params().reason); 144 ASSERT_EQ("foo", info->params().reason);
145 } 145 }
146 146
147 TEST(DumpInfoTest, SomeOptionalFieldsIsValid) { 147 TEST(DumpInfoTest, SomeOptionalFieldsIsValid) {
148 scoped_ptr<DumpInfo> info(CreateDumpInfo( 148 std::unique_ptr<DumpInfo> info(
149 "{" 149 CreateDumpInfo("{"
150 "\"name\": \"name\"," 150 "\"name\": \"name\","
151 "\"dump_time\" : \"2001-11-12 18:31:01\"," 151 "\"dump_time\" : \"2001-11-12 18:31:01\","
152 "\"dump\": \"dump_string\"," 152 "\"dump\": \"dump_string\","
153 "\"uptime\": \"123456789\"," 153 "\"uptime\": \"123456789\","
154 "\"logfile\": \"logfile.log\"," 154 "\"logfile\": \"logfile.log\","
155 "\"suffix\": \"suffix\"," 155 "\"suffix\": \"suffix\","
156 "\"prev_app_name\": \"previous_app\"" 156 "\"prev_app_name\": \"previous_app\""
157 "}")); 157 "}"));
158 struct tm tm = {0}; 158 struct tm tm = {0};
159 tm.tm_isdst = 0; 159 tm.tm_isdst = 0;
160 tm.tm_sec = 1; 160 tm.tm_sec = 1;
161 tm.tm_min = 31; 161 tm.tm_min = 31;
162 tm.tm_hour = 18; 162 tm.tm_hour = 18;
163 tm.tm_mday = 12; 163 tm.tm_mday = 12;
164 tm.tm_mon = 10; 164 tm.tm_mon = 10;
165 tm.tm_year = 101; 165 tm.tm_year = 101;
166 time_t dump_time = mktime(&tm); 166 time_t dump_time = mktime(&tm);
167 167
168 ASSERT_TRUE(info->valid()); 168 ASSERT_TRUE(info->valid());
169 ASSERT_EQ("name", info->params().process_name); 169 ASSERT_EQ("name", info->params().process_name);
170 ASSERT_EQ(dump_time, info->dump_time()); 170 ASSERT_EQ(dump_time, info->dump_time());
171 ASSERT_EQ("dump_string", info->crashed_process_dump()); 171 ASSERT_EQ("dump_string", info->crashed_process_dump());
172 ASSERT_EQ(123456789u, info->params().process_uptime); 172 ASSERT_EQ(123456789u, info->params().process_uptime);
173 ASSERT_EQ("logfile.log", info->logfile()); 173 ASSERT_EQ("logfile.log", info->logfile());
174 174
175 ASSERT_EQ("suffix", info->params().suffix); 175 ASSERT_EQ("suffix", info->params().suffix);
176 ASSERT_EQ("previous_app", info->params().previous_app_name); 176 ASSERT_EQ("previous_app", info->params().previous_app_name);
177 } 177 }
178 178
179 TEST(DumpInfoTest, ExtraFieldsIsNotValid) { 179 TEST(DumpInfoTest, ExtraFieldsIsNotValid) {
180 scoped_ptr<DumpInfo> info(CreateDumpInfo( 180 std::unique_ptr<DumpInfo> info(
181 "{" 181 CreateDumpInfo("{"
182 "\"name\": \"name\"," 182 "\"name\": \"name\","
183 "\"dump_time\" : \"2001-11-12 18:31:01\"," 183 "\"dump_time\" : \"2001-11-12 18:31:01\","
184 "\"dump\": \"dump_string\"," 184 "\"dump\": \"dump_string\","
185 "\"uptime\": \"123456789\"," 185 "\"uptime\": \"123456789\","
186 "\"logfile\": \"logfile.log\"," 186 "\"logfile\": \"logfile.log\","
187 "\"suffix\": \"suffix\"," 187 "\"suffix\": \"suffix\","
188 "\"prev_app_name\": \"previous_app\"," 188 "\"prev_app_name\": \"previous_app\","
189 "\"cur_app_name\": \"current_app\"," 189 "\"cur_app_name\": \"current_app\","
190 "\"last_app_name\": \"last_app\"," 190 "\"last_app_name\": \"last_app\","
191 "\"release_version\": \"RELEASE\"," 191 "\"release_version\": \"RELEASE\","
192 "\"build_number\": \"BUILD_NUMBER\"," 192 "\"build_number\": \"BUILD_NUMBER\","
193 "\"hello\": \"extra_field\"" 193 "\"hello\": \"extra_field\""
194 "}")); 194 "}"));
195 ASSERT_FALSE(info->valid()); 195 ASSERT_FALSE(info->valid());
196 } 196 }
197 197
198 } // namespace chromecast 198 } // namespace chromecast
OLDNEW
« no previous file with comments | « chromecast/crash/linux/dump_info.cc ('k') | chromecast/crash/linux/minidump_writer_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698