Chromium Code Reviews| OLD | NEW |
|---|---|
| (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/ntp_snippets/request_counter.h" | |
| 6 | |
| 7 #include "base/strings/stringprintf.h" | |
| 8 #include "components/ntp_snippets/pref_names.h" | |
| 9 #include "components/prefs/testing_pref_service.h" | |
| 10 #include "testing/gtest/include/gtest/gtest.h" | |
| 11 | |
| 12 namespace ntp_snippets { | |
| 13 namespace { | |
| 14 const char kTestId[] = "test_id"; | |
| 15 } // namespace | |
| 16 | |
| 17 class RequestCounterTest : public testing::Test { | |
| 18 public: | |
| 19 RequestCounterTest() | |
| 20 : counter_(&test_prefs_, kTestId, 2) { | |
|
Marc Treib
2016/07/19 09:06:17
nit: I think this should be indented by four more
jkrcal
2016/07/20 09:40:40
Done.
| |
| 21 RequestCounter::RegisterProfilePrefs(test_prefs_.registry(), kTestId); | |
| 22 } | |
| 23 | |
| 24 protected: | |
| 25 TestingPrefServiceSimple test_prefs_; | |
| 26 RequestCounter counter_; | |
| 27 | |
| 28 private: | |
| 29 DISALLOW_COPY_AND_ASSIGN(RequestCounterTest); | |
| 30 }; | |
| 31 | |
| 32 TEST_F(RequestCounterTest, QuotaExceeded) { | |
| 33 EXPECT_TRUE(counter_.IsQuotaAvailable()); | |
| 34 EXPECT_TRUE(counter_.IsQuotaAvailable()); | |
| 35 EXPECT_FALSE(counter_.IsQuotaAvailable()); | |
| 36 } | |
| 37 | |
| 38 TEST_F(RequestCounterTest, ForcedDoesNotCountInQuota) { | |
| 39 EXPECT_TRUE(counter_.IsQuotaAvailable()); | |
| 40 counter_.ReportForcedRequest(); | |
| 41 EXPECT_TRUE(counter_.IsQuotaAvailable()); | |
| 42 } | |
| 43 | |
| 44 TEST_F(RequestCounterTest, QuotaIsPerDay) { | |
| 45 EXPECT_TRUE(counter_.IsQuotaAvailable()); | |
| 46 EXPECT_TRUE(counter_.IsQuotaAvailable()); | |
| 47 | |
| 48 // Now fake the counter to believe the count comes from yesterday. | |
| 49 base::Time time_yesterday = base::Time::Now() - base::TimeDelta::FromDays(1); | |
| 50 int yesterday = | |
| 51 base::TimeDelta::FromMilliseconds(time_yesterday.ToJavaTime()).InDays(); | |
| 52 test_prefs_.SetInteger(base::StringPrintf( | |
| 53 ntp_snippets::prefs::kSnippetQuotaDayFormat, kTestId), yesterday); | |
| 54 | |
| 55 | |
| 56 EXPECT_TRUE(counter_.IsQuotaAvailable()); | |
| 57 } | |
| 58 | |
| 59 } // namespace ntp_snippets | |
| OLD | NEW |