#ifndef SYNC_TEST_ENGINE_FAKE_MODEL_WORKER_H_
#define SYNC_TEST_ENGINE_FAKE_MODEL_WORKER_H_
#include <vector>
#include "base/basictypes.h"
#include "base/compiler_specific.h"
#include "base/threading/non_thread_safe.h"
#include "sync/internal_api/public/engine/model_safe_worker.h"
#include "sync/internal_api/public/util/syncer_error.h"
namespace syncer {
class FakeModelWorker : public ModelSafeWorker, public base::NonThreadSafe {
public:
explicit FakeModelWorker(ModelSafeGroup group);
virtual void RegisterForLoopDestruction() OVERRIDE;
virtual ModelSafeGroup GetModelSafeGroup() OVERRIDE;
protected:
virtual SyncerError DoWorkAndWaitUntilDoneImpl(
const WorkCallback& work) OVERRIDE;
private:
virtual ~FakeModelWorker();
const ModelSafeGroup group_;
DISALLOW_COPY_AND_ASSIGN(FakeModelWorker);
};
}
#endif