From 9514f0fb9dfd365212e500504e1b1cf807592451 Mon Sep 17 00:00:00 2001 From: Pavel Feldman Date: Tue, 7 Jan 2025 11:14:45 -0800 Subject: [PATCH] fix(aria): escape leading dash in property values (#34227) --- packages/playwright-core/src/server/injected/yaml.ts | 4 ++-- tests/page/page-aria-snapshot.spec.ts | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/playwright-core/src/server/injected/yaml.ts b/packages/playwright-core/src/server/injected/yaml.ts index a9365c15bd..e79cf58474 100644 --- a/packages/playwright-core/src/server/injected/yaml.ts +++ b/packages/playwright-core/src/server/injected/yaml.ts @@ -58,8 +58,8 @@ function yamlStringNeedsQuotes(str: string): boolean { if (/[\x00-\x08\x0b\x0c\x0e-\x1f\x7f-\x9f]/.test(str)) return true; - // Strings starting with '-' followed by a space need quotes - if (/^-\s/.test(str)) + // Strings starting with '-' need quotes + if (/^-/.test(str)) return true; // Strings containing ':' or '\n' followed by a space or at the end need quotes diff --git a/tests/page/page-aria-snapshot.spec.ts b/tests/page/page-aria-snapshot.spec.ts index 1dafe14fa7..b7bb77091a 100644 --- a/tests/page/page-aria-snapshot.spec.ts +++ b/tests/page/page-aria-snapshot.spec.ts @@ -555,6 +555,7 @@ it('should escape special yaml values', async ({ page }) => { nullNULL 123123 -1.2-1.2 + -- `); @@ -573,6 +574,8 @@ it('should escape special yaml values', async ({ page }) => { - text: "123" - link "-1.2" - text: "-1.2" + - link "-" + - text: "-" - textbox: "555" `); });