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

Side by Side Diff: components/previews/previews_data_savings_unittest.cc

Issue 2257533003: Adding a previews object, PreviewsDataSavings (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: updating dependent cl Created 4 years, 4 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
(Empty)
1 // Copyright 2016 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/previews/previews_data_savings.h"
6
7 #include <stdint.h>
8
9 #include <memory>
10 #include <string>
11
12 #include "components/data_reduction_proxy/core/common/data_saver_status.h"
13 #include "components/data_reduction_proxy/core/common/data_savings_recorder.h"
14 #include "testing/gtest/include/gtest/gtest.h"
15
16 namespace previews {
17
18 namespace {
19
20 class TestDataSavingsRecorder
21 : public data_reduction_proxy::DataSavingsRecorder {
22 public:
23 TestDataSavingsRecorder() : data_used_(0), original_size_(0) {}
24 ~TestDataSavingsRecorder() {}
25
26 // data_reduction_proxy::DataSavingsRecorder implementation:
27 void UpdateDataSavings(const std::string& host,
28 int64_t data_used,
29 int64_t original_size) override {
30 last_host_ = host;
31 data_used_ += data_used;
32 original_size_ += original_size;
33 }
34
35 std::string last_host() const { return last_host_; }
36
37 int64_t data_used() const { return data_used_; }
38
39 int64_t original_size() const { return original_size_; }
40
41 private:
42 std::string last_host_;
43 int64_t data_used_;
44 int64_t original_size_;
45 };
46
47 class TestDataSaverStatus : public data_reduction_proxy::DataSaverStatus {
48 public:
49 TestDataSaverStatus() : data_saver_enabled_(false) {}
50 ~TestDataSaverStatus() {}
51
52 // data_reduction_proxy::DataSaverStatus implementation:
53 bool IsDataSaverEnabled() const override { return data_saver_enabled_; }
54
55 void set_data_saver_enabled(bool data_saver_enabled) {
56 data_saver_enabled_ = data_saver_enabled;
57 }
58
59 private:
60 bool data_saver_enabled_;
61 };
62
63 } // namespace
64
65 class PreviewsDataSavingsTest : public testing::Test {
66 public:
67 PreviewsDataSavingsTest()
68 : test_data_savings_recorder_(new TestDataSavingsRecorder()),
69 test_data_saver_status_(new TestDataSaverStatus()),
70 data_savings_(new PreviewsDataSavings(test_data_savings_recorder_.get(),
71 test_data_saver_status_.get())) {}
72 ~PreviewsDataSavingsTest() override {}
73
74 PreviewsDataSavings* data_savings() const { return data_savings_.get(); }
75
76 TestDataSavingsRecorder* test_data_savings_recorder() const {
77 return test_data_savings_recorder_.get();
78 }
79
80 TestDataSaverStatus* test_data_saver_status() const {
81 return test_data_saver_status_.get();
82 }
83
84 private:
85 std::unique_ptr<TestDataSavingsRecorder> test_data_savings_recorder_;
86 std::unique_ptr<TestDataSaverStatus> test_data_saver_status_;
87 std::unique_ptr<PreviewsDataSavings> data_savings_;
88 };
89
90 TEST_F(PreviewsDataSavingsTest, RecordDataSavings) {
91 int64_t original_size = 200;
92 int64_t data_used = 100;
93 std::string host = "host";
94
95 EXPECT_EQ(0, test_data_savings_recorder()->data_used());
96 EXPECT_EQ(0, test_data_savings_recorder()->original_size());
97 test_data_saver_status()->set_data_saver_enabled(false);
98
99 data_savings()->RecordDataSavings(host, data_used, original_size);
100
101 EXPECT_EQ(0, test_data_savings_recorder()->data_used());
102 EXPECT_EQ(0, test_data_savings_recorder()->original_size());
103 EXPECT_EQ(std::string(), test_data_savings_recorder()->last_host());
104 test_data_saver_status()->set_data_saver_enabled(true);
105
106 data_savings()->RecordDataSavings(host, data_used, original_size);
107
108 EXPECT_EQ(data_used, test_data_savings_recorder()->data_used());
109 EXPECT_EQ(original_size, test_data_savings_recorder()->original_size());
110 EXPECT_EQ(host, test_data_savings_recorder()->last_host());
111 }
112
113 } // namespace previews
OLDNEW
« components/previews/previews_data_savings.cc ('K') | « components/previews/previews_data_savings.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698