[Extensions] Make Extension::version() return a const base::Version&

Currently, Extension::version() returns a pointer to a constant
base::Version. However, all extensions are required to have a valid
version (if it does not, the Init() call fails). It's perfectly
sufficient to return a const base::Version& here and avoid callers from
having to dereference the return value (which is mostly just cognitive
load).

TBRing for mechanical changes:
[email protected] (c/b/chromeos/login)
[email protected] (c/b/media/router)
[email protected] (c/b/policy)
[email protected] (c/b/safe_browsing/incident_reporting)
[email protected] (c/b/supervised_user)

Bug: None
Change-Id: I233c5822bf32d10a9a1ad0c009b6b566a80a5fd8
Reviewed-on: https://chromium-review.googlesource.com/828580
Commit-Queue: Devlin <[email protected]>
Reviewed-by: Karan Bhatia <[email protected]>
Cr-Commit-Position: refs/heads/master@{#525288}
diff --git a/chrome/browser/extensions/extension_service_sync_unittest.cc b/chrome/browser/extensions/extension_service_sync_unittest.cc
index 87c004f..f860551 100644
--- a/chrome/browser/extensions/extension_service_sync_unittest.cc
+++ b/chrome/browser/extensions/extension_service_sync_unittest.cc
@@ -703,7 +703,7 @@
   EXPECT_EQ(extensions::util::IsIncognitoEnabled(good_crx, profile()),
             data->incognito_enabled());
   EXPECT_EQ(ExtensionSyncData::BOOLEAN_UNSET, data->all_urls_enabled());
-  EXPECT_EQ(data->version(), *extension->version());
+  EXPECT_EQ(data->version(), extension->version());
   EXPECT_EQ(extensions::ManifestURL::GetUpdateURL(extension),
             data->update_url());
   EXPECT_EQ(extension->name(), data->name());
@@ -811,7 +811,7 @@
   EXPECT_EQ(extensions::util::IsIncognitoEnabled(good_crx, profile()),
             data->incognito_enabled());
   EXPECT_EQ(ExtensionSyncData::BOOLEAN_UNSET, data->all_urls_enabled());
-  EXPECT_EQ(data->version(), *extension->version());
+  EXPECT_EQ(data->version(), extension->version());
   EXPECT_EQ(extensions::ManifestURL::GetUpdateURL(extension),
             data->update_url());
   EXPECT_EQ(extension->name(), data->name());
@@ -1113,7 +1113,7 @@
       app_specifics->mutable_extension();
   extension_specifics->set_id(good_crx);
   extension_specifics->set_version(
-      service()->GetInstalledExtension(good_crx)->version()->GetString());
+      service()->GetInstalledExtension(good_crx)->version().GetString());
 
   {
     extension_specifics->set_enabled(true);
@@ -1166,7 +1166,7 @@
   sync_pb::ExtensionSpecifics* ext_specifics = specifics.mutable_extension();
   ext_specifics->set_id(good_crx);
   ext_specifics->set_version(
-      service()->GetInstalledExtension(good_crx)->version()->GetString());
+      service()->GetInstalledExtension(good_crx)->version().GetString());
   ext_specifics->set_enabled(false);
 
   {
@@ -1331,7 +1331,7 @@
   sync_pb::ExtensionSpecifics* ext_specifics = specifics.mutable_extension();
   ext_specifics->set_id(good_crx);
   ext_specifics->set_version(
-      service()->GetInstalledExtension(good_crx)->version()->GetString());
+      service()->GetInstalledExtension(good_crx)->version().GetString());
   ext_specifics->set_enabled(false);
   ext_specifics->set_incognito_enabled(true);
 
@@ -1362,7 +1362,7 @@
   ext_specifics->set_enabled(true);
 
   const base::Version installed_version =
-      *service()->GetInstalledExtension(good_crx)->version();
+      service()->GetInstalledExtension(good_crx)->version();
 
   {
     ext_specifics->set_version(installed_version.GetString());
@@ -1888,7 +1888,7 @@
       CheckDisabledForCustodianApproval(id);
     }
 
-    EXPECT_EQ(*extension->version(), base::Version("1"));
+    EXPECT_EQ(base::Version("1"), extension->version());
 
     return id;
   }
@@ -1902,7 +1902,7 @@
     const Extension* extension = registry()->GetInstalledExtension(id);
     ASSERT_TRUE(extension);
     // The version should have been updated.
-    EXPECT_EQ(*extension->version(), base::Version(version));
+    EXPECT_EQ(base::Version(version), extension->version());
   }
 
   // Simulate a custodian approval for enabling the extension coming in
@@ -2208,7 +2208,7 @@
   const Extension* extension = registry()->enabled_extensions().GetByID(id);
   ASSERT_TRUE(extension);
   // The version should have changed.
-  EXPECT_EQ(*extension->version(), base::Version(version2));
+  EXPECT_EQ(base::Version(version2), extension->version());
   EXPECT_FALSE(IsPendingCustodianApproval(id));
 }
 
@@ -2408,7 +2408,7 @@
   const Extension* extension = registry()->enabled_extensions().GetByID(id);
   ASSERT_TRUE(extension);
   // The version should have increased.
-  EXPECT_EQ(1, extension->version()->CompareTo(base::Version(version1)));
+  EXPECT_EQ(1, extension->version().CompareTo(base::Version(version1)));
 
   // Check that the approved version has been updated in the prefs as well.
   // Prefs are updated via Sync.  If the prefs are updated, then the new
@@ -2419,7 +2419,7 @@
       pref_service->GetDictionary(prefs::kSupervisedUserApprovedExtensions);
   approved_extensions->GetStringWithoutPathExpansion(id, &approved_version);
 
-  EXPECT_EQ(base::Version(approved_version), *extension->version());
+  EXPECT_EQ(base::Version(approved_version), extension->version());
   EXPECT_FALSE(IsPendingCustodianApproval(id));
 }
 
@@ -2633,7 +2633,7 @@
       ExtensionSyncData::CreateFromSyncData(app_change.sync_data());
   EXPECT_TRUE(app_data->is_app());
   EXPECT_EQ(id, app_data->id());
-  EXPECT_EQ(*v1->version(), app_data->version());
+  EXPECT_EQ(v1->version(), app_data->version());
 
   // Update the app to v2, which is an extension.
   const Extension* v2 =
@@ -2651,7 +2651,7 @@
       ExtensionSyncData::CreateFromSyncData(extension_change.sync_data());
   EXPECT_FALSE(extension_data->is_app());
   EXPECT_EQ(id, extension_data->id());
-  EXPECT_EQ(*v2->version(), extension_data->version());
+  EXPECT_EQ(v2->version(), extension_data->version());
 
   // Get the current data from the change processors to use as the input to
   // the following call to MergeDataAndStartSyncing. This simulates what should