UNPKG

@vtex/styleguide

Version:

> VTEX Styleguide React components ([Docs](https://vtex.github.io/styleguide))

105 lines (96 loc) 2.82 kB
"use strict"; var _reactHooks = require("@testing-library/react-hooks"); var _useTableSort = require("../useTableSort"); var _useTableSort2 = _interopRequireDefault(_useTableSort); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } describe('Table V2 @ hooks/useTableSort spec', function () { it('sorts ASC correctly', function () { var _renderHook = (0, _reactHooks.renderHook)(function () { return (0, _useTableSort2.default)(); }), result = _renderHook.result; expect(result.current.sorted).toEqual({ by: null, order: null }); (0, _reactHooks.act)(function () { result.current.sort('name'); }); expect(result.current.sorted).toEqual({ by: 'name', order: _useTableSort.SortOrder.ASC }); }); it('sorts DSC correctly', function () { var _renderHook2 = (0, _reactHooks.renderHook)(function () { return (0, _useTableSort2.default)(); }), result = _renderHook2.result; expect(result.current.sorted).toEqual({ by: null, order: null }); (0, _reactHooks.act)(function () { result.current.sort('name'); }); expect(result.current.sorted).toEqual({ by: 'name', order: _useTableSort.SortOrder.ASC }); (0, _reactHooks.act)(function () { result.current.sort('name'); }); expect(result.current.sorted).toEqual({ by: 'name', order: _useTableSort.SortOrder.DSC }); }); it('changes base correctly', function () { var _renderHook3 = (0, _reactHooks.renderHook)(function () { return (0, _useTableSort2.default)(); }), result = _renderHook3.result; expect(result.current.sorted).toEqual({ by: null, order: null }); (0, _reactHooks.act)(function () { result.current.sort('name'); }); expect(result.current.sorted).toEqual({ by: 'name', order: _useTableSort.SortOrder.ASC }); (0, _reactHooks.act)(function () { result.current.sort('age'); }); expect(result.current.sorted).toEqual({ by: 'age', order: _useTableSort.SortOrder.ASC }); }); it('clears correctly', function () { var _renderHook4 = (0, _reactHooks.renderHook)(function () { return (0, _useTableSort2.default)(); }), result = _renderHook4.result; expect(result.current.sorted).toEqual({ by: null, order: null }); (0, _reactHooks.act)(function () { result.current.sort('age'); }); expect(result.current.sorted).toEqual({ by: 'age', order: _useTableSort.SortOrder.ASC }); (0, _reactHooks.act)(function () { result.current.clear(); }); expect(result.current.sorted).toEqual({ by: null, order: null }); }); });