Outlook_Addin_LLM/node_modules/@fluentui/utilities/lib/safeRequestAnimationFrame.test.js

44 lines
1.5 KiB
JavaScript

import { __extends } from "tslib";
import * as React from 'react';
import { safeRequestAnimationFrame } from './safeRequestAnimationFrame';
import { mount } from 'enzyme';
describe('safeRequestAnimationFrame', function () {
var rafCalled = false;
var Foo = /** @class */ (function (_super) {
__extends(Foo, _super);
function Foo(props) {
var _this = _super.call(this, props) || this;
_this._raf = safeRequestAnimationFrame(_this);
return _this;
}
Foo.prototype.render = function () {
return React.createElement("div", null, "Hello");
};
Foo.prototype.componentDidMount = function () {
this._raf(function () { return (rafCalled = true); });
};
return Foo;
}(React.Component));
beforeEach(function () {
rafCalled = false;
jest.useFakeTimers();
});
afterEach(function () {
jest.runOnlyPendingTimers();
jest.useRealTimers();
});
it('can request animation frame', function () {
mount(React.createElement(Foo, null));
expect(rafCalled).toEqual(false);
jest.runOnlyPendingTimers();
expect(rafCalled).toEqual(true);
});
it('can cancel request animation frame', function () {
var wrapper = mount(React.createElement(Foo, null));
expect(rafCalled).toEqual(false);
wrapper.unmount();
jest.runOnlyPendingTimers();
expect(rafCalled).toEqual(false);
});
});
//# sourceMappingURL=safeRequestAnimationFrame.test.js.map