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

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

Issue 2872593002: [Cronet] Regression test for DCHECK when histograms read on another thread (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
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: components/cronet/android/test/javatests/src/org/chromium/net/CronetUrlRequestContextTest.java
diff --git a/components/cronet/android/test/javatests/src/org/chromium/net/CronetUrlRequestContextTest.java b/components/cronet/android/test/javatests/src/org/chromium/net/CronetUrlRequestContextTest.java
index e0f7186c14df82134c55cc15ae153caaaf79eb29..7c9852c9ba409012294474ba38512b25b96252d3 100644
--- a/components/cronet/android/test/javatests/src/org/chromium/net/CronetUrlRequestContextTest.java
+++ b/components/cronet/android/test/javatests/src/org/chromium/net/CronetUrlRequestContextTest.java
@@ -1145,16 +1145,27 @@ public class CronetUrlRequestContextTest extends CronetTestBase {
public void testGetGlobalMetricsDeltas() throws Exception {
final CronetTestFramework testFramework = startCronetTestFramework();
- byte delta1[] = testFramework.mCronetEngine.getGlobalMetricsDeltas();
+ final byte delta1[] = testFramework.mCronetEngine.getGlobalMetricsDeltas();
- TestUrlRequestCallback callback = new TestUrlRequestCallback();
+ final TestUrlRequestCallback callback = new TestUrlRequestCallback();
UrlRequest.Builder builder = testFramework.mCronetEngine.newUrlRequestBuilder(
mUrl, callback, callback.getExecutor());
builder.build().start();
- callback.blockForDone();
- byte delta2[] = testFramework.mCronetEngine.getGlobalMetricsDeltas();
- assertTrue(delta2.length != 0);
- assertFalse(Arrays.equals(delta1, delta2));
+ // Fetch deltas on a different thread the second time to make sure this is permitted.
+ // See crbug.com/719448
+ final ConditionVariable cv = new ConditionVariable();
+ new Thread(new Runnable() {
+ @Override
+ public void run() {
+ callback.blockForDone();
+ byte delta2[] = testFramework.mCronetEngine.getGlobalMetricsDeltas();
+ assertTrue(delta2.length != 0);
mef 2017/05/09 15:13:26 AFAIK JUnit assertions only work properly on the m
pauljensen 2017/05/09 15:55:54 Done.
+ assertFalse(Arrays.equals(delta1, delta2));
+ cv.open();
+ }
+ })
+ .start(); // TODO(pauljensen): weird spaces crbug.com/719964
+ cv.block();
}
@SmallTest
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698