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

Unified Diff: net/reporting/reporting_test_util.h

Issue 2751883003: Reporting: Implement serializer. (Closed)
Patch Set: rebase Created 3 years, 8 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 side-by-side diff with in-line comments
Download patch
Index: net/reporting/reporting_test_util.h
diff --git a/net/reporting/reporting_test_util.h b/net/reporting/reporting_test_util.h
index 9aeaa2e28b29b354e7a71ce450155eba15fa90f8..c1a255a251e2d6e08ccae3cfb609b05dd2818e6a 100644
--- a/net/reporting/reporting_test_util.h
+++ b/net/reporting/reporting_test_util.h
@@ -18,6 +18,7 @@
class GURL;
namespace base {
+class MockTimer;
class SimpleTestClock;
class SimpleTestTickClock;
class Value;
@@ -108,11 +109,14 @@ class TestReportingContext : public ReportingContext {
base::SimpleTestTickClock* test_tick_clock() {
return reinterpret_cast<base::SimpleTestTickClock*>(tick_clock());
}
+ base::MockTimer* test_persistence_timer() { return persistence_timer_; }
TestReportingUploader* test_uploader() {
return reinterpret_cast<TestReportingUploader*>(uploader());
}
private:
+ base::MockTimer* persistence_timer_;
+
DISALLOW_COPY_AND_ASSIGN(TestReportingContext);
};
@@ -125,6 +129,13 @@ class ReportingTestBase : public ::testing::Test {
void UsePolicy(const ReportingPolicy& policy);
+ // Simulates an embedder restart, preserving the ReportingPolicy and any data
+ // persisted via the TestReportingDelegate, but nothing else.
+ //
+ // Advances the Clock by |delta|, and the TickClock by |delta_ticks|. Both can
+ // be zero or negative.
+ void SimulateRestart(base::TimeDelta delta, base::TimeDelta delta_ticks);
+
TestReportingContext* context() { return context_.get(); }
const ReportingPolicy& policy() { return context_->policy(); }
@@ -134,6 +145,9 @@ class ReportingTestBase : public ::testing::Test {
base::SimpleTestTickClock* tick_clock() {
return context_->test_tick_clock();
}
+ base::MockTimer* persistence_timer() {
+ return context_->test_persistence_timer();
+ }
TestReportingUploader* uploader() { return context_->test_uploader(); }
ReportingCache* cache() { return context_->cache(); }
@@ -144,11 +158,19 @@ class ReportingTestBase : public ::testing::Test {
return context_->delivery_agent();
}
+ ReportingPersister* persister() { return context_->persister(); }
+
base::TimeTicks yesterday();
base::TimeTicks tomorrow();
private:
+ void CreateAndInitializeContext(
+ const ReportingPolicy& policy,
+ std::unique_ptr<const base::Value> persisted_data,
+ base::Time now,
+ base::TimeTicks now_ticks);
+
std::unique_ptr<TestReportingContext> context_;
DISALLOW_COPY_AND_ASSIGN(ReportingTestBase);

Powered by Google App Engine
This is Rietveld 408576698