Index: components/cronet/android/test/src/org/chromium/cronet_test_apk/CronetTestActivity.java |
diff --git a/components/cronet/android/test/src/org/chromium/cronet_test_apk/CronetTestActivity.java b/components/cronet/android/test/src/org/chromium/cronet_test_apk/CronetTestActivity.java |
index 863d7639169d5bf8dd0bdeaa15dd4f0fde0e472c..9ca6eebaa0a2a8f4f8918db2303ac1b250170892 100644 |
--- a/components/cronet/android/test/src/org/chromium/cronet_test_apk/CronetTestActivity.java |
+++ b/components/cronet/android/test/src/org/chromium/cronet_test_apk/CronetTestActivity.java |
@@ -34,7 +34,16 @@ public class CronetTestActivity extends Activity { |
public static final String COMMAND_LINE_ARGS_KEY = "commandLineArgs"; |
public static final String POST_DATA_KEY = "postData"; |
public static final String CONFIG_KEY = "config"; |
- public static final String SKIP_FACTORY_INIT_KEY = "skipFactoryInit"; |
+ public static final String LIBRARY_INIT_KEY = "libraryInit"; |
+ /** |
+ * Skip library initialization. |
+ */ |
+ public static final String LIBRARY_INIT_SKIP = "skip"; |
+ |
+ /** |
+ * Initialize Cronet Async API only. |
+ */ |
+ public static final String LIBRARY_INIT_CRONET_ONLY = "cronetOnly"; |
public CronetURLStreamHandlerFactory mStreamHandlerFactory; |
public UrlRequestContext mUrlRequestContext; |
@@ -66,36 +75,29 @@ public class CronetTestActivity extends Activity { |
protected void onCreate(final Bundle savedInstanceState) { |
super.onCreate(savedInstanceState); |
- try { |
- System.loadLibrary("cronet_tests"); |
- } catch (UnsatisfiedLinkError e) { |
- Log.e(TAG, "libcronet_test initialization failed.", e); |
- finish(); |
+ String initString = getCommandLineArg(LIBRARY_INIT_KEY); |
+ if (LIBRARY_INIT_SKIP.equals(initString)) { |
return; |
} |
- mHistogramManager = new HistogramManager(); |
- |
- String skipInitString = getCommandLineArg(SKIP_FACTORY_INIT_KEY); |
- if (skipInitString != null) { |
- return; |
- } |
- mRequestFactory = initRequestFactory(); |
+ mUrlRequestContext = initRequestContext(); |
mStreamHandlerFactory = new CronetURLStreamHandlerFactory( |
getApplicationContext(), null); |
+ mHistogramManager = new HistogramManager(); |
- if (mRequestFactory == null) { |
+ if (LIBRARY_INIT_CRONET_ONLY.equals(initString)) { |
return; |
} |
+ mRequestFactory = initRequestFactory(); |
+ |
String appUrl = getUrlFromIntent(getIntent()); |
if (appUrl != null) { |
startWithURL(appUrl); |
} |
} |
- // Helper function to initialize request factory. Also used in testing. |
- public HttpUrlRequestFactory initRequestFactory() { |
+ UrlRequestContextConfig getContextConfig() { |
UrlRequestContextConfig config = new UrlRequestContextConfig(); |
config.enableHttpCache(UrlRequestContextConfig.HttpCache.IN_MEMORY, |
100 * 1024) |
@@ -117,12 +119,17 @@ public class CronetTestActivity extends Activity { |
// Setting this here so it isn't overridden on the command line |
config.setLibraryName("cronet_tests"); |
+ return config; |
+ } |
- mUrlRequestContext = UrlRequestContext.createContext( |
- getApplicationContext(), config); |
+ // Helper function to initialize request context. Also used in testing. |
+ public UrlRequestContext initRequestContext() { |
+ return UrlRequestContext.createContext(getApplicationContext(), getContextConfig()); |
+ } |
- return HttpUrlRequestFactory.createFactory(getApplicationContext(), |
- config); |
+ // Helper function to initialize request factory. Also used in testing. |
+ public HttpUrlRequestFactory initRequestFactory() { |
+ return HttpUrlRequestFactory.createFactory(getApplicationContext(), getContextConfig()); |
} |
private static String getUrlFromIntent(Intent intent) { |