From 8977cf7dbfd2ae8cd303f960f830071b683c1d26 Mon Sep 17 00:00:00 2001 From: titusfortner Date: Fri, 27 May 2022 01:05:54 -0500 Subject: [PATCH] [dotnet] implement pause action to match Java implements #10691 --- dotnet/src/webdriver/Interactions/Actions.cs | 11 +++++++++++ .../common/Interactions/CombinedInputActionsTest.cs | 8 ++++++++ 2 files changed, 19 insertions(+) diff --git a/dotnet/src/webdriver/Interactions/Actions.cs b/dotnet/src/webdriver/Interactions/Actions.cs index a6946b712f337..5fcdb95c90ac7 100644 --- a/dotnet/src/webdriver/Interactions/Actions.cs +++ b/dotnet/src/webdriver/Interactions/Actions.cs @@ -470,6 +470,17 @@ public Actions ScrollFromOrigin(WheelInputDevice.ScrollOrigin scrollOrigin, int return this; } + /// + /// Performs a Pause. + /// + /// How long to pause the action chain. + /// A self-reference to this . + public Actions Pause(TimeSpan duration) + { + this.actionBuilder.AddAction(new PauseInteraction(this.defaultMouse, duration)); + return this; + } + /// /// Builds the sequence of actions. /// diff --git a/dotnet/test/common/Interactions/CombinedInputActionsTest.cs b/dotnet/test/common/Interactions/CombinedInputActionsTest.cs index 01a9bde08e72f..608dbbf749709 100644 --- a/dotnet/test/common/Interactions/CombinedInputActionsTest.cs +++ b/dotnet/test/common/Interactions/CombinedInputActionsTest.cs @@ -375,6 +375,14 @@ public void CanClickOnSuckerFishMenuItem() WaitFor(() => { return result.Text.Contains("item 1"); }, "Result element does not contain text 'item 1'"); } + [Test] + public void PerformsPause() + { + DateTime start = DateTime.Now; + new Actions(driver).Pause(TimeSpan.FromMilliseconds(1200)).Build().Perform(); + Assert.IsTrue(DateTime.Now - start > TimeSpan.FromMilliseconds(1200)); + } + private bool FuzzyPositionMatching(int expectedX, int expectedY, string locationTuple) { string[] splitString = locationTuple.Split(',');