import { FormState, FieldState } from 'formstate-x' import { bindFormItem } from './FormItem' describe('bindFormItem', () => { it('should work well with form state', async () => { const state = new FormState({ foo: new FieldState('foo').validators(() => 'foo error'), bar: new FieldState('bar') }).validators(() => 'form error') await state.validate() const { validateStatus, validateMessage } = bindFormItem(state) expect(validateStatus).toBe('error') expect(validateMessage).toBe('form error') }) it('should not include fields\' error message with form state', async () => { const state = new FormState({ foo: new FieldState('foo').validators(() => 'foo error'), bar: new FieldState('bar') }) await state.validate() const { validateStatus, validateMessage } = bindFormItem(state) expect(validateStatus).toBe('default') expect(validateMessage).toBeUndefined() }) })