1
- using System ;
1
+ using System ;
2
2
using System . Collections . Generic ;
3
3
using System . Text ;
4
- using NMock2 ;
4
+ using NMock ;
5
5
using NUnit . Framework ;
6
6
using System . Collections . ObjectModel ;
7
7
using OpenQA . Selenium . Internal ;
@@ -11,32 +11,33 @@ namespace OpenQA.Selenium.Support.Events
11
11
[ TestFixture ]
12
12
public class EventFiringWebDriverTest
13
13
{
14
- private Mockery mocks ;
15
- private IWebDriver mockDriver ;
16
- private IWebElement mockElement ;
17
- private INavigation mockNavigation ;
14
+ private MockFactory mocks ;
15
+ private Mock < IWebDriver > mockDriver ;
16
+ private Mock < IWebElement > mockElement ;
17
+ private Mock < INavigation > mockNavigation ;
18
+ private IWebDriver stubDriver ;
18
19
private StringBuilder log ;
19
20
20
21
[ SetUp ]
21
22
public void Setup ( )
22
23
{
23
- mocks = new Mockery ( ) ;
24
- mockDriver = mocks . NewMock < IWebDriver > ( ) ;
25
- mockElement = mocks . NewMock < IWebElement > ( ) ;
26
- mockNavigation = mocks . NewMock < INavigation > ( ) ;
24
+ mocks = new MockFactory ( ) ;
25
+ mockDriver = mocks . CreateMock < IWebDriver > ( ) ;
26
+ mockElement = mocks . CreateMock < IWebElement > ( ) ;
27
+ mockNavigation = mocks . CreateMock < INavigation > ( ) ;
27
28
log = new StringBuilder ( ) ;
28
29
}
29
30
30
31
[ Test ]
31
32
public void ShouldFireNavigationEvents ( )
32
33
{
33
- Expect . Once . On ( mockDriver ) . SetProperty ( "Url" ) . To ( "http://www.get.com" ) ;
34
- Expect . Exactly ( 3 ) . On ( mockDriver ) . Method ( " Navigate" ) . Will ( Return . Value ( mockNavigation ) ) ;
35
- Expect . Once . On ( mockNavigation ) . Method ( " GoToUrl" ) . With ( "http://www.navigate-to.com" ) ;
36
- Expect . Once . On ( mockNavigation ) . Method ( " Back" ) ;
37
- Expect . Once . On ( mockNavigation ) . Method ( " Forward" ) ;
34
+ mockDriver . Expects . One . SetPropertyTo ( _ => _ . Url = "http://www.get.com" ) ;
35
+ mockDriver . Expects . Exactly ( 3 ) . Method < INavigation > ( _ => _ . Navigate ( ) ) . WillReturn ( mockNavigation . MockObject ) ;
36
+ mockNavigation . Expects . One . Method ( _ => _ . GoToUrl ( ( string ) null ) ) . With ( "http://www.navigate-to.com" ) ;
37
+ mockNavigation . Expects . One . Method ( _ => _ . Back ( ) ) ;
38
+ mockNavigation . Expects . One . Method ( _ => _ . Forward ( ) ) ;
38
39
39
- EventFiringWebDriver firingDriver = new EventFiringWebDriver ( mockDriver ) ;
40
+ EventFiringWebDriver firingDriver = new EventFiringWebDriver ( mockDriver . MockObject ) ;
40
41
firingDriver . Navigating += new EventHandler < WebDriverNavigationEventArgs > ( firingDriver_Navigating ) ;
41
42
firingDriver . Navigated += new EventHandler < WebDriverNavigationEventArgs > ( firingDriver_Navigated ) ;
42
43
firingDriver . NavigatingBack += new EventHandler < WebDriverNavigationEventArgs > ( firingDriver_NavigatingBack ) ;
@@ -64,10 +65,10 @@ Navigated forward
64
65
[ Test ]
65
66
public void ShouldFireClickEvent ( )
66
67
{
67
- Expect . Once . On ( mockDriver ) . Method ( " FindElement" ) . With ( By . Name ( "foo" ) ) . Will ( Return . Value ( mockElement ) ) ;
68
- Expect . Once . On ( mockElement ) . Method ( " Click" ) ;
68
+ mockDriver . Expects . One . Method ( _ => _ . FindElement ( null ) ) . With ( By . Name ( "foo" ) ) . WillReturn ( mockElement . MockObject ) ;
69
+ mockElement . Expects . One . Method ( _ => _ . Click ( ) ) ;
69
70
70
- EventFiringWebDriver firingDriver = new EventFiringWebDriver ( mockDriver ) ;
71
+ EventFiringWebDriver firingDriver = new EventFiringWebDriver ( mockDriver . MockObject ) ;
71
72
firingDriver . ElementClicking += new EventHandler < WebElementEventArgs > ( firingDriver_ElementClicking ) ;
72
73
firingDriver . ElementClicked += new EventHandler < WebElementEventArgs > ( firingDriver_ElementClicked ) ;
73
74
@@ -84,12 +85,13 @@ public void ShouldFireFindByEvent()
84
85
{
85
86
IList < IWebElement > driverElements = new List < IWebElement > ( ) ;
86
87
IList < IWebElement > subElements = new List < IWebElement > ( ) ;
87
- Expect . Once . On ( mockDriver ) . Method ( "FindElement" ) . With ( By . Id ( "foo" ) ) . Will ( Return . Value ( mockElement ) ) ;
88
- Expect . Once . On ( mockElement ) . Method ( "FindElement" ) . With ( By . LinkText ( "bar" ) ) ;
89
- Expect . Once . On ( mockElement ) . Method ( "FindElements" ) . With ( By . Name ( "xyz" ) ) . Will ( Return . Value ( new ReadOnlyCollection < IWebElement > ( driverElements ) ) ) ;
90
- Expect . Once . On ( mockDriver ) . Method ( "FindElements" ) . With ( By . XPath ( "//link[@type = 'text/css']" ) ) . Will ( Return . Value ( new ReadOnlyCollection < IWebElement > ( subElements ) ) ) ;
88
+ Mock < IWebElement > ignored = mocks . CreateMock < IWebElement > ( ) ;
89
+ mockDriver . Expects . One . Method ( _ => _ . FindElement ( null ) ) . With ( By . Id ( "foo" ) ) . WillReturn ( mockElement . MockObject ) ;
90
+ mockElement . Expects . One . Method ( _ => _ . FindElement ( null ) ) . WithAnyArguments ( ) . WillReturn ( ignored . MockObject ) ;
91
+ mockElement . Expects . One . Method ( _ => _ . FindElements ( null ) ) . With ( By . Name ( "xyz" ) ) . WillReturn ( new ReadOnlyCollection < IWebElement > ( driverElements ) ) ;
92
+ mockDriver . Expects . One . Method ( _ => _ . FindElements ( null ) ) . With ( By . XPath ( "//link[@type = 'text/css']" ) ) . WillReturn ( new ReadOnlyCollection < IWebElement > ( subElements ) ) ;
91
93
92
- EventFiringWebDriver firingDriver = new EventFiringWebDriver ( mockDriver ) ;
94
+ EventFiringWebDriver firingDriver = new EventFiringWebDriver ( mockDriver . MockObject ) ;
93
95
firingDriver . FindingElement += new EventHandler < FindElementEventArgs > ( firingDriver_FindingElement ) ;
94
96
firingDriver . FindElementCompleted += new EventHandler < FindElementEventArgs > ( firingDriver_FindElementCompleted ) ;
95
97
@@ -115,9 +117,9 @@ public void ShouldFireFindByEvent()
115
117
public void ShouldCallListenerOnException ( )
116
118
{
117
119
NoSuchElementException exception = new NoSuchElementException ( "argh" ) ;
118
- Expect . Once . On ( mockDriver ) . Method ( " FindElement" ) . With ( By . Id ( "foo" ) ) . Will ( Throw . Exception ( exception ) ) ;
120
+ mockDriver . Expects . One . Method ( _ => _ . FindElement ( null ) ) . With ( By . Id ( "foo" ) ) . Will ( Throw . Exception ( exception ) ) ;
119
121
120
- EventFiringWebDriver firingDriver = new EventFiringWebDriver ( mockDriver ) ;
122
+ EventFiringWebDriver firingDriver = new EventFiringWebDriver ( mockDriver . MockObject ) ;
121
123
firingDriver . ExceptionThrown += new EventHandler < WebDriverExceptionEventArgs > ( firingDriver_ExceptionThrown ) ;
122
124
123
125
try
@@ -136,11 +138,11 @@ public void ShouldCallListenerOnException()
136
138
[ Test ]
137
139
public void ShouldUnwrapElementArgsWhenCallingScripts ( )
138
140
{
139
- IExecutingDriver executingDriver = mocks . NewMock < IExecutingDriver > ( ) ;
140
- Expect . Once . On ( executingDriver ) . Method ( " FindElement" ) . With ( By . Id ( "foo" ) ) . Will ( Return . Value ( mockElement ) ) ;
141
- Expect . Once . On ( executingDriver ) . Method ( " ExecuteScript" ) . With ( "foo" , new [ ] { mockElement } ) . Will ( Return . Value ( "foo" ) ) ;
141
+ Mock < IExecutingDriver > executingDriver = mocks . CreateMock < IExecutingDriver > ( ) ;
142
+ executingDriver . Expects . One . Method ( _ => _ . FindElement ( null ) ) . With ( By . Id ( "foo" ) ) . WillReturn ( mockElement . MockObject ) ;
143
+ executingDriver . Expects . One . Method ( _ => _ . ExecuteScript ( null , null ) ) . With ( "foo" , new [ ] { mockElement . MockObject } ) . WillReturn ( "foo" ) ;
142
144
143
- EventFiringWebDriver testedDriver = new EventFiringWebDriver ( executingDriver ) ;
145
+ EventFiringWebDriver testedDriver = new EventFiringWebDriver ( executingDriver . MockObject ) ;
144
146
145
147
IWebElement element = testedDriver . FindElement ( By . Id ( "foo" ) ) ;
146
148
try
@@ -164,18 +166,18 @@ public void ShouldBeAbleToWrapSubclassesOfSomethingImplementingTheWebDriverInter
164
166
[ Test ]
165
167
public void ShouldBeAbleToAccessWrappedInstanceFromEventCalls ( )
166
168
{
167
- mockDriver = new StubDriver ( ) ;
168
- EventFiringWebDriver testDriver = new EventFiringWebDriver ( mockDriver ) ;
169
+ stubDriver = new StubDriver ( ) ;
170
+ EventFiringWebDriver testDriver = new EventFiringWebDriver ( stubDriver ) ;
169
171
StubDriver wrapped = ( ( IWrapsDriver ) testDriver ) . WrappedDriver as StubDriver ;
170
- Assert . AreEqual ( mockDriver , wrapped ) ;
172
+ Assert . AreEqual ( stubDriver , wrapped ) ;
171
173
testDriver . Navigating += new EventHandler < WebDriverNavigationEventArgs > ( testDriver_Navigating ) ;
172
174
173
175
testDriver . Url = "http://example.org" ;
174
176
}
175
177
176
178
void testDriver_Navigating ( object sender , WebDriverNavigationEventArgs e )
177
179
{
178
- Assert . AreEqual ( e . Driver , mockDriver ) ;
180
+ Assert . AreEqual ( e . Driver , stubDriver ) ;
179
181
}
180
182
181
183
void firingDriver_ExceptionThrown ( object sender , WebDriverExceptionEventArgs e )
0 commit comments