OLD | NEW |
---|---|
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/browsing_data/browsing_data_remover.h" | 5 #include "chrome/browser/browsing_data/browsing_data_remover.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include <set> | 10 #include <set> |
(...skipping 860 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
871 | 871 |
872 content::MockDownloadManager* download_manager() { return download_manager_; } | 872 content::MockDownloadManager* download_manager() { return download_manager_; } |
873 | 873 |
874 private: | 874 private: |
875 content::MockDownloadManager* download_manager_; | 875 content::MockDownloadManager* download_manager_; |
876 ChromeDownloadManagerDelegate chrome_download_manager_delegate_; | 876 ChromeDownloadManagerDelegate chrome_download_manager_delegate_; |
877 | 877 |
878 DISALLOW_COPY_AND_ASSIGN(RemoveDownloadsTester); | 878 DISALLOW_COPY_AND_ASSIGN(RemoveDownloadsTester); |
879 }; | 879 }; |
880 | 880 |
881 class RemovePasswordsTester { | |
882 public: | |
883 explicit RemovePasswordsTester(TestingProfile* testing_profile) { | |
884 PasswordStoreFactory::GetInstance()->SetTestingFactoryAndUse( | |
885 testing_profile, | |
886 password_manager::BuildPasswordStore< | |
887 content::BrowserContext, | |
888 testing::NiceMock<password_manager::MockPasswordStore>>); | |
Timo Reimann
2016/02/01 10:07:20
Note that I additionally wrapped the mocked passwo
| |
889 | |
890 store_ = static_cast<password_manager::MockPasswordStore*>( | |
891 PasswordStoreFactory::GetInstance() | |
892 ->GetForProfile(testing_profile, ServiceAccessType::EXPLICIT_ACCESS) | |
893 .get()); | |
894 } | |
895 | |
896 password_manager::MockPasswordStore* store() { return store_; } | |
897 | |
898 private: | |
899 password_manager::MockPasswordStore* store_; | |
900 | |
901 DISALLOW_COPY_AND_ASSIGN(RemovePasswordsTester); | |
902 }; | |
903 | |
881 // Test Class ---------------------------------------------------------------- | 904 // Test Class ---------------------------------------------------------------- |
882 | 905 |
883 class BrowsingDataRemoverTest : public testing::Test { | 906 class BrowsingDataRemoverTest : public testing::Test { |
884 public: | 907 public: |
885 BrowsingDataRemoverTest() | 908 BrowsingDataRemoverTest() |
886 : profile_(new TestingProfile()), | 909 : profile_(new TestingProfile()), |
887 clear_domain_reliability_tester_(GetProfile()) { | 910 clear_domain_reliability_tester_(GetProfile()) { |
888 callback_subscription_ = | 911 callback_subscription_ = |
889 BrowsingDataRemover::RegisterOnBrowsingDataRemovedCallback( | 912 BrowsingDataRemover::RegisterOnBrowsingDataRemovedCallback( |
890 base::Bind(&BrowsingDataRemoverTest::NotifyWithDetails, | 913 base::Bind(&BrowsingDataRemoverTest::NotifyWithDetails, |
(...skipping 1259 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
2150 const url::Origin expectedOrigin(kOrigin1); | 2173 const url::Origin expectedOrigin(kOrigin1); |
2151 | 2174 |
2152 EXPECT_CALL(*tester.download_manager(), | 2175 EXPECT_CALL(*tester.download_manager(), |
2153 RemoveDownloadsByOriginAndTime(SameOrigin(expectedOrigin), _, _)); | 2176 RemoveDownloadsByOriginAndTime(SameOrigin(expectedOrigin), _, _)); |
2154 | 2177 |
2155 BlockUntilOriginDataRemoved(BrowsingDataRemover::EVERYTHING, | 2178 BlockUntilOriginDataRemoved(BrowsingDataRemover::EVERYTHING, |
2156 BrowsingDataRemover::REMOVE_DOWNLOADS, kOrigin1); | 2179 BrowsingDataRemover::REMOVE_DOWNLOADS, kOrigin1); |
2157 } | 2180 } |
2158 | 2181 |
2159 TEST_F(BrowsingDataRemoverTest, RemovePasswordStatistics) { | 2182 TEST_F(BrowsingDataRemoverTest, RemovePasswordStatistics) { |
2160 PasswordStoreFactory::GetInstance()->SetTestingFactoryAndUse( | 2183 RemovePasswordsTester tester(GetProfile()); |
2161 GetProfile(), | 2184 |
2162 password_manager::BuildPasswordStore< | 2185 EXPECT_CALL(*tester.store(), RemoveStatisticsCreatedBetweenImpl( |
2163 content::BrowserContext, password_manager::MockPasswordStore>); | 2186 base::Time(), base::Time::Max())); |
2164 password_manager::MockPasswordStore* store = | |
2165 static_cast<password_manager::MockPasswordStore*>( | |
2166 PasswordStoreFactory::GetInstance() | |
2167 ->GetForProfile(GetProfile(), ServiceAccessType::EXPLICIT_ACCESS) | |
2168 .get()); | |
2169 EXPECT_CALL(*store, RemoveStatisticsCreatedBetweenImpl(base::Time(), | |
2170 base::Time::Max())); | |
2171 BlockUntilBrowsingDataRemoved( | 2187 BlockUntilBrowsingDataRemoved( |
2172 BrowsingDataRemover::EVERYTHING, | 2188 BrowsingDataRemover::EVERYTHING, |
2173 BrowsingDataRemover::REMOVE_HISTORY, false); | 2189 BrowsingDataRemover::REMOVE_HISTORY, false); |
2174 } | 2190 } |
2191 | |
2192 TEST_F(BrowsingDataRemoverTest, RemoveSameOriginPasswords) { | |
2193 RemovePasswordsTester tester(GetProfile()); | |
2194 const url::Origin expectedOrigin(kOrigin1); | |
2195 | |
2196 EXPECT_CALL(*tester.store(), | |
2197 RemoveLoginsByOriginAndTimeImpl(SameOrigin(expectedOrigin), _, _)) | |
2198 .WillOnce(Return(password_manager::PasswordStoreChangeList())); | |
2199 BlockUntilOriginDataRemoved(BrowsingDataRemover::EVERYTHING, | |
2200 BrowsingDataRemover::REMOVE_PASSWORDS, kOrigin1); | |
Mike West
2016/02/04 18:25:11
Can you add a test that passes in a URL that produ
Timo Reimann
2016/02/05 01:12:38
(Assuming you meant that it shouldn't remove any *
| |
2201 } | |
OLD | NEW |