mirror of
https://github.com/wassname/DefinitelyTyped.git
synced 2026-08-29 11:12:23 +08:00
Remove timers
Link: https://github.com/SeleniumHQ/selenium/commit/43c1701222bf0314567e554c7a1dd1ad903bfa4f#diff-b1976f46bdbb6d0d51ba6baa46156d61
This commit is contained in:
@@ -1021,10 +1021,6 @@ function TestUntilModule() {
|
||||
function TestControlFlow() {
|
||||
var flow: webdriver.promise.ControlFlow;
|
||||
flow = new webdriver.promise.ControlFlow();
|
||||
flow = new webdriver.promise.ControlFlow({clearInterval: function(a: number) {},
|
||||
clearTimeout: function(a: number) {},
|
||||
setInterval: function(a: () => void, b: number) { return 2; },
|
||||
setTimeout: function(a: () => void, b: number) { return 2; }});
|
||||
|
||||
var emitter: webdriver.EventEmitter = flow;
|
||||
|
||||
@@ -1036,11 +1032,13 @@ function TestControlFlow() {
|
||||
eventType = webdriver.promise.ControlFlow.EventType.UNCAUGHT_EXCEPTION;
|
||||
|
||||
var stringPromise: webdriver.promise.Promise<string>;
|
||||
|
||||
stringPromise = flow.execute(function() { return stringPromise; });
|
||||
stringPromise = flow.execute(function() { return stringPromise; }, 'Description');
|
||||
|
||||
var schedule: string = flow.getSchedule();
|
||||
var schedule: string;
|
||||
schedule = flow.toString();
|
||||
schedule = flow.getSchedule();
|
||||
schedule = flow.getSchedule(true);
|
||||
|
||||
flow.reset();
|
||||
|
||||
@@ -1051,10 +1049,7 @@ function TestControlFlow() {
|
||||
voidPromise = flow.wait(function() { return true; }, 123, 'Timeout Message');
|
||||
voidPromise = flow.wait(function() { return stringPromise; }, 123, 'Timeout Message');
|
||||
|
||||
var timer: webdriver.promise.IControlFlowTimer = flow.timer;
|
||||
|
||||
timer = webdriver.promise.ControlFlow.defaultTimer;
|
||||
var loopFrequency: number = webdriver.promise.ControlFlow.EVENT_LOOP_FREQUENCY;
|
||||
}
|
||||
|
||||
function TestDeferred() {
|
||||
|
||||
+26
-50
@@ -1518,58 +1518,34 @@ declare module webdriver {
|
||||
* the ordered scheduled, starting each task only once those before it have
|
||||
* completed.
|
||||
*
|
||||
* <p>Each task scheduled within this flow may return a
|
||||
* Each task scheduled within this flow may return a
|
||||
* {@link webdriver.promise.Promise} to indicate it is an asynchronous
|
||||
* operation. The ControlFlow will wait for such promises to be resolved before
|
||||
* marking the task as completed.
|
||||
*
|
||||
* <p>Tasks and each callback registered on a {@link webdriver.promise.Deferred}
|
||||
* Tasks and each callback registered on a {@link webdriver.promise.Promise}
|
||||
* will be run in their own ControlFlow frame. Any tasks scheduled within a
|
||||
* frame will have priority over previously scheduled tasks. Furthermore, if
|
||||
* any of the tasks in the frame fails, the remainder of the tasks in that frame
|
||||
* will be discarded and the failure will be propagated to the user through the
|
||||
* frame will take priority over previously scheduled tasks. Furthermore, if any
|
||||
* of the tasks in the frame fail, the remainder of the tasks in that frame will
|
||||
* be discarded and the failure will be propagated to the user through the
|
||||
* callback/task's promised result.
|
||||
*
|
||||
* <p>Each time a ControlFlow empties its task queue, it will fire an
|
||||
* {@link webdriver.promise.ControlFlow.EventType.IDLE} event. Conversely,
|
||||
* Each time a ControlFlow empties its task queue, it will fire an
|
||||
* {@link webdriver.promise.ControlFlow.EventType.IDLE IDLE} event. Conversely,
|
||||
* whenever the flow terminates due to an unhandled error, it will remove all
|
||||
* remaining tasks in its queue and fire an
|
||||
* {@link webdriver.promise.ControlFlow.EventType.UNCAUGHT_EXCEPTION} event. If
|
||||
* there are no listeners registered with the flow, the error will be
|
||||
* rethrown to the global error handler.
|
||||
* {@link webdriver.promise.ControlFlow.EventType.UNCAUGHT_EXCEPTION
|
||||
* UNCAUGHT_EXCEPTION} event. If there are no listeners registered with the
|
||||
* flow, the error will be rethrown to the global error handler.
|
||||
*
|
||||
* @extends {webdriver.EventEmitter}
|
||||
* @extends {EventEmitter}
|
||||
* @final
|
||||
*/
|
||||
class ControlFlow extends EventEmitter {
|
||||
|
||||
//region Constructors
|
||||
|
||||
/**
|
||||
* @param {webdriver.promise.ControlFlow.Timer=} opt_timer The timer object
|
||||
* to use. Should only be set for testing.
|
||||
* @constructor
|
||||
*/
|
||||
constructor(opt_timer?: IControlFlowTimer);
|
||||
|
||||
//endregion
|
||||
|
||||
//region Properties
|
||||
|
||||
/**
|
||||
* The timer used by this instance.
|
||||
* @type {webdriver.promise.ControlFlow.Timer}
|
||||
*/
|
||||
timer: IControlFlowTimer;
|
||||
|
||||
//endregion
|
||||
|
||||
//region Static Properties
|
||||
|
||||
/**
|
||||
* The default timer object, which uses the global timer functions.
|
||||
* @type {webdriver.promise.ControlFlow.Timer}
|
||||
*/
|
||||
static defaultTimer: IControlFlowTimer;
|
||||
constructor();
|
||||
|
||||
/**
|
||||
* Events that may be emitted by an {@link webdriver.promise.ControlFlow}.
|
||||
@@ -1595,15 +1571,12 @@ declare module webdriver {
|
||||
};
|
||||
|
||||
/**
|
||||
* How often, in milliseconds, the event loop should run.
|
||||
* @type {number}
|
||||
* @const
|
||||
* Returns a string representation of this control flow, which is its current
|
||||
* {@link #getSchedule() schedule}, sans task stack traces.
|
||||
* @return {string} The string representation of this contorl flow.
|
||||
* @override
|
||||
*/
|
||||
static EVENT_LOOP_FREQUENCY: number;
|
||||
|
||||
//endregion
|
||||
|
||||
//region Methods
|
||||
toString(): string;
|
||||
|
||||
/**
|
||||
* Resets this instance, clearing its queue and removing all event listeners.
|
||||
@@ -1611,12 +1584,15 @@ declare module webdriver {
|
||||
reset(): void;
|
||||
|
||||
/**
|
||||
* Generates an annotated string describing the internal state of this control
|
||||
* flow, including the currently executing as well as pending tasks. If
|
||||
* {@code opt_includeStackTraces === true}, the string will include the
|
||||
* stack trace from when each task was scheduled.
|
||||
* @param {string=} opt_includeStackTraces Whether to include the stack traces
|
||||
* from when each task was scheduled. Defaults to false.
|
||||
* @return {string} String representation of this flow's internal state.
|
||||
*/
|
||||
|
||||
/**
|
||||
* @return {string} The scheduled tasks still pending with this instance.
|
||||
*/
|
||||
getSchedule(): string;
|
||||
getSchedule(opt_includeStackTraces?: boolean): string;
|
||||
|
||||
/**
|
||||
* Schedules a task for execution. If there is nothing currently in the
|
||||
|
||||
Reference in New Issue
Block a user