"use strict";
var __webpack_require__ = {};
(()=>{
    __webpack_require__.n = function(module) {
        var getter = module && module.__esModule ? function() {
            return module['default'];
        } : function() {
            return module;
        };
        __webpack_require__.d(getter, {
            a: getter
        });
        return getter;
    };
})();
(()=>{
    __webpack_require__.d = function(exports1, definition) {
        for(var key in definition)if (__webpack_require__.o(definition, key) && !__webpack_require__.o(exports1, key)) Object.defineProperty(exports1, key, {
            enumerable: true,
            get: definition[key]
        });
    };
})();
(()=>{
    __webpack_require__.o = function(obj, prop) {
        return Object.prototype.hasOwnProperty.call(obj, prop);
    };
})();
var __webpack_exports__ = {};
const jsx_runtime_namespaceObject = require("react/jsx-runtime");
require("react");
const client_namespaceObject = require("@tachybase/test/client");
const demo1_js_namespaceObject = require("../demos/demo1.js");
var demo1_js_default = /*#__PURE__*/ __webpack_require__.n(demo1_js_namespaceObject);
const demo2_js_namespaceObject = require("../demos/demo2.js");
var demo2_js_default = /*#__PURE__*/ __webpack_require__.n(demo2_js_namespaceObject);
const demo3_js_namespaceObject = require("../demos/demo3.js");
var demo3_js_default = /*#__PURE__*/ __webpack_require__.n(demo3_js_namespaceObject);
describe('FormV2', ()=>{
    it('basic', async ()=>{
        (0, client_namespaceObject.render)(/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(demo1_js_default(), {}));
        let input, submit;
        await (0, client_namespaceObject.waitFor)(()=>{
            input = document.querySelector('.ant-input');
            submit = client_namespaceObject.screen.getByText('Submit');
            expect(input).toBeInTheDocument();
            expect(client_namespaceObject.screen.queryByText('Nickname')).toBeInTheDocument();
        });
        await client_namespaceObject.userEvent.type(input, '李四');
        await client_namespaceObject.userEvent.click(submit);
        await (0, client_namespaceObject.waitFor)(()=>{
            expect(client_namespaceObject.screen.getByText(/\{"nickname":"李四"\}/i)).toBeInTheDocument();
        });
    });
    it('initial values', async ()=>{
        (0, client_namespaceObject.render)(/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(demo2_js_default(), {}));
        await (0, client_namespaceObject.waitFor)(()=>{
            const nicknameInput = document.querySelector('.nickname .ant-input');
            const passwordInput = document.querySelector('.password .ant-input');
            const submit = client_namespaceObject.screen.getByText('Submit');
            expect(submit).toBeInTheDocument();
            expect(nicknameInput).toBeInTheDocument();
            expect(passwordInput).toBeInTheDocument();
            expect(nicknameInput).toHaveValue('张三');
            expect(passwordInput).toHaveValue('123456');
            expect(client_namespaceObject.screen.getByText('Nickname')).toBeInTheDocument();
            expect(client_namespaceObject.screen.getByText('Password')).toBeInTheDocument();
        });
    });
    it('read pretty', async ()=>{
        (0, client_namespaceObject.render)(/*#__PURE__*/ (0, jsx_runtime_namespaceObject.jsx)(demo3_js_default(), {}));
        await (0, client_namespaceObject.waitFor)(()=>{
            expect(client_namespaceObject.screen.getByText('Nickname')).toBeInTheDocument();
            expect(client_namespaceObject.screen.getByText('Password')).toBeInTheDocument();
            expect(client_namespaceObject.screen.getByText('张三')).toBeInTheDocument();
            expect(client_namespaceObject.screen.getByText(/\*\*\*\*\*\*\*\*/i)).toBeInTheDocument();
        });
    });
});
var __webpack_export_target__ = exports;
for(var __webpack_i__ in __webpack_exports__)__webpack_export_target__[__webpack_i__] = __webpack_exports__[__webpack_i__];
if (__webpack_exports__.__esModule) Object.defineProperty(__webpack_export_target__, '__esModule', {
    value: true
});
