whole_func_string: function(opts) {
  		opts.selenium = opts.selenium || 'http://localhost:4444/wd/hub';
  		if (typeof opts.selenium === 'string') {
  			if (opts.selenium === 'ondemand.saucelabs.com' || opts.selenium === 'hub.browserstack.com') {
  				opts.selenium = opts.selenium + '/wd/hub';
  			}
  
  			if (!opts.selenium.match(/^http(s)?:\/\//)) {
  				opts.selenium = 'http://' + opts.selenium
  			}
  			var url = require('url');
  			opts.selenium = url.parse(opts.selenium);
  		}
  
  		if (typeof opts.username !== 'undefined') {
  			opts.selenium.user = opts.username;
  		}
  
  		if (typeof opts.accesskey !== 'undefined') {
  			opts.selenium.pwd = opts.accesskey;
  		}
  		if (typeof opts.selenium.port !== 'number') {
  			opts.selenium.port = parseInt(opts.selenium.port, 10);
  		}
  		if (isNaN(opts.selenium.port)) {
  			opts.selenium.port = null;
  		}
  
  		return opts;
  	}
func_code_string: function(opts) {
  		opts.selenium = opts.selenium || 'http://localhost:4444/wd/hub';
  		if (typeof opts.selenium === 'string') {
  			if (opts.selenium === 'ondemand.saucelabs.com' || opts.selenium === 'hub.browserstack.com') {
  				opts.selenium = opts.selenium + '/wd/hub';
  			}
  
  			if (!opts.selenium.match(/^http(s)?:\/\//)) {
  				opts.selenium = 'http://' + opts.selenium
  			}
  			var url = require('url');
  			opts.selenium = url.parse(opts.selenium);
  		}
  
  		if (typeof opts.username !== 'undefined') {
  			opts.selenium.user = opts.username;
  		}
  
  		if (typeof opts.accesskey !== 'undefined') {
  			opts.selenium.pwd = opts.accesskey;
  		}
  		if (typeof opts.selenium.port !== 'number') {
  			opts.selenium.port = parseInt(opts.selenium.port, 10);
  		}
  		if (isNaN(opts.selenium.port)) {
  			opts.selenium.port = null;
  		}
  
  		return opts;
  	}
func_documentation_string: selenium