webfeed: improvements on loading

* instead of relying on a cached bit to determine if the
  user is a subscriber, we will now fetch subscriptions
  inline with the LoadStreamTask if necessary.
* a new 'no-subscriptions' status is provided to the UI
  if the web feed cannot be loaded because there are no
  subscriptions.
* I updated FeedApiTest to enable WebFeed by default, and
  updated our tests to pass.

As part of this change, we needed to somehow chain
  LoadStreamTask -> FetchSubscribedWebFeedsTask,
and the WebFeedSubscriptionCoordinator prevents direct
access to this task. In order to do this, I added the concept
of suspending and resuming a task. One alternative is to
break the task into pieces, but adds more complexity to
the caller, and requires more refactoring.

Change-Id: I298a1c4d13a3fb70e36e61458b7348fe6a1d63b6
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2965254
Commit-Queue: Dan H <[email protected]>
Reviewed-by: Carlos Knippschild <[email protected]>
Reviewed-by: Dominic Battré <[email protected]>
Cr-Commit-Position: refs/heads/master@{#900069}
diff --git a/chrome/browser/prefs/browser_prefs.cc b/chrome/browser/prefs/browser_prefs.cc
index 157e434a..f7e6a83d 100644
--- a/chrome/browser/prefs/browser_prefs.cc
+++ b/chrome/browser/prefs/browser_prefs.cc
@@ -1461,8 +1461,8 @@
   profile_prefs->ClearPref(kDataReductionProxyLastConfigRetrievalTime);
   profile_prefs->ClearPref(kDataReductionProxyConfig);
 
-  // Added 02/2021
 #if defined(OS_ANDROID)
+  // Added 02/2021
   feed::MigrateObsoleteProfilePrefsFeb_2021(profile_prefs);
 #endif  // defined(OS_ANDROID)
   syncer::ClearObsoletePassphrasePromptPrefs(profile_prefs);
@@ -1553,6 +1553,11 @@
   profile_prefs->ClearPref(kHintsFetcherTopHostBlocklistMinimumEngagementScore);
   profile_prefs->ClearPref(kTimeHintsFetcherTopHostBlocklistLastInitialized);
 
+#if defined(OS_ANDROID)
+  // Added 06/2021
+  feed::MigrateObsoleteProfilePrefsJune_2021(profile_prefs);
+#endif  // defined(OS_ANDROID)
+
   // Added 07/2021
 #if defined(OS_MAC)
   profile_prefs->ClearPref(kPasswordRecovery);