@cimpress/react-components
Version:
React components to support the MCP styleguide
38 lines • 2.56 kB
JavaScript
;
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const react_1 = __importDefault(require("react"));
const experimental_ct_react17_1 = require("@playwright/experimental-ct-react17");
const TextInput_1 = require("./TextInput");
const Button_1 = require("./Button");
const TextInput_spec_stories_1 = require("./TextInput.spec-stories");
(0, experimental_ct_react17_1.test)('form integration', (_a) => __awaiter(void 0, [_a], void 0, function* ({ mount, page }) {
yield page.route('*/**/api/form', (route) => __awaiter(void 0, void 0, void 0, function* () {
const formData = yield route.request().postDataJSON();
(0, experimental_ct_react17_1.expect)(formData).toEqual({ name: 'John' });
yield route.fulfill({ status: 200 });
}));
const component = yield mount(react_1.default.createElement("form", { action: "/api/form", method: "post" },
react_1.default.createElement(TextInput_1.TextField, { label: "Name", name: "name" }),
react_1.default.createElement(Button_1.Button, { type: "submit" }, "Submit")));
yield component.getByLabel('Name').fill('John');
yield (0, experimental_ct_react17_1.expect)(component.getByLabel('Name')).toHaveValue('John');
yield component.getByRole('button', { name: 'Submit' }).click();
}));
(0, experimental_ct_react17_1.test)('controlled', (_a) => __awaiter(void 0, [_a], void 0, function* ({ mount }) {
const component = yield mount(react_1.default.createElement(TextInput_spec_stories_1.TextFieldControlled, null));
yield component.getByLabel('Name').fill('John');
yield (0, experimental_ct_react17_1.expect)(component.getByLabel('Name')).toHaveValue('John');
}));
//# sourceMappingURL=TextInput.spec.js.map