blob: 81919e092b3ac41a2a241ec52665e5249d96862f [file] [log] [blame]
// Copyright (c) 2013 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/common/extensions/permissions/scoped_testing_permissions_info.h"
namespace extensions {
ScopedTestingPermissionsInfo::ScopedTestingPermissionsInfo()
: info_(new PermissionsInfo),
old_info_(PermissionsInfo::GetInstance()) {
PermissionsInfo::SetForTesting(info_.get());
}
ScopedTestingPermissionsInfo::ScopedTestingPermissionsInfo(
const PermissionsInfo::Delegate& delegate)
: info_(new PermissionsInfo),
old_info_(PermissionsInfo::GetInstance()) {
PermissionsInfo::SetForTesting(info_.get());
PermissionsInfo::GetInstance()->InitializeWithDelegate(delegate);
}
ScopedTestingPermissionsInfo::~ScopedTestingPermissionsInfo() {
PermissionsInfo::SetForTesting(old_info_);
}
} // namespace extensions