// Copyright 2021 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #include #include "crypto/scoped_mock_unexportable_key_provider.h" #include "crypto/unexportable_key.h" namespace crypto { namespace { std::unique_ptr GetUnexportableKeyProviderMock() { return GetSoftwareUnsecureUnexportableKeyProvider(); } std::unique_ptr GetUnexportableKeyProviderNull() { return nullptr; } } // namespace ScopedMockUnexportableKeyProvider::ScopedMockUnexportableKeyProvider() { internal::SetUnexportableKeyProviderForTesting( GetUnexportableKeyProviderMock); } ScopedMockUnexportableKeyProvider::~ScopedMockUnexportableKeyProvider() { internal::SetUnexportableKeyProviderForTesting(nullptr); } ScopedNullUnexportableKeyProvider::ScopedNullUnexportableKeyProvider() { internal::SetUnexportableKeyProviderForTesting( GetUnexportableKeyProviderNull); } ScopedNullUnexportableKeyProvider::~ScopedNullUnexportableKeyProvider() { internal::SetUnexportableKeyProviderForTesting(nullptr); } } // namespace crypto