@@ -80,6 +80,25 @@ function getXPath(node) {
8080 return '/' + path . join ( '/' ) ;
8181}
8282
83+ webdriver . FirstSessionBuilder = function ( ) {
84+ webdriver . AbstractBuilder . call ( this ) ;
85+ }
86+
87+ webdriver . FirstSessionBuilder . prototype = new webdriver . AbstractBuilder ( ) ;
88+
89+ webdriver . FirstSessionBuilder . prototype . build = function ( ) {
90+ var self = this ;
91+ var client = new webdriver . http . CorsClient ( this . getServerUrl ( ) ) ;
92+ var executor = new webdriver . http . Executor ( client ) ;
93+ var session = webdriver . Session . getSessions ( executor ) . then ( function ( sessions ) {
94+ if ( sessions [ 0 ] )
95+ return sessions [ 0 ] ;
96+ else
97+ return webdriver . WebDriver . createSession ( executor , self . getCapabilities ( ) ) . getSession ( ) ;
98+ } ) ;
99+ return new webdriver . WebDriver ( session , executor ) ;
100+ } ;
101+
83102webdriver . WebDriver . prototype . visualizerGetSource = function ( ) {
84103 webdriver . http . Executor . COMMAND_MAP_ [ 'visualizerGetSource' ] = {
85104 method : 'GET' , path : '/session/:sessionId/-cisco-visualizer-source' } ;
@@ -96,6 +115,11 @@ webdriver.WebDriver.prototype.visualizerShowPoint = function() {
96115 'WebDriver.visualizerShowPoint()' ) ;
97116}
98117
118+ window . onerror = function ( errorMsg , url , lineNumber , columnNumber , error ) {
119+ console . log ( error . stack ) ;
120+ return false ;
121+ }
122+
99123var Util = function ( ) { }
100124Util . WebDriverKeyFromJs = function ( keyCode ) {
101125 switch ( keyCode ) {
@@ -443,18 +467,10 @@ WebDriverJsController.prototype._constructWebDriver = function() {
443467 return ;
444468
445469 if ( this . webDriverUrlPort != webDriverUrlPort ) {
446- var capabilities = { 'browserName' : 'qtwebkit' } ;
447-
448- var client = new webdriver . http . CorsClient ( webDriverUrlPort ) ;
449- var executor = new webdriver . http . Executor ( client ) ;
450- var session = webdriver . Session . getSessions ( executor ) . then ( function ( sessions ) {
451- if ( sessions [ 0 ] )
452- return sessions [ 0 ] ;
453- else
454- return webdriver . WebDriver . createSession ( executor , capabilities ) . getSession ( ) ;
455- } ) ;
456-
457- this . _driver = this . visualizer . driver = new webdriver . WebDriver ( session , executor ) ;
470+ this . _driver = this . visualizer . driver = new webdriver . FirstSessionBuilder ( ) .
471+ usingServer ( webDriverUrlPort ) .
472+ withCapabilities ( { 'browserName' : 'qtwebkit' } ) .
473+ build ( ) ;
458474
459475 this . webDriverUrlPort = webDriverUrlPort ;
460476 if ( localStorage )
0 commit comments