diff --git a/src/Samples/Tests/Tests/Feature/CompilationPageTests.cs b/src/Samples/Tests/Tests/Feature/CompilationPageTests.cs index a408d3b97e..e5823f40a3 100644 --- a/src/Samples/Tests/Tests/Feature/CompilationPageTests.cs +++ b/src/Samples/Tests/Tests/Feature/CompilationPageTests.cs @@ -19,15 +19,18 @@ public void Feature_CompilationPage_SmokeTest() { RunInAllBrowsers(browser => { browser.NavigateToUrl("/_dotvvm/diagnostics/compilation"); - browser.Single("compile-all-button", By.Id).Click(); + browser.WaitFor(() => { browser.Single("compile-all-button", By.Id).Click(); }, timeout: 15_000); browser.Single("Routes", SelectByButtonText).Click(); // shows failed pages - Assert.InRange(browser.FindElements("tbody tr.success").Count, 10, int.MaxValue); - Assert.InRange(browser.FindElements("tbody tr.failure").Count, 10, int.MaxValue); browser.WaitFor(() => { - AssertUI.HasClass(TableRow(browser, "FeatureSamples_CompilationPage_BindingsTestError"), "failure", waitForOptions: WaitForOptions.Disabled); - }, timeout: 10_000); + Assert.InRange(browser.FindElements("tbody tr.success").Count, 10, int.MaxValue); + Assert.InRange(browser.FindElements("tbody tr.failure").Count, 10, int.MaxValue); + var failedRow = () => TableRow(browser, "FeatureSamples_CompilationPage_BindingsTestError"); + AssertUI.InnerTextEquals(failedRow().ElementAt("td", 1), "FeatureSamples/CompilationPage/BindingsTestError"); + AssertUI.InnerTextEquals(failedRow().ElementAt("td", 3), "CompilationFailed"); + AssertUI.HasClass(failedRow(), "failure", waitForOptions: WaitForOptions.Disabled); + }, timeout: 60_000); AssertUI.HasNotClass(TableRow(browser, "FeatureSamples_CompilationPage_BindingsTest"), "failure"); // shows some errors and warnings diff --git a/src/Samples/Tests/Tests/Feature/PostbackConcurrencyTests.cs b/src/Samples/Tests/Tests/Feature/PostbackConcurrencyTests.cs index 16a7a559a5..d7f2d84662 100644 --- a/src/Samples/Tests/Tests/Feature/PostbackConcurrencyTests.cs +++ b/src/Samples/Tests/Tests/Feature/PostbackConcurrencyTests.cs @@ -156,16 +156,17 @@ public void Feature_PostbackConcurrency_StressTest_Default() browser.ElementAt("input[type=button]", 1).Click(); - Thread.Sleep(10000); - var before = int.Parse(browser.Single(".result-before").GetInnerText().Trim()); - var rejected = int.Parse(browser.Single(".result-rejected").GetInnerText().Trim()); - var after = int.Parse(browser.Single(".result-after").GetInnerText().Trim()); - var value = int.Parse(browser.Single(".result-value").GetInnerText().Trim()); - - Assert.True(0 < value && value <= 100); - Assert.Equal(100, before); - Assert.Equal(100, after); - Assert.Equal(0, rejected); + browser.WaitFor(() => { + var before = int.Parse(browser.Single(".result-before").GetInnerText().Trim()); + var rejected = int.Parse(browser.Single(".result-rejected").GetInnerText().Trim()); + var after = int.Parse(browser.Single(".result-after").GetInnerText().Trim()); + var value = int.Parse(browser.Single(".result-value").GetInnerText().Trim()); + + Assert.InRange(value, 1, 100); + Assert.Equal(100, before); + Assert.Equal(100, after); + Assert.Equal(0, rejected); + }, timeout: 30_000); }); } @@ -178,15 +179,16 @@ public void Feature_PostbackConcurrency_StressTest_Deny() browser.ElementAt("input[type=button]", 3).Click(); - Thread.Sleep(10000); - var before = int.Parse(browser.Single(".result-before").GetInnerText().Trim()); - var rejected = int.Parse(browser.Single(".result-rejected").GetInnerText().Trim()); - var after = int.Parse(browser.Single(".result-after").GetInnerText().Trim()); - var value = int.Parse(browser.Single(".result-value").GetInnerText().Trim()); - - Assert.True(0 < value && value <= 100); - Assert.Equal(100, before + rejected); - Assert.Equal(100, after); + browser.WaitFor(() => { + var before = int.Parse(browser.Single(".result-before").GetInnerText().Trim()); + var rejected = int.Parse(browser.Single(".result-rejected").GetInnerText().Trim()); + var after = int.Parse(browser.Single(".result-after").GetInnerText().Trim()); + var value = int.Parse(browser.Single(".result-value").GetInnerText().Trim()); + + Assert.InRange(value, 1, 100); + Assert.Equal(100, before + rejected); + Assert.Equal(100, after); + }, timeout: 30_000); }); } @@ -199,16 +201,17 @@ public void Feature_PostbackConcurrency_StressTest_Queue() browser.ElementAt("input[type=button]", 5).Click(); - Thread.Sleep(10000); - var before = int.Parse(browser.Single(".result-before").GetInnerText().Trim()); - var rejected = int.Parse(browser.Single(".result-rejected").GetInnerText().Trim()); - var after = int.Parse(browser.Single(".result-after").GetInnerText().Trim()); - var value = int.Parse(browser.Single(".result-value").GetInnerText().Trim()); - - Assert.Equal(100, value); - Assert.Equal(100, before); - Assert.Equal(100, after); - Assert.Equal(0, rejected); + browser.WaitFor(() => { + var before = int.Parse(browser.Single(".result-before").GetInnerText().Trim()); + var rejected = int.Parse(browser.Single(".result-rejected").GetInnerText().Trim()); + var after = int.Parse(browser.Single(".result-after").GetInnerText().Trim()); + var value = int.Parse(browser.Single(".result-value").GetInnerText().Trim()); + + Assert.Equal(100, value); + Assert.Equal(100, before); + Assert.Equal(100, after); + Assert.Equal(0, rejected); + }, timeout: 30_000); }); }