import { Form } from '../../index'; import { noop } from 'lodash'; import { BASE_CLASS_PREFIX } from '../../../semi-foundation/base/constants'; const Slot = Form.Slot; function getSlot(slotProps, formProps = {}) { return mount(
); } describe('Form-slot', () => { it('className & style', () => { let props = { className: 'slot-test', style: { color: 'red', }, }; const slot = getSlot(props).find(`.${BASE_CLASS_PREFIX}-form-slot`); expect(slot.exists('.slot-test')).toEqual(true); expect(slot.find(`.${BASE_CLASS_PREFIX}-form-slot`)).toHaveStyle('color', 'red'); }); it('label - objLabel, stringLabel, numberLabel, reactNodeLabel', () => { let objProps = { label: { required: true, text: 'semi', }, }; const objLabel = getSlot(objProps).find(`.semi-form-field-label-text`).text(); expect(objLabel).toEqual('semi'); let stringProps = { label: 'semi' }; const stringLabel = getSlot(stringProps).find(`.semi-form-field-label-text`).text(); expect(stringLabel).toEqual('semi'); let numberProps = { label: 888 }; const numberLabel = getSlot(numberProps).find(`.semi-form-field-label-text`).text(); expect(numberLabel).toEqual('888'); let reactNodeLabel = { label:
hahaha
}; const modeLabel = getSlot(reactNodeLabel).find(`.semi-form-field-label-text div`).text(); expect(modeLabel).toEqual('hahaha'); }); it('error - objError, stringError, numberError, reactNodeError', () => { let objProps = { error: { error: 'semi', }, }; const objError = getSlot(objProps).find(`.semi-form-field-error-message span`).text(); expect(objError).toEqual('semi'); let stringProps = { error: 'semi' }; const stringError = getSlot(stringProps).find(`.semi-form-field-error-message span`).text(); expect(stringError).toEqual('semi'); let numerProps = { error: 888 }; const numerError = getSlot(numerProps).find(`.semi-form-field-error-message`).text(); expect(numerError).toEqual(''); let reactNodeLabel = { error:
hahaha
}; const modeLabel = getSlot(reactNodeLabel).find(`.semi-form-field-error-message div`).text(); expect(modeLabel).toEqual('hahaha'); }); it('children', () => { let children =
semi
; let props = { children: children, }; const slot = getSlot(props).find(`.${BASE_CLASS_PREFIX}-form-slot`); expect(slot.contains(children)).toEqual(true); }); it('extends Form.labelWidth, Form.labelPosition ', () => { let formProps = { labelWidth: 200, labelPosition: 'left', }; let props = {}; const form = getSlot(props, formProps); expect(form.exists(`.${BASE_CLASS_PREFIX}-form-field-label-left`)).toEqual(true); expect(form.find(`.${BASE_CLASS_PREFIX}-form-slot .${BASE_CLASS_PREFIX}-form-field-label`)).toHaveStyle('width', 200); }); // TODO wrapperCol // it('extends Form.wrapperCol / Form.labelCol', () => { // let props = {}; // let formProps = { // wrapperCol: { span: 20 }, // labelCol: { span: 2 }, // }; // const formContent = ( //
// //
// ); // const form = mount(formContent, { attachTo: document.getElementById('container') }); // debugger; // }); });