assertj / assertj/assertj-swing
delay setings dont speedup enterText
- 主要语言
- Java
- 星标
- 121
- 派生
- 52
- PR 合并指标
- 30 天内没有已合并 PR
描述
_Issue by **[a](http://jira.codehaus.org/secure/ViewProfile.jspa?name=henningb)** from Mon, 30 Nov 2009 05:10:44 -0600_
_Originally opened as http://jira.codehaus.org/browse/FEST-265_
---
you cant speedup enterText with the delay settings.
robot.settings().delayBetweenEvents(10);
robot.settings().eventPostingDelay(10);
XXXXXXX.enterText(text);
Thas only works for keys without modifiers like Numbers.
Workaround (using awt.Robot, German Keybord and AltGr dont work):
public void setTextSim(String text, CommonComponentFixture component){
KeyStrokeMappingProvider_de provider= new KeyStrokeMappingProvider_de();
KeyStrokeMap.addKeyStrokesFrom(provider);
java.awt.Robot awtRobot = null;
try {
awtRobot = new java.awt.Robot();
} catch (AWTException e) {
e.printStackTrace();
}
awtRobot.setAutoDelay(5);
component.focus();
boolean shiftPressed=false;
for (int i=0;i<text.length();i++){
char character = text.charAt(i);
boolean needShift=((KeyStrokeMap.keyStrokeFor(character).getModifiers() & InputEvent.SHIFT_DOWN_MASK) != 0 );
if (needShift){
if (!shiftPressed){
awtRobot.keyPress(KeyEvent.VK_SHIFT);
awtRobot.waitForIdle();
shiftPressed=true;
}
} else {//dont need shift
if (shiftPressed){
awtRobot.keyRelease(KeyEvent.VK_SHIFT);
awtRobot.waitForIdle();
shiftPressed=false;
}
}
int keyCode=KeyStrokeMap.keyStrokeFor(character).getKeyCode();
awtRobot.keyRelease(keyCode);
awtRobot.waitForIdle();
awtRobot.keyPress(keyCode);
awtRobot.waitForIdle();
}
if (shiftPressed){
robot.releaseKey(KeyEvent.VK_SHIFT);
}}
---
votes (original issue): 0
watches (original issue): 1
贡献指南
调研方向
Search for the enterText entry point and the robot.settings() handling of delayBetweenEvents and eventPostingDelay, then trace how modified keystrokes are posted. Reproduce the example with modifier keys and confirm that the configured delays affect those characters as well as unmodified keys.
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- java
- 领域
- desktop, testing
- Issue 类型
- 缺陷
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 停滞
- 描述清晰度
- 基本清楚
- 新手友好度
- 35/100