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

Side by Side Diff: components/metrics/metrics_service_unittest.cc

Issue 1985733002: Always check if providers have initial stability metrics. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: added test Created 4 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
« no previous file with comments | « components/metrics/metrics_service.cc ('k') | components/metrics/test_metrics_provider.h » ('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 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 "components/metrics/metrics_service.h" 5 #include "components/metrics/metrics_service.h"
6 6
7 #include <stdint.h> 7 #include <stdint.h>
8 8
9 #include <memory> 9 #include <memory>
10 #include <string> 10 #include <string>
(...skipping 158 matching lines...) Expand 10 before | Expand all | Expand 10 after
169 169
170 TestMetricsServiceClient client; 170 TestMetricsServiceClient client;
171 TestMetricsService service( 171 TestMetricsService service(
172 GetMetricsStateManager(), &client, GetLocalState()); 172 GetMetricsStateManager(), &client, GetLocalState());
173 173
174 TestMetricsProvider* test_provider = new TestMetricsProvider(); 174 TestMetricsProvider* test_provider = new TestMetricsProvider();
175 service.RegisterMetricsProvider( 175 service.RegisterMetricsProvider(
176 std::unique_ptr<MetricsProvider>(test_provider)); 176 std::unique_ptr<MetricsProvider>(test_provider));
177 177
178 service.InitializeMetricsRecordingState(); 178 service.InitializeMetricsRecordingState();
179 EXPECT_TRUE(test_provider->has_initial_stability_metrics_called());
Alexei Svitkine (slow) 2016/05/16 17:02:31 Move this to the end of the function and add a com
bcwhite 2016/05/16 17:30:49 Done. Though I put it before the other test_provi
180
179 // No initial stability log should be generated. 181 // No initial stability log should be generated.
180 EXPECT_FALSE(service.log_manager()->has_unsent_logs()); 182 EXPECT_FALSE(service.log_manager()->has_unsent_logs());
181 EXPECT_FALSE(service.log_manager()->has_staged_log()); 183 EXPECT_FALSE(service.log_manager()->has_staged_log());
182 184
183 // The test provider should not have been called upon to provide initial 185 // The test provider should not have been called upon to provide initial
184 // stability nor regular stability metrics. 186 // stability nor regular stability metrics.
185 EXPECT_FALSE(test_provider->provide_initial_stability_metrics_called()); 187 EXPECT_FALSE(test_provider->provide_initial_stability_metrics_called());
186 EXPECT_FALSE(test_provider->provide_stability_metrics_called()); 188 EXPECT_FALSE(test_provider->provide_stability_metrics_called());
187 } 189 }
188 190
(...skipping 20 matching lines...) Expand all
209 211
210 TestMetricsService service( 212 TestMetricsService service(
211 GetMetricsStateManager(), &client, GetLocalState()); 213 GetMetricsStateManager(), &client, GetLocalState());
212 // Add a metrics provider that requests a stability log. 214 // Add a metrics provider that requests a stability log.
213 TestMetricsProvider* test_provider = new TestMetricsProvider(); 215 TestMetricsProvider* test_provider = new TestMetricsProvider();
214 test_provider->set_has_initial_stability_metrics(true); 216 test_provider->set_has_initial_stability_metrics(true);
215 service.RegisterMetricsProvider( 217 service.RegisterMetricsProvider(
216 std::unique_ptr<MetricsProvider>(test_provider)); 218 std::unique_ptr<MetricsProvider>(test_provider));
217 219
218 service.InitializeMetricsRecordingState(); 220 service.InitializeMetricsRecordingState();
221 EXPECT_TRUE(test_provider->has_initial_stability_metrics_called());
219 222
220 // The initial stability log should be generated and persisted in unsent logs. 223 // The initial stability log should be generated and persisted in unsent logs.
221 MetricsLogManager* log_manager = service.log_manager(); 224 MetricsLogManager* log_manager = service.log_manager();
222 EXPECT_TRUE(log_manager->has_unsent_logs()); 225 EXPECT_TRUE(log_manager->has_unsent_logs());
223 EXPECT_FALSE(log_manager->has_staged_log()); 226 EXPECT_FALSE(log_manager->has_staged_log());
224 227
225 // The test provider should have been called upon to provide initial 228 // The test provider should have been called upon to provide initial
226 // stability and regular stability metrics. 229 // stability and regular stability metrics.
227 EXPECT_TRUE(test_provider->provide_initial_stability_metrics_called()); 230 EXPECT_TRUE(test_provider->provide_initial_stability_metrics_called());
228 EXPECT_TRUE(test_provider->provide_stability_metrics_called()); 231 EXPECT_TRUE(test_provider->provide_stability_metrics_called());
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
273 276
274 GetLocalState()->SetBoolean(prefs::kStabilityExitedCleanly, false); 277 GetLocalState()->SetBoolean(prefs::kStabilityExitedCleanly, false);
275 278
276 TestMetricsService service( 279 TestMetricsService service(
277 GetMetricsStateManager(), &client, GetLocalState()); 280 GetMetricsStateManager(), &client, GetLocalState());
278 // Add a provider. 281 // Add a provider.
279 TestMetricsProvider* test_provider = new TestMetricsProvider(); 282 TestMetricsProvider* test_provider = new TestMetricsProvider();
280 service.RegisterMetricsProvider( 283 service.RegisterMetricsProvider(
281 std::unique_ptr<MetricsProvider>(test_provider)); 284 std::unique_ptr<MetricsProvider>(test_provider));
282 service.InitializeMetricsRecordingState(); 285 service.InitializeMetricsRecordingState();
286 EXPECT_TRUE(test_provider->has_initial_stability_metrics_called());
283 287
284 // The initial stability log should be generated and persisted in unsent logs. 288 // The initial stability log should be generated and persisted in unsent logs.
285 MetricsLogManager* log_manager = service.log_manager(); 289 MetricsLogManager* log_manager = service.log_manager();
286 EXPECT_TRUE(log_manager->has_unsent_logs()); 290 EXPECT_TRUE(log_manager->has_unsent_logs());
287 EXPECT_FALSE(log_manager->has_staged_log()); 291 EXPECT_FALSE(log_manager->has_staged_log());
288 292
289 // The test provider should have been called upon to provide initial 293 // The test provider should have been called upon to provide initial
290 // stability and regular stability metrics. 294 // stability and regular stability metrics.
291 EXPECT_TRUE(test_provider->provide_initial_stability_metrics_called()); 295 EXPECT_TRUE(test_provider->provide_initial_stability_metrics_called());
292 EXPECT_TRUE(test_provider->provide_stability_metrics_called()); 296 EXPECT_TRUE(test_provider->provide_stability_metrics_called());
(...skipping 111 matching lines...) Expand 10 before | Expand all | Expand 10 after
404 TestMetricsProvider* test_provider = new TestMetricsProvider(); 408 TestMetricsProvider* test_provider = new TestMetricsProvider();
405 service.RegisterMetricsProvider( 409 service.RegisterMetricsProvider(
406 std::unique_ptr<MetricsProvider>(test_provider)); 410 std::unique_ptr<MetricsProvider>(test_provider));
407 411
408 service.InitializeMetricsRecordingState(); 412 service.InitializeMetricsRecordingState();
409 413
410 EXPECT_TRUE(test_provider->init_called()); 414 EXPECT_TRUE(test_provider->init_called());
411 } 415 }
412 416
413 } // namespace metrics 417 } // namespace metrics
OLDNEW
« no previous file with comments | « components/metrics/metrics_service.cc ('k') | components/metrics/test_metrics_provider.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698