// 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.

#include "chrome/browser/policy/cloud/mock_cloud_policy_store.h"

namespace policy {

MockCloudPolicyStore::MockCloudPolicyStore() {}

MockCloudPolicyStore::~MockCloudPolicyStore() {}

MockCloudPolicyStoreObserver::MockCloudPolicyStoreObserver() {}

MockCloudPolicyStoreObserver::~MockCloudPolicyStoreObserver() {}

}  // namespace policy
