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

Unified Diff: chrome/android/javatests/src/org/chromium/chrome/browser/widget/ToolbarProgressBarTest.java

Issue 1297073004: Fix various errorprone warnings and errors. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase. Created 5 years, 4 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/javatests/src/org/chromium/chrome/browser/widget/ToolbarProgressBarTest.java
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/widget/ToolbarProgressBarTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/widget/ToolbarProgressBarTest.java
index 8407d32c1e1dc02add810aacbb885582d9805529..b06250ec8dfd6a2a194a6b337d5184f2756a28df 100644
--- a/chrome/android/javatests/src/org/chromium/chrome/browser/widget/ToolbarProgressBarTest.java
+++ b/chrome/android/javatests/src/org/chromium/chrome/browser/widget/ToolbarProgressBarTest.java
@@ -12,13 +12,13 @@ import android.test.suitebuilder.annotation.MediumTest;
import android.view.View;
import org.chromium.base.ThreadUtils;
-import org.chromium.base.annotations.SuppressFBWarnings;
import org.chromium.base.test.util.Feature;
import org.chromium.base.test.util.Restriction;
import org.chromium.chrome.R;
import org.chromium.chrome.browser.ChromeActivity;
import org.chromium.chrome.test.ChromeActivityTestCaseBase;
+import java.util.concurrent.atomic.AtomicBoolean;
import java.util.concurrent.atomic.AtomicReference;
/**
@@ -26,6 +26,8 @@ import java.util.concurrent.atomic.AtomicReference;
*/
public class ToolbarProgressBarTest extends ChromeActivityTestCaseBase<ChromeActivity> {
+ static final int TEST_WAIT_TIME_MS = 60000;
+
public ToolbarProgressBarTest() {
super(ChromeActivity.class);
}
@@ -43,10 +45,10 @@ public class ToolbarProgressBarTest extends ChromeActivityTestCaseBase<ChromeAct
@Feature({"Android-Toolbar"})
@MediumTest
@Restriction(RESTRICTION_TYPE_PHONE)
- @SuppressFBWarnings({"WA_NOT_IN_LOOP", "UW_UNCOND_WAIT"})
public void testProgressBarDisappearsAfterFastShowHide() throws InterruptedException {
// onAnimationEnd will be signaled on progress bar showing/hiding animation end.
final Object onAnimationEnd = new Object();
+ final AtomicBoolean animationEnded = new AtomicBoolean(false);
final AtomicReference<ToolbarProgressBar> progressBar =
new AtomicReference<ToolbarProgressBar>();
ThreadUtils.runOnUiThreadBlocking(new Runnable() {
@@ -67,6 +69,7 @@ public class ToolbarProgressBarTest extends ChromeActivityTestCaseBase<ChromeAct
@Override
public void onAnimationEnd(Animator animation) {
synchronized (onAnimationEnd) {
+ animationEnded.set(true);
onAnimationEnd.notify();
}
}
@@ -82,6 +85,7 @@ public class ToolbarProgressBarTest extends ChromeActivityTestCaseBase<ChromeAct
assertNotSame(View.VISIBLE, progressBar.get().getVisibility());
// Make some progress and check that the progress bar is fully visible.
+ animationEnded.set(false);
synchronized (onAnimationEnd) {
ThreadUtils.runOnUiThread(new Runnable() {
@Override
@@ -91,12 +95,16 @@ public class ToolbarProgressBarTest extends ChromeActivityTestCaseBase<ChromeAct
}
});
- onAnimationEnd.wait();
+ long deadline = System.currentTimeMillis() + TEST_WAIT_TIME_MS;
+ while (!animationEnded.get() && System.currentTimeMillis() < deadline) {
+ onAnimationEnd.wait(deadline - System.currentTimeMillis());
+ }
assertEquals(1.0f, progressBar.get().getAlpha());
assertEquals(View.VISIBLE, progressBar.get().getVisibility());
}
// Clear progress and check that the progress bar is hidden.
+ animationEnded.set(false);
synchronized (onAnimationEnd) {
ThreadUtils.runOnUiThread(new Runnable() {
@Override
@@ -105,7 +113,10 @@ public class ToolbarProgressBarTest extends ChromeActivityTestCaseBase<ChromeAct
}
});
- onAnimationEnd.wait();
+ long deadline = System.currentTimeMillis() + TEST_WAIT_TIME_MS;
+ while (!animationEnded.get() && System.currentTimeMillis() < deadline) {
+ onAnimationEnd.wait(deadline - System.currentTimeMillis());
+ }
assertEquals(0.0f, progressBar.get().getAlpha());
assertNotSame(View.VISIBLE, progressBar.get().getVisibility());
}

Powered by Google App Engine
This is Rietveld 408576698