コード例 #1
0
ファイル: submit-test.js プロジェクト: Tadwork/subschema
    it('should submit ', function (done) {
        const loader = loaderFactory([DefaultLoader]);
        loader.addTemplate({TestForm});
        const valueManager = ValueManager();
        valueManager.addSubmitListener(null, (e, err, value, path)=> {
            e && e.preventDefault();
            expect(Object.keys(value).length).toBe(0);
            expect(err['hello']).toExist();
            expect(err['deep.test']).toExist();
            done();
        });
        const schema = {
            schema: {
                "hello": {
                    "type": "Text",
                    "validators": ["required"]
                },
                "deep": {
                    "type": "Object",
                    "template": "TestForm",
                    "subSchema": {
                        "schema": {
                            "test": {
                                "type": "Text",
                                "validators": ["required"]
                            }
                        },
                        "fieldsets": [{
                            "fields": "test",
                            buttons: ["submit"]
                        }]
                    }
                }
            }
        };
        const form = into(<Form template="ObjectTemplate" loader={loader} schema={schema}
                                valueManager={valueManager}/>, true);
        const f = byTag(form, "form");
        Simulate.submit(f);
        //  f.submit();

    });
コード例 #2
0
"use strict";
import {loaderFactory, PropTypes} from "Subschema";
import MaskedInput from "react-maskedinput";
import ReactSelect from "react-select";
import 'react-select/dist/react-select.css';
//this is the entry for exporting library.

const loader = loaderFactory();

ReactSelect.propTypes.onChange = PropTypes.valueEvent;
ReactSelect.propTypes.value = PropTypes.value;

loader.addType({
    MaskedInput,
    ReactSelect
});

export default loader;