TouchModeFlexibleAssertspublic class TouchModeFlexibleAsserts extends Object When entering touch mode via touch, the tests can be flaky. These asserts
are more flexible (allowing up to MAX_ATTEMPTS touches to enter touch mode via touch or
tap) until we can find a way to solve the flakiness. |
Fields Summary |
---|
private static int | MAX_ATTEMPTS | private static int | MAX_DELAY_MILLIS |
Methods Summary |
---|
public static void | assertInTouchModeAfterClick(android.test.InstrumentationTestCase test, android.view.View viewToTouch)
int numAttemptsAtTouchMode = 0;
while (numAttemptsAtTouchMode < MAX_ATTEMPTS &&
!viewToTouch.isInTouchMode()) {
TouchUtils.clickView(test, viewToTouch);
numAttemptsAtTouchMode++;
}
Assert.assertTrue("even after " + MAX_ATTEMPTS + " clicks, did not enter "
+ "touch mode", viewToTouch.isInTouchMode());
//Assert.assertEquals("number of touches to enter touch mode", 1, numAttemptsAtTouchMode);
| public static void | assertInTouchModeAfterTap(android.test.InstrumentationTestCase test, android.view.View viewToTouch)
int numAttemptsAtTouchMode = 0;
while (numAttemptsAtTouchMode < MAX_ATTEMPTS &&
!viewToTouch.isInTouchMode()) {
TouchUtils.tapView(test, viewToTouch);
numAttemptsAtTouchMode++;
}
Assert.assertTrue("even after " + MAX_ATTEMPTS + " taps, did not enter "
+ "touch mode", viewToTouch.isInTouchMode());
//Assert.assertEquals("number of touches to enter touch mode", 1, numAttemptsAtTouchMode);
| public static void | assertNotInTouchModeAfterKey(android.test.InstrumentationTestCase test, int keyCode, android.view.View checkForTouchMode)
test.sendKeys(keyCode);
int amountLeft = MAX_DELAY_MILLIS;
while (checkForTouchMode.isInTouchMode() && amountLeft > 0) {
amountLeft -= 200;
try {
Thread.sleep(200);
} catch (InterruptedException e) {
throw new RuntimeException(e);
}
}
Assert.assertFalse("even after waiting " + MAX_DELAY_MILLIS + " millis after "
+ "pressing key event, still in touch mode", checkForTouchMode.isInTouchMode());
|
|