test_interaction_provider.cc 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. // Copyright 2019 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. #include "extensions/renderer/bindings/test_interaction_provider.h"
  5. #include "base/check.h"
  6. namespace extensions {
  7. namespace {
  8. bool g_mock_user_activation_v2_state_ = false;
  9. }
  10. TestInteractionProvider::TestInteractionProvider() = default;
  11. TestInteractionProvider::~TestInteractionProvider() = default;
  12. std::unique_ptr<InteractionProvider::Token>
  13. TestInteractionProvider::GetCurrentToken(
  14. v8::Local<v8::Context> v8_context) const {
  15. // Note: Not necessary for tests.
  16. return nullptr;
  17. }
  18. std::unique_ptr<InteractionProvider::Scope>
  19. TestInteractionProvider::CreateScopedInteraction(
  20. v8::Local<v8::Context> v8_context,
  21. std::unique_ptr<InteractionProvider::Token> token) const {
  22. // Note: Not necessary for tests.
  23. return nullptr;
  24. }
  25. bool TestInteractionProvider::HasActiveInteraction(
  26. v8::Local<v8::Context> v8_context) const {
  27. return g_mock_user_activation_v2_state_;
  28. }
  29. ScopedTestUserActivation::ScopedTestUserActivation() {
  30. DCHECK(!g_mock_user_activation_v2_state_); // Nested scopes are not allowed.
  31. g_mock_user_activation_v2_state_ = true;
  32. }
  33. ScopedTestUserActivation::~ScopedTestUserActivation() {
  34. g_mock_user_activation_v2_state_ = false;
  35. }
  36. } // namespace extensions