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

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

Issue 2406273002: [Cronet] Test the libcronet that's shipped, not libcronet_test (Closed)
Patch Set: address two remaining comments Created 4 years, 2 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/src/org/chromium/net/CronetTestUtil.java
diff --git a/components/cronet/android/test/src/org/chromium/net/CronetTestUtil.java b/components/cronet/android/test/src/org/chromium/net/CronetTestUtil.java
index c9ed886763002b02f0e9940da48e8f7125c56048..57baadb8a2587b931a79f3fe75c2508a0051b364 100644
--- a/components/cronet/android/test/src/org/chromium/net/CronetTestUtil.java
+++ b/components/cronet/android/test/src/org/chromium/net/CronetTestUtil.java
@@ -4,20 +4,18 @@
package org.chromium.net;
-import android.os.ConditionVariable;
+import org.json.JSONException;
+import org.json.JSONObject;
import org.chromium.base.annotations.JNINamespace;
import org.chromium.net.impl.CronetUrlRequest;
-import org.json.JSONException;
-import org.json.JSONObject;
+import org.chromium.net.impl.CronetUrlRequestContext;
/**
* Utilities for Cronet testing
*/
@JNINamespace("cronet")
public class CronetTestUtil {
- private static final ConditionVariable sHostResolverBlock = new ConditionVariable();
-
static final String SDCH_FAKE_HOST = "fake.sdch.domain";
// QUIC test domain must match the certificate used
// (quic_test.example.com.crt and quic_test.example.com.key.pkcs8), and
@@ -58,6 +56,22 @@ public class CronetTestUtil {
}
/**
+ * Prepare {@code cronetEngine}'s network thread so libcronet_test code can run on it.
+ */
+ public static class PrepareNetworkThread {
mef 2016/11/16 20:01:27 I think the name is a bit confusing, maybe call it
pauljensen 2016/11/18 18:12:10 Done.
+ private final CronetUrlRequestContext mRequestContext;
+
+ public PrepareNetworkThread(CronetEngine cronetEngine) {
+ mRequestContext = (CronetUrlRequestContext) cronetEngine;
+ nativePrepareNetworkThread(mRequestContext.getUrlRequestContextAdapter());
+ }
+
+ public void shutdown() {
+ nativeCleanupNetworkThread(mRequestContext.getUrlRequestContextAdapter());
+ }
+ }
+
+ /**
* Returns the value of load flags in |urlRequest|.
* @param urlRequest is the UrlRequest object of interest.
*/
@@ -65,5 +79,8 @@ public class CronetTestUtil {
return nativeGetLoadFlags(((CronetUrlRequest) urlRequest).getUrlRequestAdapterForTesting());
}
- private static native int nativeGetLoadFlags(long urlRequest);
+ private static native int nativeGetLoadFlags(long urlRequestAdapter);
+
+ private static native void nativePrepareNetworkThread(long contextAdapter);
mef 2016/11/16 20:01:27 nit: maybe these should be class methods as oppose
pauljensen 2016/11/18 18:12:10 @NativeClassQualifiedName only works for non-stati
mef 2016/11/18 21:45:50 Acknowledged. Thanks for explanation!
+ private static native void nativeCleanupNetworkThread(long contextAdapter);
}

Powered by Google App Engine
This is Rietveld 408576698