Chromium Code Reviews| Index: chrome/browser/metrics/variations/resource_request_allowed_notifier_test_util.h |
| diff --git a/chrome/browser/metrics/variations/resource_request_allowed_notifier_test_util.h b/chrome/browser/metrics/variations/resource_request_allowed_notifier_test_util.h |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..678fae316c3b6116cd8849d917a0421b962c5d1a |
| --- /dev/null |
| +++ b/chrome/browser/metrics/variations/resource_request_allowed_notifier_test_util.h |
| @@ -0,0 +1,51 @@ |
| +// Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +#ifndef CHROME_BROWSER_METRICS_VARIATIONS_RESOURCE_REQUEST_ALLOWED_NOTIFIER_TEST_UTIL_H_ |
| +#define CHROME_BROWSER_METRICS_VARIATIONS_RESOURCE_REQUEST_ALLOWED_NOTIFIER_TEST_UTIL_H_ |
| + |
| +#include "chrome/browser/metrics/variations/resource_request_allowed_notifier.h" |
| + |
| +// A light subclass around ResourceRequestAllowedNotifier used to expose some |
| +// functionality for testing. |
| +// |
| +// By default, the constructor sets this class to override |
| +// ResourceRequestsAllowed, so its state can be set with SetRequestsAllowed. |
| +// This is meant for higher level tests of services to ensure they adhere to the |
| +// notifications of the ResourceRequestAllowedNotifier. Lower level tests can |
| +// disable this by calling SetRequestsAllowedOverride with the value they want |
| +// it to return. |
| +class TestRequestAllowedNotifier : public ResourceRequestAllowedNotifier { |
| + public: |
| + TestRequestAllowedNotifier(); |
| + virtual ~TestRequestAllowedNotifier(); |
| + |
| +#if defined(OS_CHROMEOS) |
| + void SetEulaAccepted(bool accepted); |
| +#endif |
| + |
| + // Makes ResourceRequestsAllowed return |allowed| when it is called. |
| + void SetRequestsAllowedOverride(bool allowed); |
| + |
| + // Notify observers that requests are allowed. |
|
Alexei Svitkine (slow)
2012/09/24 15:59:36
Expand comment to say that this will only work if
SteveT
2012/09/24 18:04:27
Done.
|
| + void NotifyObservers(); |
| + |
| + protected: |
| +#if defined(OS_CHROMEOS) |
| + virtual bool IsEulaAccepted() OVERRIDE; |
| +#endif |
| + |
| + virtual bool ResourceRequestsAllowed() OVERRIDE; |
| + |
| + private: |
| + bool requests_allowed_; |
|
Alexei Svitkine (slow)
2012/09/24 15:59:36
Nit: Move this below "override_requests_allowed_"
SteveT
2012/09/24 18:04:27
Done, but this makes the constructor implementatio
|
| +#if defined(OS_CHROMEOS) |
| + bool eula_accepted_; |
| +#endif |
| + bool override_requests_allowed_; |
| + |
| + DISALLOW_COPY_AND_ASSIGN(TestRequestAllowedNotifier); |
| +}; |
| + |
| +#endif // CHROME_BROWSER_METRICS_VARIATIONS_RESOURCE_REQUEST_ALLOWED_NOTIFIER_TEST_UTIL_H_ |