| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546 |
- var util = require('util');
- var events = require('events');
- /**
- * Suspends the test for the given time in milliseconds. If the milliseconds argument is missing it will suspend the test indefinitely
- *
- * ```
- * this.demoTest = function (browser) {
- * browser.pause(1000);
- * // or suspend indefinitely
- * browser.pause();
- * };
- * ```
- *
- * @method pause
- * @param {number} ms The number of milliseconds to wait.
- * @param {function} [callback] Optional callback function to be called when the command finishes.
- * @api commands
- */
- function Pause() {
- events.EventEmitter.call(this);
- }
- util.inherits(Pause, events.EventEmitter);
- Pause.prototype.command = function(ms, cb) {
- var self = this;
- // If we don't pass the milliseconds, the client will
- // be suspended indefinitely
- if (!ms) {
- return this;
- }
- setTimeout(function() {
- // if we have a callback, call it right before the complete event
- if (cb) {
- cb.call(self.client.api);
- }
- self.emit('complete');
- }, ms);
- return this;
- };
- module.exports = Pause;
|