1
1
using Aquality . Selenium . Core . Localization ;
2
2
using OpenQA . Selenium ;
3
3
using System ;
4
+ using System . Threading . Tasks ;
4
5
5
6
namespace Aquality . Selenium . Browsers
6
7
{
@@ -28,6 +29,16 @@ public void Back()
28
29
driver . Navigate ( ) . Back ( ) ;
29
30
}
30
31
32
+ /// <summary>
33
+ /// Move back a single entry in the browser's history as an asynchronous task.
34
+ /// </summary>
35
+ /// <returns>A task object representing the asynchronous operation.</returns>
36
+ public Task BackAsync ( )
37
+ {
38
+ Logger . Info ( "loc.browser.back" ) ;
39
+ return driver . Navigate ( ) . BackAsync ( ) ;
40
+ }
41
+
31
42
/// <summary>
32
43
/// Navigates forward.
33
44
/// </summary>
@@ -37,6 +48,16 @@ public void Forward()
37
48
driver . Navigate ( ) . Forward ( ) ;
38
49
}
39
50
51
+ /// <summary>
52
+ /// Move a single "item" forward in the browser's history as an asynchronous task.
53
+ /// </summary>
54
+ /// <returns>A task object representing the asynchronous operation.</returns>
55
+ public Task ForwardAsync ( )
56
+ {
57
+ Logger . Info ( "loc.browser.forward" ) ;
58
+ return driver . Navigate ( ) . ForwardAsync ( ) ;
59
+ }
60
+
40
61
/// <summary>
41
62
/// Navigates to desired url.
42
63
/// </summary>
@@ -77,6 +98,28 @@ public void GoToUrl(Uri url)
77
98
}
78
99
}
79
100
101
+ /// <summary>
102
+ /// Navigate to a url as an asynchronous task.
103
+ /// </summary>
104
+ /// <param name="url">String representation of where you want the browser to go.</param>
105
+ /// <returns>A task object representing the asynchronous operation.</returns>
106
+ public Task GoToUrlAsync ( string url )
107
+ {
108
+ InfoLocNavigate ( url ) ;
109
+ return driver . Navigate ( ) . GoToUrlAsync ( url ) ;
110
+ }
111
+
112
+ /// <summary>
113
+ /// Navigate to a url as an asynchronous task.
114
+ /// </summary>
115
+ /// <param name="url">Uri object of where you want the browser to go.</param>
116
+ /// <returns>A task object representing the asynchronous operation.</returns>
117
+ public Task GoToUrlAsync ( Uri url )
118
+ {
119
+ InfoLocNavigate ( url . ToString ( ) ) ;
120
+ return driver . Navigate ( ) . GoToUrlAsync ( url ) ;
121
+ }
122
+
80
123
/// <summary>
81
124
/// Refreshes current page.
82
125
/// </summary>
@@ -86,6 +129,16 @@ public void Refresh()
86
129
driver . Navigate ( ) . Refresh ( ) ;
87
130
}
88
131
132
+ /// <summary>
133
+ /// Reload the current page as an asynchronous task.
134
+ /// </summary>
135
+ /// <returns>A task object representing the asynchronous operation.</returns>
136
+ public Task RefreshAsync ( )
137
+ {
138
+ Logger . Info ( "loc.browser.refresh" ) ;
139
+ return driver . Navigate ( ) . RefreshAsync ( ) ;
140
+ }
141
+
89
142
private void InfoLocNavigate ( string url )
90
143
{
91
144
Logger . Info ( "loc.browser.navigate" , url ) ;
0 commit comments