From 95bd4b315c39fa0e1de5f5cadd2b481c76ca8bd0 Mon Sep 17 00:00:00 2001 From: Pavel Feldman Date: Wed, 26 May 2021 15:44:40 -0700 Subject: [PATCH] chore: fix codegen to emit new C# api (#6763) --- src/server/supplements/recorder/csharp.ts | 13 +++++++------ tests/inspector/cli-codegen-1.spec.ts | 15 ++++++++------- tests/inspector/cli-codegen-2.spec.ts | 2 +- 3 files changed, 16 insertions(+), 14 deletions(-) diff --git a/src/server/supplements/recorder/csharp.ts b/src/server/supplements/recorder/csharp.ts index 4dae699fcc..b7c053a4e4 100644 --- a/src/server/supplements/recorder/csharp.ts +++ b/src/server/supplements/recorder/csharp.ts @@ -59,23 +59,24 @@ export class CSharpLanguageGenerator implements LanguageGenerator { const lines: string[] = []; const actionCall = this._generateActionCall(action, actionInContext.isMainFrame); if (signals.waitForNavigation) { - lines.push(`await Task.WhenAll(`); - lines.push(`${pageAlias}.WaitForNavigationAsync(/* new ${actionInContext.isMainFrame ? 'Page' : 'Frame'}WaitForNavigationOptions`); + lines.push(`await ${pageAlias}.RunAndWaitForNavigationAsync(async () =>`); + lines.push(`{`); + lines.push(` await ${subject}.${actionCall};`); + lines.push(`}/*, new ${actionInContext.isMainFrame ? 'Page' : 'Frame'}WaitForNavigationOptions`); lines.push(`{`); lines.push(` UrlString = ${quote(signals.waitForNavigation.url)}`); - lines.push(`} */),`); - lines.push(`${subject}.${actionCall});`); + lines.push(`}*/);`); } else { lines.push(`await ${subject}.${actionCall};`); } if (signals.download) { - lines.unshift(`var download${signals.download.downloadAlias} = await ${pageAlias}.RunAndWaitForEventAsync(PageEvent.Download, async () =>\n{`); + lines.unshift(`var download${signals.download.downloadAlias} = await ${pageAlias}.RunAndWaitForDownloadAsync(async () =>\n{`); lines.push(`});`); } if (signals.popup) { - lines.unshift(`var ${signals.popup.popupAlias} = await ${pageAlias}.RunAndWaitForEventAsync(PageEvent.Popup, async () =>\n{`); + lines.unshift(`var ${signals.popup.popupAlias} = await ${pageAlias}.RunAndWaitForPopupAsync(async () =>\n{`); lines.push(`});`); } diff --git a/tests/inspector/cli-codegen-1.spec.ts b/tests/inspector/cli-codegen-1.spec.ts index 1fb4aabd35..b81bd5393d 100644 --- a/tests/inspector/cli-codegen-1.spec.ts +++ b/tests/inspector/cli-codegen-1.spec.ts @@ -510,7 +510,7 @@ test.describe('cli codegen', () => { page1 = await popup_info.value`); expect(sources.get('').text).toContain(` - var page1 = await page.RunAndWaitForEventAsync(PageEvent.Popup, async () => + var page1 = await page.RunAndWaitForPopupAsync(async () => { await page.ClickAsync(\"text=link\"); });`); @@ -602,12 +602,13 @@ test.describe('cli codegen', () => { expect(sources.get('').text).toContain(` // Click text=link - await Task.WhenAll( - page.WaitForNavigationAsync(/* new PageWaitForNavigationOptions - { - UrlString = \"about:blank#foo\" - } */), - page.ClickAsync(\"text=link\"));`); + await page.RunAndWaitForNavigationAsync(async () => + { + await page.ClickAsync(\"text=link\"); + }/*, new PageWaitForNavigationOptions + { + UrlString = \"about:blank#foo\" + }*/);`); expect(page.url()).toContain('about:blank#foo'); }); diff --git a/tests/inspector/cli-codegen-2.spec.ts b/tests/inspector/cli-codegen-2.spec.ts index 6650e69068..8ed1ef17b5 100644 --- a/tests/inspector/cli-codegen-2.spec.ts +++ b/tests/inspector/cli-codegen-2.spec.ts @@ -293,7 +293,7 @@ test.describe('cli codegen', () => { });`); expect(sources.get('').text).toContain(` // Click text=Download - var download1 = await page.RunAndWaitForEventAsync(PageEvent.Download, async () => + var download1 = await page.RunAndWaitForDownloadAsync(async () => { await page.ClickAsync(\"text=Download\"); });`);