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

Side by Side Diff: chrome/browser/extensions/extensions_quota_service_unittest.cc

Issue 12212047: Linux/ChromeOS Chromium style checker cleanup, chrome/browser/extensions edition. (Closed) Base URL: http://src.chromium.org/svn/trunk/src/
Patch Set: Created 7 years, 10 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 | Annotate | Revision Log
OLDNEW
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 "base/message_loop.h" 5 #include "base/message_loop.h"
6 #include "base/process.h" 6 #include "base/process.h"
7 #include "base/stl_util.h" 7 #include "base/stl_util.h"
8 #include "base/string_util.h" 8 #include "base/string_util.h"
9 #include "chrome/browser/extensions/extension_function.h" 9 #include "chrome/browser/extensions/extension_function.h"
10 #include "chrome/browser/extensions/extensions_quota_service.h" 10 #include "chrome/browser/extensions/extensions_quota_service.h"
(...skipping 16 matching lines...) Expand all
27 const Config kFrozenConfig = { 0, TimeDelta::FromDays(0) }; 27 const Config kFrozenConfig = { 0, TimeDelta::FromDays(0) };
28 const Config k2PerMinute = { 2, TimeDelta::FromMinutes(1) }; 28 const Config k2PerMinute = { 2, TimeDelta::FromMinutes(1) };
29 const Config k20PerHour = { 20, TimeDelta::FromHours(1) }; 29 const Config k20PerHour = { 20, TimeDelta::FromHours(1) };
30 const TimeTicks kStartTime = TimeTicks(); 30 const TimeTicks kStartTime = TimeTicks();
31 const TimeTicks k1MinuteAfterStart = kStartTime + TimeDelta::FromMinutes(1); 31 const TimeTicks k1MinuteAfterStart = kStartTime + TimeDelta::FromMinutes(1);
32 32
33 class Mapper : public QuotaLimitHeuristic::BucketMapper { 33 class Mapper : public QuotaLimitHeuristic::BucketMapper {
34 public: 34 public:
35 Mapper() {} 35 Mapper() {}
36 virtual ~Mapper() { STLDeleteValues(&buckets_); } 36 virtual ~Mapper() { STLDeleteValues(&buckets_); }
37 virtual void GetBucketsForArgs(const ListValue* args, BucketList* buckets) { 37 virtual void GetBucketsForArgs(const ListValue* args,
38 BucketList* buckets) OVERRIDE {
38 for (size_t i = 0; i < args->GetSize(); i++) { 39 for (size_t i = 0; i < args->GetSize(); i++) {
39 int id; 40 int id;
40 ASSERT_TRUE(args->GetInteger(i, &id)); 41 ASSERT_TRUE(args->GetInteger(i, &id));
41 if (buckets_.find(id) == buckets_.end()) 42 if (buckets_.find(id) == buckets_.end())
42 buckets_[id] = new Bucket(); 43 buckets_[id] = new Bucket();
43 buckets->push_back(buckets_[id]); 44 buckets->push_back(buckets_[id]);
44 } 45 }
45 } 46 }
46 private: 47 private:
47 typedef std::map<int, Bucket*> BucketMap; 48 typedef std::map<int, Bucket*> BucketMap;
48 BucketMap buckets_; 49 BucketMap buckets_;
49 DISALLOW_COPY_AND_ASSIGN(Mapper); 50 DISALLOW_COPY_AND_ASSIGN(Mapper);
50 }; 51 };
51 52
52 class MockMapper : public QuotaLimitHeuristic::BucketMapper { 53 class MockMapper : public QuotaLimitHeuristic::BucketMapper {
53 public: 54 public:
54 virtual void GetBucketsForArgs(const ListValue* args, BucketList* buckets) {} 55 virtual void GetBucketsForArgs(const ListValue* args,
56 BucketList* buckets) OVERRIDE {
57 }
55 }; 58 };
56 59
57 class MockFunction : public ExtensionFunction { 60 class MockFunction : public ExtensionFunction {
58 public: 61 public:
59 explicit MockFunction(const std::string& name) { set_name(name); } 62 explicit MockFunction(const std::string& name) { set_name(name); }
60 63
61 virtual void SetArgs(const ListValue* args) OVERRIDE {} 64 virtual void SetArgs(const ListValue* args) OVERRIDE {}
62 virtual const std::string GetError() OVERRIDE { return std::string(); } 65 virtual const std::string GetError() OVERRIDE { return std::string(); }
63 virtual void SetError(const std::string& error) OVERRIDE {} 66 virtual void SetError(const std::string& error) OVERRIDE {}
64 virtual void Run() OVERRIDE {} 67 virtual void Run() OVERRIDE {}
65 virtual void Destruct() const OVERRIDE { delete this; } 68 virtual void Destruct() const OVERRIDE { delete this; }
66 virtual bool RunImpl() OVERRIDE { return true; } 69 virtual bool RunImpl() OVERRIDE { return true; }
67 virtual void SendResponse(bool) OVERRIDE { } 70 virtual void SendResponse(bool) OVERRIDE { }
68 71
69 protected: 72 protected:
70 virtual ~MockFunction() {} 73 virtual ~MockFunction() {}
71 }; 74 };
72 75
73 class TimedLimitMockFunction : public MockFunction { 76 class TimedLimitMockFunction : public MockFunction {
74 public: 77 public:
75 explicit TimedLimitMockFunction(const std::string& name) 78 explicit TimedLimitMockFunction(const std::string& name)
76 : MockFunction(name) {} 79 : MockFunction(name) {}
77 virtual void GetQuotaLimitHeuristics( 80 virtual void GetQuotaLimitHeuristics(
78 QuotaLimitHeuristics* heuristics) const { 81 QuotaLimitHeuristics* heuristics) const OVERRIDE {
79 heuristics->push_back( 82 heuristics->push_back(
80 new TimedLimit(k2PerMinute, new Mapper(), kGenericName)); 83 new TimedLimit(k2PerMinute, new Mapper(), kGenericName));
81 } 84 }
82 85
83 private: 86 private:
84 virtual ~TimedLimitMockFunction() {} 87 virtual ~TimedLimitMockFunction() {}
85 }; 88 };
86 89
87 class ChainedLimitsMockFunction : public MockFunction { 90 class ChainedLimitsMockFunction : public MockFunction {
88 public: 91 public:
89 explicit ChainedLimitsMockFunction(const std::string& name) 92 explicit ChainedLimitsMockFunction(const std::string& name)
90 : MockFunction(name) {} 93 : MockFunction(name) {}
91 virtual void GetQuotaLimitHeuristics( 94 virtual void GetQuotaLimitHeuristics(
92 QuotaLimitHeuristics* heuristics) const { 95 QuotaLimitHeuristics* heuristics) const OVERRIDE {
93 // No more than 2 per minute sustained over 5 minutes. 96 // No more than 2 per minute sustained over 5 minutes.
94 heuristics->push_back(new SustainedLimit( 97 heuristics->push_back(new SustainedLimit(
95 TimeDelta::FromMinutes(5), k2PerMinute, new Mapper(), kGenericName)); 98 TimeDelta::FromMinutes(5), k2PerMinute, new Mapper(), kGenericName));
96 // No more than 20 per hour. 99 // No more than 20 per hour.
97 heuristics->push_back( 100 heuristics->push_back(
98 new TimedLimit(k20PerHour, new Mapper(), kGenericName)); 101 new TimedLimit(k20PerHour, new Mapper(), kGenericName));
99 } 102 }
100 103
101 private: 104 private:
102 virtual ~ChainedLimitsMockFunction() {} 105 virtual ~ChainedLimitsMockFunction() {}
103 }; 106 };
104 107
105 class FrozenMockFunction : public MockFunction { 108 class FrozenMockFunction : public MockFunction {
106 public: 109 public:
107 explicit FrozenMockFunction(const std::string& name) : MockFunction(name) {} 110 explicit FrozenMockFunction(const std::string& name) : MockFunction(name) {}
108 virtual void GetQuotaLimitHeuristics( 111 virtual void GetQuotaLimitHeuristics(
109 QuotaLimitHeuristics* heuristics) const { 112 QuotaLimitHeuristics* heuristics) const OVERRIDE {
110 heuristics->push_back( 113 heuristics->push_back(
111 new TimedLimit(kFrozenConfig, new Mapper(), kGenericName)); 114 new TimedLimit(kFrozenConfig, new Mapper(), kGenericName));
112 } 115 }
113 116
114 private: 117 private:
115 virtual ~FrozenMockFunction() {} 118 virtual ~FrozenMockFunction() {}
116 }; 119 };
117 } // namespace 120 } // namespace
118 121
119 class ExtensionsQuotaServiceTest : public testing::Test { 122 class ExtensionsQuotaServiceTest : public testing::Test {
(...skipping 213 matching lines...) Expand 10 before | Expand all | Expand 10 after
333 EXPECT_NE("", service_->Assess(extension_a_, f, &arg, 336 EXPECT_NE("", service_->Assess(extension_a_, f, &arg,
334 kStartTime + TimeDelta::FromSeconds(15))); 337 kStartTime + TimeDelta::FromSeconds(15)));
335 338
336 // We don't allow this extension to use quota limited functions even if they 339 // We don't allow this extension to use quota limited functions even if they
337 // wait a while. 340 // wait a while.
338 EXPECT_NE("", service_->Assess(extension_a_, f, &arg, 341 EXPECT_NE("", service_->Assess(extension_a_, f, &arg,
339 kStartTime + TimeDelta::FromDays(1))); 342 kStartTime + TimeDelta::FromDays(1)));
340 EXPECT_NE("", service_->Assess(extension_a_, g, &arg, 343 EXPECT_NE("", service_->Assess(extension_a_, g, &arg,
341 kStartTime + TimeDelta::FromDays(1))); 344 kStartTime + TimeDelta::FromDays(1)));
342 } 345 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698