@wordpress/e2e-test-utils
Version:
End-To-End (E2E) test utils for WordPress.
43 lines (39 loc) • 1.75 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.createReusableBlock = void 0;
var _inserter = require("./inserter");
var _clickMenuItem = require("./click-menu-item");
var _clickBlockToolbarButton = require("./click-block-toolbar-button");
var _canvas = require("./canvas");
/**
* Internal dependencies
*/
/**
* Creates a simple reusable block with a paragraph block.
*
* @param {string} content Paragraph block's content
* @param {title} title Reusable block's name.
*/
const createReusableBlock = async (content, title) => {
const reusableBlockNameInputSelector = '.patterns-menu-items__convert-modal .components-text-control__input';
const syncToggleSelectorChecked = '.patterns-menu-items__convert-modal .components-form-toggle.is-checked';
// Insert a paragraph block
await (0, _inserter.insertBlock)('Paragraph');
await page.keyboard.type(content);
await (0, _clickBlockToolbarButton.clickBlockToolbarButton)('Options');
await (0, _clickMenuItem.clickMenuItem)('Create pattern');
const nameInput = await page.waitForSelector(reusableBlockNameInputSelector);
await nameInput.click();
await page.keyboard.type(title);
await page.waitForSelector(syncToggleSelectorChecked);
await page.keyboard.press('Enter');
// Wait for creation to finish
await page.waitForXPath('//*[contains(@class, "components-snackbar")]/*[contains(text(),"pattern created:")]');
// Check that we have a reusable block on the page
const block = await (0, _canvas.canvas)().waitForSelector('.block-editor-block-list__block[data-type="core/block"]');
expect(block).not.toBeNull();
};
exports.createReusableBlock = createReusableBlock;
//# sourceMappingURL=create-reusable-block.js.map