blob: 31e520ecdbb75084a0d72497ae70a7a4b17f36ba [file] [log] [blame]
[email protected]728de072014-05-21 09:20:321// Copyright 2014 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#include "components/metrics/test_metrics_service_client.h"
6
holte7b74c622017-01-23 23:13:077#include <memory>
8
[email protected]4b4892b2014-05-22 15:06:159#include "base/callback.h"
[email protected]0d5a61a82014-05-31 22:28:3410#include "components/metrics/metrics_log_uploader.h"
asvitkine4c1d1ef2014-09-29 20:57:3211#include "components/metrics/proto/chrome_user_metrics_extension.pb.h"
[email protected]4b4892b2014-05-22 15:06:1512
[email protected]728de072014-05-21 09:20:3213namespace metrics {
14
holte7b74c622017-01-23 23:13:0715namespace {
16
17class TestMetricsLogUploader : public MetricsLogUploader {
18 public:
19 TestMetricsLogUploader(const std::string& server_url,
20 const std::string& mime_type,
21 const base::Callback<void(int)>& on_upload_complete)
22 : MetricsLogUploader(server_url, mime_type, on_upload_complete) {}
23 ~TestMetricsLogUploader() override = default;
24
25 // MetricsLogUploader:
26 void UploadLog(const std::string& compressed_log_data,
27 const std::string& log_hash) override {
28 // Never succeeds at uploading.
29 on_upload_complete_.Run(404);
30 }
31};
32
33} // namespace
34
[email protected]09dee82d2014-05-22 14:00:5335// static
36const char TestMetricsServiceClient::kBrandForTesting[] = "brand_for_testing";
37
[email protected]91b1d912014-06-05 10:52:0838TestMetricsServiceClient::TestMetricsServiceClient()
asvitkine4c1d1ef2014-09-29 20:57:3239 : version_string_("5.0.322.0-64-devel"),
jwd421086f2016-03-21 14:40:4240 product_(ChromeUserMetricsExtension::CHROME),
41 reporting_is_managed_(false),
gayanedaaf3a02016-06-15 16:30:2142 enable_default_(EnableMetricsDefault::DEFAULT_UNKNOWN) {}
[email protected]728de072014-05-21 09:20:3243
44TestMetricsServiceClient::~TestMetricsServiceClient() {
45}
46
blundellfecea528d2015-10-21 10:10:2247metrics::MetricsService* TestMetricsServiceClient::GetMetricsService() {
48 return nullptr;
49}
50
[email protected]9d1b0152014-07-09 18:53:2251void TestMetricsServiceClient::SetMetricsClientId(
52 const std::string& client_id) {
[email protected]728de072014-05-21 09:20:3253 client_id_ = client_id;
54}
55
asvitkine4c1d1ef2014-09-29 20:57:3256int32_t TestMetricsServiceClient::GetProduct() {
57 return product_;
58}
59
[email protected]728de072014-05-21 09:20:3260std::string TestMetricsServiceClient::GetApplicationLocale() {
61 return "en-US";
62}
63
64bool TestMetricsServiceClient::GetBrand(std::string* brand_code) {
[email protected]09dee82d2014-05-22 14:00:5365 *brand_code = kBrandForTesting;
[email protected]728de072014-05-21 09:20:3266 return true;
67}
68
69SystemProfileProto::Channel TestMetricsServiceClient::GetChannel() {
70 return SystemProfileProto::CHANNEL_BETA;
71}
72
73std::string TestMetricsServiceClient::GetVersionString() {
[email protected]bfb77b52014-06-07 01:54:0174 return version_string_;
[email protected]728de072014-05-21 09:20:3275}
76
ishermanb6705682015-08-29 00:01:0077void TestMetricsServiceClient::InitializeSystemProfileMetrics(
[email protected]06c10832014-05-23 10:55:5578 const base::Closure& done_callback) {
79 done_callback.Run();
80}
81
ishermanb6705682015-08-29 00:01:0082void TestMetricsServiceClient::CollectFinalMetricsForLog(
[email protected]4b4892b2014-05-22 15:06:1583 const base::Closure& done_callback) {
84 done_callback.Run();
85}
86
dchengd99c42a2016-04-21 21:54:1387std::unique_ptr<MetricsLogUploader> TestMetricsServiceClient::CreateUploader(
holte567a16f22017-01-06 01:53:4588 const std::string& server_url,
89 const std::string& mime_type,
[email protected]0d5a61a82014-05-31 22:28:3490 const base::Callback<void(int)>& on_upload_complete) {
holte7b74c622017-01-23 23:13:0791 return std::unique_ptr<MetricsLogUploader>(
92 new TestMetricsLogUploader(server_url, mime_type, on_upload_complete));
[email protected]0d5a61a82014-05-31 22:28:3493}
94
gunsch7cbdcb22015-03-13 17:02:0595base::TimeDelta TestMetricsServiceClient::GetStandardUploadInterval() {
96 return base::TimeDelta::FromMinutes(5);
97}
98
jwd421086f2016-03-21 14:40:4299bool TestMetricsServiceClient::IsReportingPolicyManaged() {
100 return reporting_is_managed_;
101}
102
gayanedaaf3a02016-06-15 16:30:21103EnableMetricsDefault
104TestMetricsServiceClient::GetMetricsReportingDefaultState() {
jwd421086f2016-03-21 14:40:42105 return enable_default_;
106}
107
[email protected]728de072014-05-21 09:20:32108} // namespace metrics