@wordpress/e2e-test-utils-playwright
Version:
End-To-End (E2E) test utils for WordPress.
8 lines (7 loc) • 2.54 kB
Source Map (JSON)
{
"version": 3,
"sources": ["../../src/request-utils/pages.ts"],
"sourcesContent": ["/**\n * Internal dependencies\n */\nimport type { RequestUtils } from './index';\n\nconst PAGE_STATUS = [\n\t'publish',\n\t'future',\n\t'draft',\n\t'pending',\n\t'private',\n\t'trash',\n] as const;\n\nexport type Page = {\n\tid: number;\n\tstatus: ( typeof PAGE_STATUS )[ number ];\n};\n\nexport type CreatePagePayload = {\n\ttitle?: string;\n\tcontent?: string;\n\tstatus: ( typeof PAGE_STATUS )[ number ];\n\tdate?: string;\n\tdate_gmt?: string;\n};\n\nexport async function deletePage( this: RequestUtils, id: number ) {\n\t// https://developer.wordpress.org/rest-api/reference/pages/#delete-a-page\n\treturn await this.rest( {\n\t\tmethod: 'DELETE',\n\t\tpath: `/wp/v2/pages/${ id }`,\n\t\tparams: {\n\t\t\tforce: true,\n\t\t},\n\t} );\n}\n\n/**\n * Delete all pages using REST API.\n *\n * @param this\n */\nexport async function deleteAllPages( this: RequestUtils ) {\n\t// List all pages.\n\t// https://developer.wordpress.org/rest-api/reference/pages/#list-pages\n\tconst pages = await this.rest< Page[] >( {\n\t\tpath: '/wp/v2/pages',\n\t\tparams: {\n\t\t\tper_page: 100,\n\n\t\t\tstatus: PAGE_STATUS.join( ',' ),\n\t\t},\n\t} );\n\n\t// Delete all pages one by one.\n\t// \"/wp/v2/pages\" not yet supports batch requests.\n\tawait Promise.all(\n\t\tpages.map( ( page ) => deletePage.call( this, page.id ) )\n\t);\n}\n\n/**\n * Create a new page.\n *\n * @param this\n * @param payload The page payload.\n */\nexport async function createPage(\n\tthis: RequestUtils,\n\tpayload: CreatePagePayload\n) {\n\t// https://developer.wordpress.org/rest-api/reference/pages/#create-a-page\n\tconst page = await this.rest< Page >( {\n\t\tmethod: 'POST',\n\t\tpath: `/wp/v2/pages`,\n\t\tdata: { ...payload },\n\t} );\n\n\treturn page;\n}\n"],
"mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAKA,IAAM,cAAc;AAAA,EACnB;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD;AAeA,eAAsB,WAAgC,IAAa;AAElE,SAAO,MAAM,KAAK,KAAM;AAAA,IACvB,QAAQ;AAAA,IACR,MAAM,gBAAiB,EAAG;AAAA,IAC1B,QAAQ;AAAA,MACP,OAAO;AAAA,IACR;AAAA,EACD,CAAE;AACH;AAOA,eAAsB,iBAAqC;AAG1D,QAAM,QAAQ,MAAM,KAAK,KAAgB;AAAA,IACxC,MAAM;AAAA,IACN,QAAQ;AAAA,MACP,UAAU;AAAA,MAEV,QAAQ,YAAY,KAAM,GAAI;AAAA,IAC/B;AAAA,EACD,CAAE;AAIF,QAAM,QAAQ;AAAA,IACb,MAAM,IAAK,CAAE,SAAU,WAAW,KAAM,MAAM,KAAK,EAAG,CAAE;AAAA,EACzD;AACD;AAQA,eAAsB,WAErB,SACC;AAED,QAAM,OAAO,MAAM,KAAK,KAAc;AAAA,IACrC,QAAQ;AAAA,IACR,MAAM;AAAA,IACN,MAAM,EAAE,GAAG,QAAQ;AAAA,EACpB,CAAE;AAEF,SAAO;AACR;",
"names": []
}