Skip to content

Commit 29fd2df

Browse files
authored
chore: send aria snapshot to the debug controller (#33969)
1 parent 0e2b984 commit 29fd2df

File tree

6 files changed

+8
-3
lines changed

6 files changed

+8
-3
lines changed

packages/playwright-core/src/protocol/validator.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -385,6 +385,7 @@ scheme.DebugControllerInitializer = tOptional(tObject({}));
385385
scheme.DebugControllerInspectRequestedEvent = tObject({
386386
selector: tString,
387387
locator: tString,
388+
ariaSnapshot: tString,
388389
});
389390
scheme.DebugControllerSetModeRequestedEvent = tObject({
390391
mode: tString,

packages/playwright-core/src/server/debugController.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -228,7 +228,7 @@ class InspectingRecorderApp extends EmptyRecorderApp {
228228

229229
override async elementPicked(elementInfo: ElementInfo): Promise<void> {
230230
const locator: string = asLocator(this._debugController._sdkLanguage, elementInfo.selector);
231-
this._debugController.emit(DebugController.Events.InspectRequested, { selector: elementInfo.selector, locator });
231+
this._debugController.emit(DebugController.Events.InspectRequested, { selector: elementInfo.selector, locator, ariaSnapshot: elementInfo.ariaSnapshot });
232232
}
233233

234234
override async setSources(sources: Source[]): Promise<void> {

packages/playwright-core/src/server/dispatchers/debugControllerDispatcher.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,8 +32,8 @@ export class DebugControllerDispatcher extends Dispatcher<DebugController, chann
3232
eventsHelper.addEventListener(this._object, DebugController.Events.StateChanged, params => {
3333
this._dispatchEvent('stateChanged', params);
3434
}),
35-
eventsHelper.addEventListener(this._object, DebugController.Events.InspectRequested, ({ selector, locator }) => {
36-
this._dispatchEvent('inspectRequested', { selector, locator });
35+
eventsHelper.addEventListener(this._object, DebugController.Events.InspectRequested, ({ selector, locator, ariaSnapshot }) => {
36+
this._dispatchEvent('inspectRequested', { selector, locator, ariaSnapshot });
3737
}),
3838
eventsHelper.addEventListener(this._object, DebugController.Events.SourceChanged, ({ text, header, footer, actions }) => {
3939
this._dispatchEvent('sourceChanged', ({ text, header, footer, actions }));

packages/protocol/src/channels.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -691,6 +691,7 @@ export interface DebugControllerChannel extends DebugControllerEventTarget, Chan
691691
export type DebugControllerInspectRequestedEvent = {
692692
selector: string,
693693
locator: string,
694+
ariaSnapshot: string,
694695
};
695696
export type DebugControllerSetModeRequestedEvent = {
696697
mode: string,

packages/protocol/src/protocol.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -807,6 +807,7 @@ DebugController:
807807
parameters:
808808
selector: string
809809
locator: string
810+
ariaSnapshot: string
810811

811812
setModeRequested:
812813
parameters:

tests/library/debug-controller.spec.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,9 +84,11 @@ test('should pick element', async ({ backend, connectedBrowser }) => {
8484

8585
expect(events).toEqual([
8686
{
87+
ariaSnapshot: '- button "Submit"',
8788
selector: 'internal:role=button[name=\"Submit\"i]',
8889
locator: 'getByRole(\'button\', { name: \'Submit\' })',
8990
}, {
91+
ariaSnapshot: '- button "Submit"',
9092
selector: 'internal:role=button[name=\"Submit\"i]',
9193
locator: 'getByRole(\'button\', { name: \'Submit\' })',
9294
},

0 commit comments

Comments
 (0)