• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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
3 // found in the LICENSE file.
4 
5 #include "sync/test/engine/fake_model_worker.h"
6 
7 namespace syncer {
8 
FakeModelWorker(ModelSafeGroup group)9 FakeModelWorker::FakeModelWorker(ModelSafeGroup group)
10     : ModelSafeWorker(NULL),
11       group_(group) {}
12 
~FakeModelWorker()13 FakeModelWorker::~FakeModelWorker() {
14   // We may need to relax this is FakeModelWorker is used in a
15   // multi-threaded test; since ModelSafeWorkers are
16   // RefCountedThreadSafe, they could theoretically be destroyed from
17   // a different thread.
18   DCHECK(CalledOnValidThread());
19 }
20 
RegisterForLoopDestruction()21 void FakeModelWorker::RegisterForLoopDestruction() {
22   NOTREACHED();
23 }
24 
DoWorkAndWaitUntilDoneImpl(const WorkCallback & work)25 SyncerError FakeModelWorker::DoWorkAndWaitUntilDoneImpl(
26     const WorkCallback& work) {
27   DCHECK(CalledOnValidThread());
28   // Simply do the work on the current thread.
29   return work.Run();
30 }
31 
GetModelSafeGroup()32 ModelSafeGroup FakeModelWorker::GetModelSafeGroup() {
33   DCHECK(CalledOnValidThread());
34   return group_;
35 }
36 
37 }  // namespace syncer
38