@@ -44,19 +44,9 @@ var nativeRun = !serverJar && !remoteUrl;
44
44
45
45
46
46
var browsersToTest = ( function ( ) {
47
- if ( process . env [ 'SELENIUM_BROWSER' ] ) {
48
- if ( process . env [ 'SELENIUM_BROWSERS' ] ) {
49
- console . log ( 'SELENIUM_BROWSER and SELENIUM_BROWSERS both set for' ) ;
50
- console . log ( 'Selenium test suite; unsetting SELENIUM_BROWSER' ) ;
51
- } else {
52
- process . env [ 'SELENIUM_BROWSERS' ] = process . env [ 'SELENIUM_BROWSER' ] ;
53
- }
54
- delete process . env [ 'SELENIUM_BROWSER' ] ;
55
- }
56
-
57
47
var permitRemoteBrowsers = ! ! remoteUrl || ! ! serverJar ;
58
48
var permitUnknownBrowsers = ! nativeRun ;
59
- var browsers = process . env [ 'SELENIUM_BROWSERS ' ] || webdriver . Browser . FIREFOX ;
49
+ var browsers = process . env [ 'SELENIUM_BROWSER ' ] || webdriver . Browser . FIREFOX ;
60
50
61
51
browsers = browsers . split ( ',' ) ;
62
52
browsers . forEach ( function ( browser ) {
@@ -114,28 +104,16 @@ function browsers(currentBrowser, browsersToIgnore) {
114
104
function TestEnvironment ( browserName , server ) {
115
105
var name = browserName ;
116
106
117
- var autoCreate = true ;
118
- this . __defineGetter__ (
119
- 'autoCreateDriver' , function ( ) { return autoCreate ; } ) ;
120
- this . __defineSetter__ (
121
- 'autoCreateDriver' , function ( auto ) { autoCreate = auto ; } ) ;
122
-
123
- this . __defineGetter__ ( 'browser' , function ( ) { return browserName ; } ) ;
124
-
125
- var driver ;
126
- this . __defineGetter__ ( 'driver' , function ( ) { return driver ; } ) ;
127
- this . __defineSetter__ ( 'driver' , function ( d ) {
128
- if ( driver ) throw Error ( 'Driver already created' ) ;
129
- driver = d ;
130
- } ) ;
107
+ this . currentBrowser = function ( ) {
108
+ return browserName ;
109
+ } ;
131
110
132
111
this . browsers = function ( var_args ) {
133
112
var browsersToIgnore = Array . prototype . slice . apply ( arguments , [ 0 ] ) ;
134
113
return browsers ( browserName , browsersToIgnore ) ;
135
114
} ;
136
115
137
116
this . builder = function ( ) {
138
- assert . ok ( ! driver , 'Can only have one driver at a time' ) ;
139
117
var builder = new webdriver . Builder ( ) ;
140
118
var realBuild = builder . build ;
141
119
@@ -148,34 +126,11 @@ function TestEnvironment(browserName, server) {
148
126
builder . usingServer ( remoteUrl ) ;
149
127
}
150
128
builder . disableEnvironmentOverrides ( ) ;
151
- return driver = realBuild . call ( builder ) ;
129
+ return realBuild . call ( builder ) ;
152
130
} ;
153
131
154
132
return builder ;
155
133
} ;
156
-
157
- this . createDriver = function ( ) {
158
- if ( ! driver ) {
159
- driver = this . builder ( ) . build ( ) ;
160
- }
161
- return driver ;
162
- } ;
163
-
164
- this . refreshDriver = function ( ) {
165
- if ( driver ) {
166
- driver . quit ( ) ;
167
- driver = null ;
168
- }
169
- this . createDriver ( ) ;
170
- } ;
171
-
172
- this . dispose = function ( ) {
173
- if ( driver ) {
174
- var d = driver ;
175
- driver = null ;
176
- return d . quit ( ) ;
177
- }
178
- } ;
179
134
}
180
135
181
136
@@ -206,6 +161,14 @@ function suite(fn, opt_options) {
206
161
}
207
162
208
163
try {
164
+
165
+ // Server is only started if required for a specific config.
166
+ testing . after ( function ( ) {
167
+ if ( seleniumServer ) {
168
+ return seleniumServer . stop ( ) ;
169
+ }
170
+ } ) ;
171
+
209
172
browsers . forEach ( function ( browser ) {
210
173
testing . describe ( '[' + browser + ']' , function ( ) {
211
174
@@ -229,20 +192,7 @@ function suite(fn, opt_options) {
229
192
return seleniumServer . start ( 60 * 1000 ) ;
230
193
} ) ;
231
194
}
232
-
233
- var env = new TestEnvironment ( browser , serverToUse ) ;
234
-
235
- testing . beforeEach ( function ( ) {
236
- if ( env . autoCreateDriver ) {
237
- return env . createDriver ( ) . getSession ( ) ; // Catch start-up failures.
238
- }
239
- } ) ;
240
-
241
- testing . after ( function ( ) {
242
- return env . dispose ( ) ;
243
- } ) ;
244
-
245
- fn ( env ) ;
195
+ fn ( new TestEnvironment ( browser , serverToUse ) ) ;
246
196
} ) ;
247
197
} ) ;
248
198
} finally {
@@ -257,14 +207,6 @@ function suite(fn, opt_options) {
257
207
testing . before ( fileserver . start ) ;
258
208
testing . after ( fileserver . stop ) ;
259
209
260
- // Server is only started if required for a specific config.
261
- testing . after ( function ( ) {
262
- if ( seleniumServer ) {
263
- seleniumServer . stop ( ) ;
264
- }
265
- } ) ;
266
-
267
-
268
210
// PUBLIC API
269
211
270
212
0 commit comments