// Copyright 2020 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef EXTENSIONS_COMMON_API_EXTENSION_ACTION_ACTION_INFO_TEST_UTIL_H_ #define EXTENSIONS_COMMON_API_EXTENSION_ACTION_ACTION_INFO_TEST_UTIL_H_ #include "extensions/common/api/extension_action/action_info.h" namespace extensions { class Extension; // Given an |action_type|, returns the corresponding API name to be referenced // from JavaScript. const char* GetAPINameForActionType(ActionInfo::Type action_type); // Retrieves the ActionInfo for the |extension| if and only if it // corresponds to the specified |type|. This is useful for testing to ensure // the type is specified correctly, since most production code is type- // agnostic. const ActionInfo* GetActionInfoOfType(const Extension& extension, ActionInfo::Type type); // Retrieves the appropriate manifest version for the given |type|; necessary // because the chrome.action API is restricted to MV3, while browser and page // actions are restricted to MV2. int GetManifestVersionForActionType(ActionInfo::Type type); } // namespace extensions #endif // EXTENSIONS_COMMON_API_EXTENSION_ACTION_ACTION_INFO_TEST_UTIL_H_