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

Side by Side Diff: chrome/browser/android/data_usage/data_use_ui_tab_model_unittest.cc

Issue 2158913002: Make DataUseTabModel and DataUseMatcher more independent (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebased, addressed comments, fixed unittests Created 4 years, 5 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 "chrome/browser/android/data_usage/data_use_ui_tab_model.h" 5 #include "chrome/browser/android/data_usage/data_use_ui_tab_model.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 #include <stdint.h> 8 #include <stdint.h>
9 9
10 #include <memory> 10 #include <memory>
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
59 // Mock observer to track the calls to start and end tracking events. 59 // Mock observer to track the calls to start and end tracking events.
60 class MockTabDataUseObserver : public DataUseTabModel::TabDataUseObserver { 60 class MockTabDataUseObserver : public DataUseTabModel::TabDataUseObserver {
61 public: 61 public:
62 MOCK_METHOD1(NotifyTrackingStarting, void(SessionID::id_type tab_id)); 62 MOCK_METHOD1(NotifyTrackingStarting, void(SessionID::id_type tab_id));
63 MOCK_METHOD1(NotifyTrackingEnding, void(SessionID::id_type tab_id)); 63 MOCK_METHOD1(NotifyTrackingEnding, void(SessionID::id_type tab_id));
64 MOCK_METHOD0(OnDataUseTabModelReady, void()); 64 MOCK_METHOD0(OnDataUseTabModelReady, void());
65 }; 65 };
66 66
67 class TestDataUseTabModel : public DataUseTabModel { 67 class TestDataUseTabModel : public DataUseTabModel {
68 public: 68 public:
69 TestDataUseTabModel() {} 69 TestDataUseTabModel()
70 : DataUseTabModel(base::Bind(&TestDataUseTabModel::FetchMatchingRules,
71 base::Unretained(this)),
72 base::Bind(&TestDataUseTabModel::OnMatchingRulesFetched,
73 base::Unretained(this))) {}
70 ~TestDataUseTabModel() override {} 74 ~TestDataUseTabModel() override {}
71 75
76 void FetchMatchingRules() {}
77
78 void OnMatchingRulesFetched(bool is_valid) {}
79
72 using DataUseTabModel::NotifyObserversOfTrackingStarting; 80 using DataUseTabModel::NotifyObserversOfTrackingStarting;
73 using DataUseTabModel::NotifyObserversOfTrackingEnding; 81 using DataUseTabModel::NotifyObserversOfTrackingEnding;
74 }; 82 };
75 83
76 class DataUseUITabModelTest : public testing::Test { 84 class DataUseUITabModelTest : public testing::Test {
77 public: 85 public:
78 DataUseUITabModelTest() 86 DataUseUITabModelTest()
79 : thread_bundle_(content::TestBrowserThreadBundle::IO_MAINLOOP) {} 87 : thread_bundle_(content::TestBrowserThreadBundle::IO_MAINLOOP) {}
80 DataUseUITabModel* data_use_ui_tab_model() { return &data_use_ui_tab_model_; } 88 DataUseUITabModel* data_use_ui_tab_model() { return &data_use_ui_tab_model_; }
81 89
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
113 121
114 data_use_aggregator_.reset( 122 data_use_aggregator_.reset(
115 new data_usage::DataUseAggregator(nullptr, nullptr)); 123 new data_usage::DataUseAggregator(nullptr, nullptr));
116 124
117 external_data_use_observer_.reset(new ExternalDataUseObserver( 125 external_data_use_observer_.reset(new ExternalDataUseObserver(
118 data_use_aggregator_.get(), io_task_runner_, ui_task_runner_)); 126 data_use_aggregator_.get(), io_task_runner_, ui_task_runner_));
119 // Wait for |external_data_use_observer_| to create the Java object. 127 // Wait for |external_data_use_observer_| to create the Java object.
120 base::RunLoop().RunUntilIdle(); 128 base::RunLoop().RunUntilIdle();
121 129
122 data_use_tab_model_.reset(new TestDataUseTabModel()); 130 data_use_tab_model_.reset(new TestDataUseTabModel());
123 data_use_tab_model_->InitOnUIThread(
124 external_data_use_observer_->external_data_use_observer_bridge_);
125 } 131 }
126 132
127 void SetUpDataUseUITabModel() { 133 void SetUpDataUseUITabModel() {
128 data_use_ui_tab_model_.SetDataUseTabModel(data_use_tab_model_.get()); 134 data_use_ui_tab_model_.SetDataUseTabModel(data_use_tab_model_.get());
129 data_use_tab_model_->OnControlAppInstallStateChange(true); 135 data_use_tab_model_->OnControlAppInstallStateChange(true);
130 } 136 }
131 137
132 private: 138 private:
133 content::TestBrowserThreadBundle thread_bundle_; 139 content::TestBrowserThreadBundle thread_bundle_;
134 DataUseUITabModel data_use_ui_tab_model_; 140 DataUseUITabModel data_use_ui_tab_model_;
(...skipping 466 matching lines...) Expand 10 before | Expand all | Expand 10 after
601 base::RunLoop().RunUntilIdle(); 607 base::RunLoop().RunUntilIdle();
602 RegisterURLRegexes(std::vector<std::string>(url_regexes.size(), kFooPackage), 608 RegisterURLRegexes(std::vector<std::string>(url_regexes.size(), kFooPackage),
603 url_regexes, 609 url_regexes,
604 std::vector<std::string>(url_regexes.size(), kFooLabel)); 610 std::vector<std::string>(url_regexes.size(), kFooLabel));
605 base::RunLoop().RunUntilIdle(); 611 base::RunLoop().RunUntilIdle();
606 } 612 }
607 613
608 } // namespace android 614 } // namespace android
609 615
610 } // namespace chrome 616 } // namespace chrome
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698