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