uno-react
Version:
Common functions, and hooks for React.
46 lines (45 loc) • 1.66 kB
JavaScript
;
/**
* @jest-environment jsdom
*/
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const react_1 = require("@testing-library/react");
const useStateForField_1 = __importDefault(require("./useStateForField"));
test('should keep the value of a variable that is related to an input(event)', () => {
const { result } = (0, react_1.renderHook)(() => (0, useStateForField_1.default)(''));
const event = {
target: { value: 'the-value' },
};
(0, react_1.act)(() => {
result.current[1](event);
});
expect(result.current[0]).toBe(event.target.value);
});
test('should set a value of a variable that is related to an input(event) and reset to defaultValue', () => {
const defaultValue = '';
const { result } = (0, react_1.renderHook)(() => (0, useStateForField_1.default)(defaultValue));
const event = {
target: { value: 'the-value' },
};
(0, react_1.act)(() => {
result.current[1](event);
});
(0, react_1.act)(() => {
result.current[2](defaultValue);
});
expect(result.current[0]).toBe(defaultValue);
});
test('should not keep the value of a variable that is not related to an input(event)', () => {
const defaultValue = '';
const { result } = (0, react_1.renderHook)(() => (0, useStateForField_1.default)(defaultValue));
const event = {
bubbles: false,
};
(0, react_1.act)(() => {
result.current[1](event);
});
expect(result.current[0]).toBe(defaultValue);
});