Skip to content

Commit df47b78

Browse files
Dennis PloetnerDennis Ploetner
Dennis Ploetner
authored and
Dennis Ploetner
committed
Playwright
1 parent c01e2ea commit df47b78

8 files changed

+23
-32
lines changed

.gitignore

-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ tests/coverage/
88
tests/playwright-results/
99
tests/playwright-report/
1010
tests/playwright/.env.local
11-
tests/playwright/.auth/
1211
node_modules/
1312
vendor/
1413

includes/MslsMetaBox.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -270,7 +270,7 @@ public function render_options( $type, $msls_id ): string {
270270
*
271271
* @return string
272272
*/
273-
public function render_option( $post_id, $msls_id ) {
273+
public function render_option( str $post_id, $msls_id ) {
274274
return sprintf(
275275
'<option value="%s" %s>%s</option>',
276276
$post_id,

package.json

+1
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
"devDependencies": {
1414
"@playwright/test": "^1.44.0",
1515
"@types/node": "^20.12.11",
16+
"@wordpress/e2e-test-utils": "^11.0.0",
1617
"@wordpress/scripts": "^27.9.0",
1718
"dotenv": "^16.4.5"
1819
}

playwright.config.ts

+5-7
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
11
import { defineConfig, devices } from '@playwright/test';
2+
import * as dotenv from "dotenv";
3+
4+
dotenv.config({ path: __dirname + '/tests/playwright/.env.local' });
25

36
export default defineConfig({
47
testDir: './tests/playwright/',
@@ -12,20 +15,15 @@ export default defineConfig({
1215
['json', { outputFile: './tests/playwright-report/test-results.json' }]
1316
],
1417
use: {
18+
baseURL: 'https://msls.co',
1519
trace: 'on-first-retry',
1620
},
1721
projects: [
18-
{
19-
name: 'setup',
20-
testMatch: 'tests/playwright/auth.setup.ts',
21-
},
2222
{
2323
name: 'chromium',
2424
use: {
2525
...devices['Desktop Chrome'],
26-
storageState: 'tests/playwright/.auth/user.json',
2726
},
28-
dependencies: ['setup'],
2927
},
30-
],
28+
]
3129
});

tests/playwright/.env.local.example

+3-2
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
1-
user_login=set_a_username
2-
user_pass=set_a_password
1+
WP_USERNAME=set_a_username
2+
WP_PASSWORD=set_a_password
3+
WP_BASE_URL=https://your_server

tests/playwright/admin-dashboard.spec.ts

+10-2
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,23 @@
1+
import { loginUser } from '@wordpress/e2e-test-utils';
12
import { test, expect } from '@playwright/test';
23

34
test.describe.configure({ mode: 'parallel' });
5+
6+
test.beforeEach(async ({page}) => {
7+
page.goto('/wp-login.php?jetpack-sso-show-default-form=1' );
8+
9+
await loginUser(process.env.WP_USERNAME, process.env.WP_PASSWORD);
10+
});
11+
412
test('test edit posts', async ({ page }) => {
5-
await page.goto('https://msls.co/wp-admin/edit.php');
13+
page.goto('/wp-admin/edit.php' );
614

715
const mslscol = await page.locator('#mslscol');
816
await expect(mslscol).toHaveAttribute('scope', 'col');
917
});
1018

1119
test('test edit pages', async ({ page }) => {
12-
await page.goto('https://msls.co/wp-admin/edit.php?post_type=page');
20+
page.goto('/wp-admin/edit.php?post_type=page' );
1321

1422
const mslscol = await page.locator('#mslscol');
1523
await expect(mslscol).toHaveAttribute('scope', 'col');

tests/playwright/auth.setup.ts

-16
This file was deleted.

tests/playwright/homepage.spec.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
import { test, expect } from '@playwright/test';
22

33
test('test', async ({ page }) => {
4-
await page.goto('https://msls.co/');
4+
await page.goto('/');
55

66
await expect(page).toHaveTitle(/Multisite Language Switcher - WordPress multilingual/);
77

8-
await page.getByRole('link', { name: 'de_DE' }).click();
8+
await page.getByRole('link', { name: 'de_DE' }).first().click();
99
await expect(page).toHaveTitle(/Multisite Language Switcher - WordPress mehrsprachig/);
1010

11-
await page.getByRole('link', { name: 'en_GB' }).click();
11+
await page.getByRole('link', { name: 'en_GB' }).first().click();
1212
await expect(page).toHaveTitle(/Multisite Language Switcher - WordPress multilingual/);
1313
});

0 commit comments

Comments
 (0)