Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(838)

Unified Diff: chrome/android/shell/java/src/org/chromium/chrome/shell/ChromeShellActivity.java

Issue 185563010: Adding a test for SelectFileDialog. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/android/shell/java/src/org/chromium/chrome/shell/ChromeShellActivity.java
diff --git a/chrome/android/shell/java/src/org/chromium/chrome/shell/ChromeShellActivity.java b/chrome/android/shell/java/src/org/chromium/chrome/shell/ChromeShellActivity.java
index e68e396813f89c8887068eae0321690f4d01e1b7..b971d5264642726baaa0a0507e88a70e3031801f 100644
--- a/chrome/android/shell/java/src/org/chromium/chrome/shell/ChromeShellActivity.java
+++ b/chrome/android/shell/java/src/org/chromium/chrome/shell/ChromeShellActivity.java
@@ -45,6 +45,23 @@ public class ChromeShellActivity extends Activity implements AppMenuPropertiesDe
private static final String TAG = "ChromeShellActivity";
private static final String CHROME_DISTILLER_SCHEME = "chrome-distiller";
+ /**
+ * Factory used to set up a mock ActivityWindowAndroid for testing.
+ */
+ public interface WindowAndroidFactoryForTest {
+ /**
+ * @return ActivityWindowAndroid for the given activity.
+ */
+ public ActivityWindowAndroid getActivityWindowAndroid(Activity activity);
+ }
+
+ private static WindowAndroidFactoryForTest sWindowAndroidFactory =
+ new WindowAndroidFactoryForTest() {
+ @Override
+ public ActivityWindowAndroid getActivityWindowAndroid(Activity activity) {
+ return new ActivityWindowAndroid(activity);
+ }
+ };
private WindowAndroid mWindow;
private TabManager mTabManager;
private DevToolsServer mDevToolsServer;
@@ -80,8 +97,7 @@ public class ChromeShellActivity extends Activity implements AppMenuPropertiesDe
};
try {
BrowserStartupController.get(this).startBrowserProcessesAsync(callback);
- }
- catch (ProcessInitException e) {
+ } catch (ProcessInitException e) {
Log.e(TAG, "Unable to load native library.", e);
System.exit(-1);
}
@@ -91,7 +107,7 @@ public class ChromeShellActivity extends Activity implements AppMenuPropertiesDe
setContentView(R.layout.testshell_activity);
mTabManager = (TabManager) findViewById(R.id.tab_manager);
- mWindow = new ActivityWindowAndroid(this);
+ mWindow = sWindowAndroidFactory.getActivityWindowAndroid(this);
mWindow.restoreInstanceState(savedInstanceState);
mTabManager.initialize(mWindow, new ActivityContentVideoViewClient(this));
@@ -315,4 +331,9 @@ public class ChromeShellActivity extends Activity implements AppMenuPropertiesDe
a.recycle();
return itemRowHeight;
}
+
+ @VisibleForTesting
+ public static void setActivityWindowAndroidFactory(WindowAndroidFactoryForTest factory) {
+ sWindowAndroidFactory = factory;
+ }
}

Powered by Google App Engine
This is Rietveld 408576698