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 7namespace syncer { 8 9FakeModelWorker::FakeModelWorker(ModelSafeGroup group) 10 : ModelSafeWorker(NULL), 11 group_(group) {} 12 13FakeModelWorker::~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 21void FakeModelWorker::RegisterForLoopDestruction() { 22 NOTREACHED(); 23} 24 25SyncerError FakeModelWorker::DoWorkAndWaitUntilDoneImpl( 26 const WorkCallback& work) { 27 DCHECK(CalledOnValidThread()); 28 // Simply do the work on the current thread. 29 return work.Run(); 30} 31 32ModelSafeGroup FakeModelWorker::GetModelSafeGroup() { 33 DCHECK(CalledOnValidThread()); 34 return group_; 35} 36 37} // namespace syncer 38