Index: chrome/browser/android/banners/app_banner_manager.cc |
diff --git a/chrome/browser/android/banners/app_banner_manager.cc b/chrome/browser/android/banners/app_banner_manager.cc |
index 25fa8a265b0bbb963782148eee14eaa1e6a07588..0f0dcb56ae3f0191bd1af44bada9142329f874aa 100644 |
--- a/chrome/browser/android/banners/app_banner_manager.cc |
+++ b/chrome/browser/android/banners/app_banner_manager.cc |
@@ -44,6 +44,7 @@ using base::android::ConvertUTF16ToJavaString; |
namespace { |
const char kBannerTag[] = "google-play-id"; |
+base::TimeDelta gTimeDeltaForTesting; |
} |
namespace banners { |
@@ -144,20 +145,20 @@ void AppBannerManager::RecordCouldShowBanner( |
const std::string& package_or_start_url) { |
AppBannerSettingsHelper::RecordBannerEvent( |
web_contents(), validated_url_, package_or_start_url, |
- AppBannerSettingsHelper::APP_BANNER_EVENT_COULD_SHOW, base::Time::Now()); |
+ AppBannerSettingsHelper::APP_BANNER_EVENT_COULD_SHOW, GetCurrentTime()); |
} |
bool AppBannerManager::CheckIfShouldShow( |
const std::string& package_or_start_url) { |
if (!AppBannerSettingsHelper::ShouldShowBanner(web_contents(), validated_url_, |
package_or_start_url, |
- base::Time::Now())) { |
+ GetCurrentTime())) { |
return false; |
} |
AppBannerSettingsHelper::RecordBannerEvent( |
web_contents(), validated_url_, package_or_start_url, |
- AppBannerSettingsHelper::APP_BANNER_EVENT_DID_SHOW, base::Time::Now()); |
+ AppBannerSettingsHelper::APP_BANNER_EVENT_DID_SHOW, GetCurrentTime()); |
return true; |
} |
@@ -258,6 +259,10 @@ bool AppBannerManager::OnAppDetailsRetrieved(JNIEnv* env, |
return FetchIcon(GURL(image_url)); |
} |
+int AppBannerManager::GetNumActiveFetchers(JNIEnv* env, jobject obj) { |
+ return fetcher_.get() ? 1 : 0; |
gone
2015/02/14 01:29:27
Forked off from another CL which has multiple fetc
|
+} |
+ |
bool AppBannerManager::FetchIcon(const GURL& image_url) { |
if (!web_contents()) |
return false; |
@@ -284,6 +289,11 @@ int AppBannerManager::GetPreferredIconSize() { |
return Java_AppBannerManager_getPreferredIconSize(env, jobj.obj()); |
} |
+// static |
+base::Time AppBannerManager::GetCurrentTime() { |
+ return base::Time::Now() + gTimeDeltaForTesting; |
+} |
+ |
void RecordDismissEvent(JNIEnv* env, jclass clazz, jint metric) { |
banners::TrackDismissEvent(metric); |
} |
@@ -302,6 +312,10 @@ jboolean IsEnabled(JNIEnv* env, jclass clazz) { |
switches::kEnableAppInstallAlerts); |
} |
+void SetTimeDeltaForTesting(JNIEnv* env, jclass clazz, jint days) { |
+ gTimeDeltaForTesting = base::TimeDelta::FromDays(days); |
+} |
+ |
// Register native methods |
bool RegisterAppBannerManager(JNIEnv* env) { |
return RegisterNativesImpl(env); |