Add minimum version to extension management
This CL adds 'minimum_version' setting to ExtensionManagement. Allows policy to specify the minimum version required for the specified extension to be enabled.
This CL adds another Extension::DisableReason DISABLE_UPDATE_REQUIRED_BY_POLICY, and using it to track extensions being disabled by minimum version settings, and re-enable them if necessary.
BUG=177351
Review URL: https://codereview.chromium.org/706623004
Cr-Commit-Position: refs/heads/master@{#306834}
diff --git a/chrome/browser/extensions/extension_management_test_util.h b/chrome/browser/extensions/extension_management_test_util.h
index ded3ea49..1a34783 100644
--- a/chrome/browser/extensions/extension_management_test_util.h
+++ b/chrome/browser/extensions/extension_management_test_util.h
@@ -62,7 +62,7 @@
const std::string& permission);
// Helper functions for 'allowed_permissions' manipulation. |id| must be a
- // valid extension id.
+ // valid extension ID.
void UnsetAllowedPermissions(const std::string& id);
void ClearAllowedPermissions(const std::string& id);
void AddAllowedPermission(const std::string& id,
@@ -70,6 +70,12 @@
void RemoveAllowedPermission(const std::string& id,
const std::string& permission);
+ // Helper functions for 'minimum_version_required' manipulation. |id| must be
+ // a valid extension ID.
+ void SetMinimumVersionRequired(const std::string& id,
+ const std::string& version);
+ void UnsetMinimumVersionRequired(const std::string& id);
+
// Expose a read-only preference to user.
const base::DictionaryValue* GetPref();