@mapbox/mr-ui
Version:
UI components for Mapbox projects
41 lines (40 loc) • 946 B
JavaScript
;
var _react = require("@testing-library/react");
var _use_previous = _interopRequireDefault(require("./use_previous"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const setUp = () => (0, _react.renderHook)(_ref => {
let {
state
} = _ref;
return (0, _use_previous.default)(state);
}, {
initialProps: {
state: 0
}
});
describe('usePrevious', () => {
test('should return undefined on initial render', () => {
const {
result
} = setUp();
expect(result.current).toBeUndefined();
});
test('should always return previous state after each update', () => {
const {
result,
rerender
} = setUp();
rerender({
state: 2
});
expect(result.current).toBe(0);
rerender({
state: 4
});
expect(result.current).toBe(2);
rerender({
state: 6
});
expect(result.current).toBe(4);
});
});