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

Unified Diff: components/cronet/android/test/javatests/src/org/chromium/net/CronetTestBase.java

Issue 2892013002: [Cronet] Clean up tests (Closed)
Patch Set: fix Created 3 years, 7 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: components/cronet/android/test/javatests/src/org/chromium/net/CronetTestBase.java
diff --git a/components/cronet/android/test/javatests/src/org/chromium/net/CronetTestBase.java b/components/cronet/android/test/javatests/src/org/chromium/net/CronetTestBase.java
index 4ee097fb33c418381c2f96560535d627a7b99e11..6dddbaae71871347f9f63f51c362a42a17f6de17 100644
--- a/components/cronet/android/test/javatests/src/org/chromium/net/CronetTestBase.java
+++ b/components/cronet/android/test/javatests/src/org/chromium/net/CronetTestBase.java
@@ -19,6 +19,7 @@ import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import java.lang.reflect.AnnotatedElement;
import java.net.URL;
+import java.net.URLStreamHandlerFactory;
/**
* Base test class for all CronetTest based tests.
@@ -38,6 +39,8 @@ public class CronetTestBase extends AndroidTestCase {
private static final String LOOPBACK_ADDRESS = "127.0.0.1";
private CronetTestFramework mCronetTestFramework;
+ private URLStreamHandlerFactory mStreamHandlerFactory;
+
// {@code true} when test is being run against system HttpURLConnection implementation.
private boolean mTestingSystemHttpURLConnection;
private boolean mTestingJavaImpl = false;
@@ -55,43 +58,15 @@ public class CronetTestBase extends AndroidTestCase {
* Starts the CronetTest framework.
*/
protected CronetTestFramework startCronetTestFramework() {
- return startCronetTestFrameworkWithUrlAndCronetEngineBuilder(null, null);
- }
-
- /**
- * Starts the CronetTest framework and loads the given URL. The URL can be
- * null.
- */
- protected CronetTestFramework startCronetTestFrameworkWithUrl(String url) {
- return startCronetTestFrameworkWithUrlAndCronetEngineBuilder(url, null);
+ return startCronetTestFrameworkWithCronetEngineBuilder(null);
}
/**
- * Starts the CronetTest framework using the provided CronetEngine.Builder
- * and loads the given URL. The URL can be null.
+ * Starts the CronetTest framework using the provided CronetEngine.Builder.
*/
- protected CronetTestFramework startCronetTestFrameworkWithUrlAndCronetEngineBuilder(
- String url, ExperimentalCronetEngine.Builder builder) {
- mCronetTestFramework = new CronetTestFramework(url, null, getContext(), builder);
- return mCronetTestFramework;
- }
-
- /**
- * Starts the CronetTest framework appending the provided command line
- * arguments and loads the given URL. The URL can be null.
- */
- protected CronetTestFramework startCronetTestFrameworkWithUrlAndCommandLineArgs(
- String url, String[] commandLineArgs) {
- mCronetTestFramework = new CronetTestFramework(url, commandLineArgs, getContext(), null);
- return mCronetTestFramework;
- }
-
- // Helper method to tell the framework to skip library init during construction.
- protected CronetTestFramework startCronetTestFrameworkAndSkipLibraryInit() {
- String[] commandLineArgs = {
- CronetTestFramework.LIBRARY_INIT_KEY, CronetTestFramework.LibraryInitType.NONE};
- mCronetTestFramework =
- startCronetTestFrameworkWithUrlAndCommandLineArgs(null, commandLineArgs);
+ protected CronetTestFramework startCronetTestFrameworkWithCronetEngineBuilder(
+ ExperimentalCronetEngine.Builder builder) {
+ mCronetTestFramework = new CronetTestFramework(getContext(), builder);
return mCronetTestFramework;
}
@@ -123,11 +98,11 @@ public class CronetTestBase extends AndroidTestCase {
super.runTest();
// Use Cronet's implementation, and run the same test.
mTestingSystemHttpURLConnection = false;
- URL.setURLStreamHandlerFactory(mCronetTestFramework.mStreamHandlerFactory);
+ URL.setURLStreamHandlerFactory(mStreamHandlerFactory);
super.runTest();
} else if (method.isAnnotationPresent(OnlyRunCronetHttpURLConnection.class)) {
// Run only with Cronet's implementation.
- URL.setURLStreamHandlerFactory(mCronetTestFramework.mStreamHandlerFactory);
+ URL.setURLStreamHandlerFactory(mStreamHandlerFactory);
super.runTest();
} else {
// For all other tests.
@@ -178,7 +153,7 @@ public class CronetTestBase extends AndroidTestCase {
assertEquals(expected.getUrlChain(), actual.getUrlChain());
assertEquals(expected.getUrl(), actual.getUrl());
// Transferred bytes and proxy server are not supported in pure java
- if (!(mCronetTestFramework.mCronetEngine instanceof JavaCronetEngine)) {
+ if (!testingJavaImpl()) {
assertEquals(expected.getReceivedByteCount(), actual.getReceivedByteCount());
assertEquals(expected.getProxyServer(), actual.getProxyServer());
// This is a place where behavior intentionally differs between native and java
@@ -194,6 +169,20 @@ public class CronetTestBase extends AndroidTestCase {
}
}
+ public CronetEngine.Builder enableDiskCache(CronetEngine.Builder cronetEngineBuilder) {
+ cronetEngineBuilder.setStoragePath(CronetTestFramework.getTestStorage(getContext()));
+ cronetEngineBuilder.enableHttpCache(CronetEngine.Builder.HTTP_CACHE_DISK, 1000 * 1024);
+ return cronetEngineBuilder;
+ }
+
+ /**
+ * Sets the {@link UrlStreamHandlerFactory} from {@code cronetEngine}. This should be called
mgersh 2017/05/23 18:12:13 nit: Url... -> URL...
pauljensen 2017/05/25 15:15:14 Done.
mgersh 2017/05/25 18:11:16 This and the one below aren't actually done?
pauljensen 2017/05/26 00:14:03 Done.
+ * during setup() and is installed by {@link runTest()} as the default when Cronet is tested.
mgersh 2017/05/23 18:12:13 nit: setup() -> setUp()
pauljensen 2017/05/25 15:15:14 Done.
+ */
+ public void setStreamHandlerFactory(CronetEngine cronetEngine) {
+ mStreamHandlerFactory = cronetEngine.createURLStreamHandlerFactory();
+ }
+
@Target(ElementType.METHOD)
@Retention(RetentionPolicy.RUNTIME)
public @interface CompareDefaultWithCronet {

Powered by Google App Engine
This is Rietveld 408576698