Skip to content

Commit 3d38723

Browse files
committed
added set speed command, fixes #108
1 parent e55de24 commit 3d38723

File tree

3 files changed

+12
-0
lines changed

3 files changed

+12
-0
lines changed

packages/selenium-ide/src/ext-command.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -173,6 +173,7 @@ function isExtCommand(command) {
173173
case "open":
174174
case "selectFrame":
175175
case "selectWindow":
176+
case "setSpeed":
176177
case "close":
177178
return true;
178179
default:

packages/selenium-ide/src/neo/IO/SideeX/playback.js

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,16 @@ import UiState from "../../stores/view/UiState";
2121
const { ExtCommand, isExtCommand } = window;
2222

2323
const extCommand = new ExtCommand();
24+
// In order to not break the separation of the execution loop from the state of the playback
25+
// I will set doSetSpeed here so that extCommand will not be aware of the state
26+
extCommand.doSetSpeed = (speed) => {
27+
if (speed < 0) speed = 0;
28+
if (speed > PlaybackState.maxDelay) speed = PlaybackState.maxDelay;
29+
30+
PlaybackState.setDelay(speed);
31+
return Promise.resolve();
32+
};
33+
2434
window.extCommand = extCommand;
2535
const xlateArgument = window.xlateArgument;
2636
let baseUrl = "";

packages/selenium-ide/src/neo/models/Command.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,7 @@ export const Commands = Object.freeze({
104104
selectFrame: "select frame",
105105
selectWindow: "select window",
106106
sendKeys: "send keys",
107+
setSpeed: "set speed",
107108
store: "store",
108109
storeText: "store text",
109110
storeTitle: "store title",

0 commit comments

Comments
 (0)