Outlook_Addin_LLM/node_modules/@fluentui/utilities/lib-commonjs/safeSetTimeout.test.js

45 lines
1.6 KiB
JavaScript

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
var tslib_1 = require("tslib");
var React = require("react");
var safeSetTimeout_1 = require("./safeSetTimeout");
var enzyme_1 = require("enzyme");
describe('safeSetTimeout', function () {
var setTimeoutCalled = false;
var Foo = /** @class */ (function (_super) {
tslib_1.__extends(Foo, _super);
function Foo(props) {
var _this = _super.call(this, props) || this;
_this._setTimeout = (0, safeSetTimeout_1.safeSetTimeout)(_this);
return _this;
}
Foo.prototype.render = function () {
return React.createElement("div", null, "Hello");
};
Foo.prototype.componentDidMount = function () {
this._setTimeout(function () { return (setTimeoutCalled = true); }, 0);
};
return Foo;
}(React.Component));
beforeEach(function () {
setTimeoutCalled = false;
jest.useFakeTimers();
});
afterEach(function () {
jest.useRealTimers();
});
it('can request animation frame', function () {
(0, enzyme_1.mount)(React.createElement(Foo, null));
expect(setTimeoutCalled).toEqual(false);
jest.advanceTimersByTime(100);
expect(setTimeoutCalled).toEqual(true);
});
it('can cancel request animation frame', function () {
var wrapper = (0, enzyme_1.mount)(React.createElement(Foo, null));
expect(setTimeoutCalled).toEqual(false);
wrapper.unmount();
jest.advanceTimersByTime(100);
expect(setTimeoutCalled).toEqual(false);
});
});
//# sourceMappingURL=safeSetTimeout.test.js.map