<?xml version="1.0" encoding="UTF-8"?>
<commit>
  <added type="array"/>
  <modified type="array">
    <modified>
      <diff>@@ -1,7 +1,22 @@
 module Selenium
-  SeleniumDriver = Class.new(Selenium::Client::Driver) do
+  
+  class SeleniumGemCustomizedSeleniumDriver
+    extend ::Forwardable
     include WaitFor
-    attr_reader :server_host, :server_port
+    attr_reader :server_host, :server_port, :actual_driver
+    
+    def initialize(server_host, server_port, browser_string, browser_url, timeout_in_seconds=300)
+      @server_host = server_host
+      @server_port = server_port
+      @browser_string = browser_string
+      @browser_url = browser_url
+      @timeout = timeout_in_seconds
+      @actual_driver = Selenium::Client::Driver.new server_host, server_port, browser_string, browser_url, timeout_in_seconds
+    end
+
+    def start
+      @actual_driver.start
+    end
 
     def browser_start_command
       @browser_string
@@ -22,68 +37,59 @@ module Selenium
     scriptTag.src = &quot;#{uri}&quot;;
     headTag.appendChild( scriptTag );
       USEREXTENSIONS
-      get_eval(js)
+      @actual_driver.get_eval(js)
     end
 
-    #  def element(locator)
-    #    Element.new(self, locator)
-    #  end
-    #
-    #  def page
-    #    Page.new(self)
-    #  end
-
     #--------- Commands
-    alias_method :confirm, :get_confirmation
 
     # Type text into a page element
     def type(locator, value)
-      assert_element_present(locator)
-      super
+      assert_element_present locator
+      @actual_driver.type locator, value
     end
 
     def click(locator)
       assert_element_present locator
-      super
+      @actual_driver.click locator
     end
 
     def select(select_locator, option_locator)
       assert_element_present select_locator
-      super
+      @actual_driver.select select_locator, option_locator
     end
 
     # Reload the current page that the browser is on.
     def reload
-      get_eval(&quot;selenium.browserbot.getCurrentWindow().location.reload()&quot;)
+      @actual_driver.get_eval(&quot;selenium.browserbot.getCurrentWindow().location.reload()&quot;)
     end
 
     # Click a link and wait for the page to load.
     def click_and_wait(locator, wait_for = default_timeout)
       click locator
-      assert_page_loaded(wait_for)
+      assert_page_loaded wait_for
     end
 
     # Click the back button and wait for the page to load.
     def go_back_and_wait
-      go_back
+      @actual_driver.go_back
       assert_page_loaded
     end
 
     # Open the home page of the Application and wait for the page to load.
     def open(url)
-      super
+      @actual_driver.open url
       assert_page_loaded
     end
     alias_method :open_and_wait, :open
 
     # Get the inner html of the located element.
     def get_inner_html(locator)
-      get_eval(inner_html_js(locator))
+      @actual_driver.get_eval inner_html_js(locator)
     end
 
     # Does the element at locator not contain the text?
     def element_does_not_contain_text(locator, text)
-      return true unless is_element_present(locator)
+      return true unless @actual_driver.is_element_present(locator)
       return !element(locator).contains?(text)
     end
 
@@ -93,7 +99,7 @@ module Selenium
       :message =&gt; &quot;Expected element '#{locator}' to be present, but it was not&quot;
       }.merge(params)
       wait_for(params) do
-        is_element_present(locator)
+        @actual_driver.is_element_present(locator)
       end
     end
 
@@ -102,37 +108,61 @@ module Selenium
       :message =&gt; &quot;Expected element '#{locator}' to be absent, but it was not&quot;
       }.merge(params)
       wait_for(:message =&gt; params[:message]) do
-        !is_element_present(locator)
+        !@actual_driver.is_element_present(locator)
       end
     end
 
     def wait_for_page_to_load(timeout=default_timeout)
-      super
-      if get_title.include?(&quot;Exception caught&quot;)
-        raise &quot;We got a new page, but it was an application exception page.\n\n#{get_html_source}&quot;
+      @actual_driver.wait_for_page
+      if @actual_driver.get_title.include?(&quot;Exception caught&quot;)
+        raise &quot;We got a new page, but it was an application exception page.\n\n#{@actual_driver.get_html_source}&quot;
       end
     end
     alias_method :assert_page_loaded, :wait_for_page_to_load
 
     # Open the log window on the browser. This is useful to diagnose issues with Selenium Core.
     def show_log(log_level = &quot;debug&quot;)
-      get_eval &quot;LOG.setLogLevelThreshold('#{log_level}')&quot;
+      @actual_driver.get_eval &quot;LOG.setLogLevelThreshold('#{log_level}')&quot;
     end
 
     # Slow down each Selenese step after this method is called.
     def slow_mode
-      get_eval &quot;slowMode = true&quot;
-      get_eval 'window.document.getElementsByName(&quot;FASTMODE&quot;)[0].checked = true'
+      @actual_driver.get_eval &quot;slowMode = true&quot;
+      @actual_driver.get_eval 'window.document.getElementsByName(&quot;FASTMODE&quot;)[0].checked = true'
     end
 
     # Speeds up each Selenese step to normal speed after this method is called.
     def fast_mode
-      get_eval &quot;slowMode = false&quot;
-      get_eval 'window.document.getElementsByName(&quot;FASTMODE&quot;)[0].checked = false'
+      @actual_driver.get_eval &quot;slowMode = false&quot;
+      @actual_driver.get_eval 'window.document.getElementsByName(&quot;FASTMODE&quot;)[0].checked = false'
     end
 
     def inner_html_js(locator)
       %Q|this.page().findElement(&quot;#{locator}&quot;).innerHTML|
     end
+    
+    def to_s
+      &quot;SeleniumDriver (Modified by selenium gem)&quot;
+    end
+
+    unmodified_methods = Selenium::Client::Driver.public_instance_methods - Selenium::SeleniumGemCustomizedSeleniumDriver.public_instance_methods
+    unmodified_methods.each do |selenium_api_method|
+      def_delegator :@actual_driver, selenium_api_method.to_sym
+    end
+    # puts unmodified_methods.inspect
+    
+    # puts Selenium::Client::Driver.public_instance_methods.inspect
+    # puts Selenium::SeleniumGemCustomizedSeleniumDriver.public_instance_methods.inspect
+    
+    # def_delegators :@actual_driver, :stop, :get_confirmation, 
+    #                :is_element_present, :get_title, :get_value, :double_click, 
+    #                :is_alert_present, :get_alert, :key_press, :context_menu, :focus,
+    #                :set_speed, :get_speed, :capture_screenshot, :fire_event, :shit_key_down
+
+
+    alias_method :confirm, :get_confirmation
   end
+  
+  SeleniumDriver = SeleniumGemCustomizedSeleniumDriver
+  
 end</diff>
      <filename>lib/selenium/selenium_driver.rb</filename>
    </modified>
    <modified>
      <diff>@@ -22,7 +22,7 @@ module Selenium
           puts &quot;server not running on #{server.port_number}&quot;
         end
       else
-        command = &quot;java #{vmparameter} -jar #{jar_file} #{argv.join(' ')}&quot;
+        command = &quot;java #{vmparameter} -jar \&quot;#{jar_file}\&quot; #{argv.join(' ')}&quot;
         puts command
         system(command)
       end</diff>
      <filename>lib/selenium/selenium_server.rb</filename>
    </modified>
    <modified>
      <diff>@@ -56,7 +56,7 @@ module Selenium
     end
 
     def alert
-      Alert.new(self)
+      Alert.new self
     end
 
     def link(how, what=nil)
@@ -67,19 +67,19 @@ module Selenium
       else
         locator = element_locator(how, what)
       end
-      Link.new(self, locator)
+      Link.new self, locator
     end
 
     def text_field(how, what=nil)
-      TextField.new(self, element_locator(how, what))
+      TextField.new self, element_locator(how, what)
     end
 
     def text_area(how, what=nil)
-      TextArea.new(self, element_locator(how, what))
+      TextArea.new self, element_locator(how, what)
     end
 
     def element(how, what=nil)
-      HtmlElement.new(self, element_locator(how,what))
+      HtmlElement.new self, element_locator(how,what)
     end
 
     def element_locator(how, what=nil)
@@ -95,11 +95,11 @@ module Selenium
     end
 
     def file_upload(how, what)
-      FileUpload.new(self, element_locator(how, what))
+      FileUpload.new self, element_locator(how, what)
     end
 
     def open_page(url)
-      @browser.open(url)
+      @browser.open url
     end
 
     def close
@@ -107,23 +107,23 @@ module Selenium
     end
 
     def click(locator)
-      @browser.click(locator)
+      @browser.click locator
     end
 
     def text(locator)
-      @browser.get_text(locator)
+      @browser.get_text locator
     end
 
     def button(how, what=nil)
-      Button.new(self, element_locator(how, what))
+      Button.new self, element_locator(how, what)
     end
 
     def key(key)
-      Key.new(self, key)
+      Key.new self, key
     end
 
     def element_present?(locator)
-      @browser.is_element_present(locator)
+      @browser.is_element_present locator
     end
 
     def alert_present?
@@ -131,25 +131,25 @@ module Selenium
     end
 
     def text_present?(text)
-      @browser.is_text_present(text)
+      @browser.is_text_present text
     end
 
     def double_click(locator)
-      @browser.double_click(locator)
+      @browser.double_click locator
     end
 
     def click_wait(locator)
-      click(locator)
+      click locator
       wait_for_load
     end
 
     # enter the text to the element found by locator
     def enter(locator, text)
-      @browser.type(locator, text)
+      @browser.type locator, text
     end
 
     def value(locator)
-      @browser.get_value(locator)
+      @browser.get_value locator
     end
 
     def alert_message
@@ -157,11 +157,11 @@ module Selenium
     end
 
     def context_menu(locator)
-      @browser.context_menu(locator)
+      @browser.context_menu locator
     end
 
     def fire_event(locator, event)
-      @browser.fire_event(locator, event)
+      @browser.fire_event locator, event
     end
 
     def key_down(key)
@@ -177,23 +177,23 @@ module Selenium
     end
 
     def key_press(locator, key)
-      @browser.key_press(locator, key)
+      @browser.key_press locator, key
     end
 
     def focus(locator)
-      @browser.focus(locator)
+      @browser.focus locator
     end
 
     def upload(locator, file)
-      @browser.attach_file(locator, file)
+      @browser.attach_file locator, file
     end
 
     def capture_page(file)
-      @browser.capture_entire_page_screenshot(file)
+      @browser.capture_entire_page_screenshot file
     end
 
     def capture_screen(file)
-      @browser.capture_screenshot(file)
+      @browser.capture_screenshot file
     end
 
     def to_s</diff>
      <filename>lib/selenium/web_page.rb</filename>
    </modified>
    <modified>
      <diff>@@ -7,7 +7,9 @@ require 'spec/rake/spectask'
 require 'rake/gempackagetask'
 require 'rake/rdoctask'
 require 'rcov/rcovtask'
+gem 'BuildMaster', '&gt;=1.1.12'
 require 'specs'
+gem 'rr'
 require 'buildmaster/project/server_manager'
 require file + '/selenium'
 
@@ -19,12 +21,15 @@ task :init do
   rspec_dir.mkdirs
 end
 
-#desc &quot;Run all specifications&quot;
+desc &quot;Run all specifications providing test coverage metrics&quot;
 Spec::Rake::SpecTask.new(:coverage) do |t|
   t.spec_files = FileList['spec/**/tc_*.rb']
   t.rcov = true
   t.rcov_dir = rcov_dir.path
-  t.spec_opts = [&quot;--format&quot;, &quot;html:#{rspec_dir.file('index.html').path}&quot;, &quot;--diff&quot;]
+  t.spec_opts = [ &quot;--colour&quot;,
+                  &quot;--format&quot;, &quot;progress&quot;, 
+                  &quot;--format&quot;, &quot;html:#{rspec_dir.file('index.html').path}&quot;, 
+                  &quot;--diff&quot;]
   t.fail_on_error = false
 end
 </diff>
      <filename>rakefile.rb</filename>
    </modified>
    <modified>
      <diff>@@ -20,7 +20,7 @@ describe 'Time Out Control' do
 
      ]
 
-     selenium=Selenium::Client::Driver.new(&quot;localhost&quot;, 4444,&quot;*chrome&quot;, link_list.first, 600000)
+     selenium = Selenium::Client::Driver.new(&quot;localhost&quot;, 4444,&quot;*chrome&quot;, link_list.first, 600000)
      selenium.start
      selenium.set_timeout(600000)
      link_list.each {|url| selenium.open(url) }</diff>
      <filename>spec/selenium/manual_tc_timout.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,12 +1,10 @@
 require File.dirname(__FILE__) + '/spec_helper'
 
-module Selenium
 describe 'basic operation with selenium' do
   before do
-    port = 4567
-    @server = Selenium::Server.on_port(port)
+    @server = Selenium::Server.on_port(4567)
     @server.start
-    @webpage = @server.open(BROWSER, 'http://localhost:2000/test/index.html')
+    @webpage = @server.open(Selenium::BROWSER, 'http://localhost:2000/test/index.html')
     @browser = @webpage.browser
   end
 
@@ -19,4 +17,3 @@ describe 'basic operation with selenium' do
   it 'should click through menus' do
   end
 end
-end
\ No newline at end of file</diff>
      <filename>spec/selenium/tc_basic_operation.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,30 +1,29 @@
 require File.join(File.dirname(__FILE__), &quot;spec_helper&quot;)
 
-#START GOOGLEHOME
-class GoogleHomPage &lt; Selenium::WebPage
-  def initialize(browser)
-    super(browser, 'Google')
-  end
+context 'Google Search' do
 
-  def title
-    browser.get_title
-  end
+  class GoogleHomePage &lt; Selenium::WebPage
 
-  def search_field
-    text_field(:name, 'q')
-  end
+    def initialize(browser)
+      super browser, 'Google'
+    end
 
-  def search_button
-    button(:name, 'btnG')
-  end
+    def title
+      browser.get_title
+    end
 
-end
-#END GOOGLEHOME
+    def search_field
+      text_field :name, 'q'
+    end
+
+    def search_button
+      button :name, 'btnG'
+    end
 
-context 'Test goole search' do
+  end
+  
   before(:all) do
-    port = 4567
-    @server = Selenium::Server.on_port(port)
+    @server = Selenium::Server.on_port(4567)
     @server.start
   end
 
@@ -41,15 +40,13 @@ context 'Test goole search' do
     @server.stop
   end
 
-#START DOMAIN
-  specify'searh hello world with google using docmain based script' do
-    page = GoogleHomPage.new(@webpage.browser)
+  specify'Search hello world with Google using domain based script' do
+    page = GoogleHomePage.new(@webpage.browser)
     page.should be_present
-    page.search_field.enter('hello world')
+    page.search_field.enter 'hello world'
     page.search_button.click_wait
     page.title.should == 'hello world - Google Search'
     page.search_field.value.should == 'hello world'
   end
-#END DOMAIN
 
 end</diff>
      <filename>spec/selenium/tc_domain_example.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,30 +1,30 @@
 require File.join(File.dirname(__FILE__), &quot;spec_helper&quot;)
 
-module Selenium
-  describe HtmlElement do
-    before(:all) do
-      @server = Server.new(4445)
-      @server.start
-      @webpage = @server.open(BROWSER, 'http://localhost:2000/test/index.html')
-    end
+describe Selenium::HtmlElement do
 
-    before do
-      @webpage.open_page('/test/index.html')
-    end
+  before(:all) do
+    @server = Selenium::Server.new(4445)
+    @server.start
+    @webpage = @server.open(Selenium::BROWSER, 'http://localhost:2000/test/index.html')
+  end
 
-    after(:all) do
-      @webpage.close if @webpage
-      @server.stop
-    end
+  before do
+    @webpage.open_page('/test/index.html')
+  end
 
-    it 'should support double click and key press' do
-      text_area = @webpage.text_area(:name, 'doubleclick')
-      text_area.enter 'html double click'
-      text_area.double_click
-      @webpage.alert.should be_present
-      @webpage.alert.message.should == 'double clicked with value html double click'
-      text_area.key_press('b')
-      text_area.value.should == 'html double clickb'
-    end
+  after(:all) do
+    @webpage.close if @webpage
+    @server.stop
   end
-end
\ No newline at end of file
+
+  it 'should support double click and key press' do
+    text_area = @webpage.text_area(:name, 'doubleclick')
+    text_area.enter 'html double click'
+    text_area.double_click
+    @webpage.alert.should be_present
+    @webpage.alert.message.should == 'double clicked with value html double click'
+    text_area.key_press('b')
+    text_area.value.should == 'html double clickb'
+  end
+
+end</diff>
      <filename>spec/selenium/tc_html_element.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,9 +1,9 @@
 require File.join(File.dirname(__FILE__), &quot;spec_helper&quot;)
 
-context 'Test goole search' do
+context 'Google Search Interaction' do
+
   before do
-    port = 4567
-    @server = Selenium::Server.on_port(port)
+    @server = Selenium::Server.on_port(4567)
     @server.start
     @page = @server.open(Selenium::BROWSER, 'http://www.google.com')
   end
@@ -13,8 +13,7 @@ context 'Test goole search' do
     @server.stop
   end
 
-#START INTERACTION
-  specify 'search hello world with google using interaction based script' do
+  specify 'Search hello world with google using interaction based script' do
     @page.open_page(&quot;/&quot;)
     @page.title.should == 'Google'
     @page.enter(&quot;q&quot;, &quot;hello world&quot;)
@@ -22,6 +21,5 @@ context 'Test goole search' do
     @page.wait_for_load
     @page.title.should == 'hello world - Google Search'
   end
-#END INTERACTION
 
 end</diff>
      <filename>spec/selenium/tc_interaction_example.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,22 +1,17 @@
 require File.join(File.dirname(__FILE__), &quot;spec_helper&quot;)
 
 module Selenium
+
   describe SeleniumDriver do
     it_should_behave_like &quot;Selenium&quot;
     attr_reader :driver, :commands
+
     before do
       @driver = SeleniumDriver.new(&quot;localhost&quot;, 4444, &quot;*firefox&quot;, &quot;http://localhost:3000&quot;, 240)
     end
 
-    def sample_locator
-      &quot;sample_locator&quot;
-    end
-
-    def sample_text
-      &quot;test text&quot;
-    end
-
     describe &quot;#initialize&quot; do
+
       it &quot;initializes with defaults&quot; do
         driver.server_host.should == &quot;localhost&quot;
         driver.server_port.should == 4444
@@ -35,10 +30,10 @@ module Selenium
     end
     
     describe &quot;#open and #open_and_wait&quot; do
+
       it &quot;opens page and waits for it to load&quot; do
-        mock(driver).remote_control_command(&quot;open&quot;, [&quot;http://localhost:4000&quot;])
-        mock(driver).remote_control_command(&quot;waitForPageToLoad&quot;, [driver.default_timeout]) {result}
-        mock(driver).remote_control_command(&quot;getTitle&quot;, []) {result(&quot;Some Title&quot;)}
+        mock(driver.actual_driver).open(&quot;http://localhost:4000&quot;)
+        mock(driver).assert_page_loaded
       
         driver.open(&quot;http://localhost:4000&quot;)
       end
@@ -46,74 +41,74 @@ module Selenium
       it &quot;aliases #open_and_wait to #open&quot; do
         driver.method(:open_and_wait).should == driver.method(:open)
       end
+
     end
       
     describe &quot;#type&quot; do
 	
       it &quot;types when element is present and types&quot; do
         is_element_present_results = [false, true]
-        mock(driver).boolean_command(&quot;isElementPresent&quot;, [&quot;id=foobar&quot;]).once do
+        mock(driver.actual_driver).is_element_present(&quot;id=foobar&quot;).once do
           result(is_element_present_results.shift)
         end
-        mock(driver).remote_control_command(&quot;type&quot;, [&quot;id=foobar&quot;, &quot;The Text&quot;]) do
-          result()
-        end
+        mock(driver.actual_driver).type(&quot;id=foobar&quot;, &quot;The Text&quot;) { result() }
       
         driver.type &quot;id=foobar&quot;, &quot;The Text&quot;
       end
       
        it &quot;fails when element is not present&quot; do
-         mock(driver).boolean_command(&quot;isElementPresent&quot;, [&quot;id=foobar&quot;]).once do
-           result(false)
+         mock(driver).assert_element_present(&quot;id=foobar&quot;).once do
+           flunk(&quot;simulated timeout&quot;)
          end
-         dont_allow(driver).remote_control_command(&quot;type&quot;, [&quot;id=foobar&quot;, &quot;The Text&quot;])
+         dont_allow(driver.actual_driver).type(&quot;id=foobar&quot;, &quot;The Text&quot;)
 
-         proc {
+         proc do
            driver.type &quot;id=foobar&quot;, &quot;The Text&quot;
-         }.should raise_error
+         end.should raise_error
        end
     end
       
     describe &quot;#click&quot; do
       it &quot;click when element is present and types&quot; do
         is_element_present_results = [false, true]
-        mock(driver).boolean_command(&quot;isElementPresent&quot;, [&quot;id=foobar&quot;]).once do
+        mock(driver.actual_driver).is_element_present(&quot;id=foobar&quot;).once do
           result(is_element_present_results.shift)
         end
-        mock(driver).remote_control_command(&quot;click&quot;, [&quot;id=foobar&quot;]) {result}
+        mock(driver.actual_driver).click(&quot;id=foobar&quot;) {result}
       
         driver.click &quot;id=foobar&quot;
       end
       
       it &quot;fails when element is not present&quot; do
         is_element_present_results = [false, false, false, false]
-        mock(driver).boolean_command(&quot;isElementPresent&quot;, [&quot;id=foobar&quot;]).once do
-          result(is_element_present_results.shift)
+        mock(driver).assert_element_present(&quot;id=foobar&quot;).once do
+          flunk(&quot;simulated timeout&quot;)
         end
-        dont_allow(driver).remote_control_command(&quot;click&quot;, [])
+        dont_allow(driver.actual_driver).click
       
-        proc {
+        proc do
           driver.click &quot;id=foobar&quot;
-        }.should raise_error
+        end.should raise_error
       end
     end
       
     describe &quot;#select&quot; do
+
       it &quot;types when element is present and types&quot; do
         is_element_present_results = [false, true]
-        mock(driver).boolean_command(&quot;isElementPresent&quot;, [&quot;id=foobar&quot;]).once do
+        mock(driver.actual_driver).is_element_present(&quot;id=foobar&quot;).once do
           result is_element_present_results.shift
         end
-        mock(driver).remote_control_command(&quot;select&quot;, [&quot;id=foobar&quot;, &quot;value=3&quot;]) {result}
+        mock(driver.actual_driver).select(&quot;id=foobar&quot;, &quot;value=3&quot;) {result}
       
         driver.select &quot;id=foobar&quot;, &quot;value=3&quot;
       end
       
        it &quot;fails when element is not present&quot; do
-         mock(driver).boolean_command(&quot;isElementPresent&quot;, [&quot;id=foobar&quot;]).once do
-           result false
+         mock(driver).assert_element_present(&quot;id=foobar&quot;).once do
+           flunk(&quot;simulated timeout&quot;)
          end
-         dont_allow(driver).remote_control_command(&quot;select&quot;, [&quot;id=foobar&quot;, &quot;value=3&quot;])
+         dont_allow(driver.actual_driver).select(&quot;id=foobar&quot;, &quot;value=3&quot;)
 
          proc {
            driver.select &quot;id=foobar&quot;, &quot;value=3&quot;
@@ -124,26 +119,35 @@ module Selenium
     describe &quot;#click&quot; do
       it &quot;click when element is present and types&quot; do
         is_element_present_results = [false, true]
-        mock(driver).boolean_command(&quot;isElementPresent&quot;, [&quot;id=foobar&quot;]).once do
+        mock(driver.actual_driver).is_element_present(&quot;id=foobar&quot;).once do
           result is_element_present_results.shift
         end
-        mock(driver).remote_control_command(&quot;click&quot;, [&quot;id=foobar&quot;]) {result}
+        mock(driver.actual_driver).click(&quot;id=foobar&quot;) {result}
       
         driver.click &quot;id=foobar&quot;
       end
       
       it &quot;fails when element is not present&quot; do
-        is_element_present_results = [false, false, false, false]
-        mock(driver).is_element_present(&quot;id=foobar&quot;).times(4) do
-          is_element_present_results.shift
+        mock(driver).assert_element_present(&quot;id=foobar&quot;)  do
+          flunk(&quot;simulated timeout&quot;)
         end
-        dont_allow(driver).remote_control_command(&quot;click&quot;, [&quot;id=foobar&quot;])
         
-        proc {
+        dont_allow(driver.actual_driver).click(&quot;id=foobar&quot;)
+        
+        proc do
           driver.click &quot;id=foobar&quot;
-        }.should raise_error
+        end.should raise_error
       end
     end
+    
+    def sample_locator
+      &quot;sample_locator&quot;
+    end
+
+    def sample_text
+      &quot;test text&quot;
+    end
+
   end
 
 end</diff>
      <filename>spec/selenium/tc_selenium_driver.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,20 +1,19 @@
 require File.join(File.dirname(__FILE__), &quot;spec_helper&quot;)
 
-module Selenium
-describe 'server manager' do
-  it 'supports starting and stopping server on specified port' do
-    server = Server.on_port(4321)
+describe 'Server Manager' do
+
+  it 'Supports starting and stopping server on specified port' do
+    server = Selenium::Server.on_port(4321)
     server.start
     server.status.should == &quot;started&quot;
     server.stop
     server.status.should == &quot;stopped&quot;
   end
 
-  it 'should support arguments through start method' do
-    server = Server.on_port(3333)
+  it 'Supports arguments through start method' do
+    server = Selenium::Server.on_port(3333)
     server.start('-timeout 800')
     server.stop
   end
-end
 
 end
\ No newline at end of file</diff>
      <filename>spec/selenium/tc_server.rb</filename>
    </modified>
    <modified>
      <diff>@@ -1,109 +1,108 @@
 require File.join(File.dirname(__FILE__), &quot;spec_helper&quot;)
 
-module Selenium
-  describe WebPage do
-    before(:all) do
-      @server = Server.new(2344)
-      @server.start  
-      @@webpage = nil
-    end
+describe Selenium::WebPage do
 
-    before do
-      @@webpage.open_page('/') if @@webpage
-    end
+  before(:all) do
+    @server = Selenium::Server.new(2344)
+    @server.start  
+    @@webpage = nil
+  end
 
-    after(:all) do
-      @server.stop
-    end
+  before do
+    @@webpage.open_page('/') if @@webpage
+  end
 
-    def webpage
-      @@webpage = @server.open(BROWSER, 'http://localhost:2000/') unless @@webpage
-      @@webpage
-    end
+  after(:all) do
+    @server.stop
+  end
 
-    it 'should have meaningful to_s support' do
-      webpage = WebPage.new(SeleniumDriver.new('localhost', 2222, '*chrome', 'http://www.example.com', 60000), 'expected title')
-      webpage.to_s.should == 'Selenium::WebPage(\'expected title\') - SeleniumDriver'
-    end
+  def webpage
+    @@webpage = @server.open(Selenium::BROWSER, 'http://localhost:2000/') unless @@webpage
+    @@webpage
+  end
 
-    it 'should create link based on text' do
-      webpage = WebPage.new('browser')
-      webpage.link(:text, 'text').locator.should == 'link=text'
-    end
+  it 'should have meaningful to_s support' do
+    webpage = Selenium::WebPage.new(Selenium::SeleniumDriver.new('localhost', 2222, '*chrome', 'http://www.example.com', 60000), 'expected title')
+    webpage.to_s.should == 'Selenium::WebPage(\'expected title\') - SeleniumDriver (Modified by selenium gem)'
+  end
 
-    it 'should create link based on href' do
-      webpage = WebPage.new('browser')
-      webpage.link(:href, 'a.html').locator.should == &quot;xpath=//a[@href='a.html']&quot;
-    end
+  it 'should create link based on text' do
+    webpage = Selenium::WebPage.new('browser')
+    webpage.link(:text, 'text').locator.should == 'link=text'
+  end
 
-    it 'should convert how and what to locator for selenium driver' do
-      webpage.element_locator('name').should == 'name'
-      webpage.element_locator(:id, 'id').should == 'id=id'
-      webpage.element_locator(:name, 'name').should == 'name=name'
-      webpage.element_locator(:xpath, '//a').should == 'xpath=//a'
-    end
+  it 'should create link based on href' do
+    webpage = Selenium::WebPage.new('browser')
+    webpage.link(:href, 'a.html').locator.should == &quot;xpath=//a[@href='a.html']&quot;
+  end
 
-    it 'should support elements by passing in name directly' do
-      webpage.open_page('/test/index.html')
-      text_field = webpage.text_field('doubleclick')
-      text_field.locator.should == 'doubleclick'
-      text_field.enter('webpage')
-      webpage.text_area('doubleclick').enter('webpage')
-      webpage.text_area('doubleclick').double_click
-      webpage.should be_alert_present
-      webpage.alert_message.should == 'double clicked with value webpage'
-      webpage.text_area('doubleclick').key_press('a')
-      webpage.text_area('doubleclick').value.should == 'webpagea'
-    end
+  it 'should convert how and what to locator for selenium driver' do
+    webpage.element_locator('name').should == 'name'
+    webpage.element_locator(:id, 'id').should == 'id=id'
+    webpage.element_locator(:name, 'name').should == 'name=name'
+    webpage.element_locator(:xpath, '//a').should == 'xpath=//a'
+  end
 
-    it 'should support double click and key press' do
-      webpage.open_page('/test/index.html')
-      webpage.enter('doubleclick', 'webpage')
-      webpage.double_click('doubleclick')
-      webpage.should be_alert_present
-      webpage.alert_message.should == 'double clicked with value webpage'
-      webpage.key_press('doubleclick', 'a')
-      webpage.value('doubleclick').should == 'webpagea'
-    end
+  it 'should support elements by passing in name directly' do
+    webpage.open_page('/test/index.html')
+    text_field = webpage.text_field('doubleclick')
+    text_field.locator.should == 'doubleclick'
+    text_field.enter('webpage')
+    webpage.text_area('doubleclick').enter('webpage')
+    webpage.text_area('doubleclick').double_click
+    webpage.should be_alert_present
+    webpage.alert_message.should == 'double clicked with value webpage'
+    webpage.text_area('doubleclick').key_press('a')
+    webpage.text_area('doubleclick').value.should == 'webpagea'
+  end
 
-    it 'should support context menu' do
-      webpage.open_page('/test/index.html')
-      webpage.context_menu('link=License')
-      webpage.capture_screen(File.join(File.dirname(__FILE__), 'screenshot.png'))
-    end
+  it 'should support double click and key press' do
+    webpage.open_page('/test/index.html')
+    webpage.enter('doubleclick', 'webpage')
+    webpage.double_click('doubleclick')
+    webpage.should be_alert_present
+    webpage.alert_message.should == 'double clicked with value webpage'
+    webpage.key_press('doubleclick', 'a')
+    webpage.value('doubleclick').should == 'webpagea'
+  end
 
-    it 'should support focus event and fire blur event' do
-      webpage.open_page('/test/index.html')
-      webpage.focus('events')
-      webpage.enter('events', 'value')
-      webpage.value('events').should == 'value'
-      webpage.fire_event('events', 'blur')
-      webpage.should be_alert_present
-      webpage.alert_message.should == 'blurred with value value'
-      webpage.fire_event('events', 'focus')
+  it 'should support context menu' do
+    webpage.open_page('/test/index.html')
+    webpage.context_menu('link=License')
+    webpage.capture_screen(File.join(File.dirname(__FILE__), 'screenshot.png'))
+  end
+
+  it 'should support focus event and fire blur event' do
+    webpage.open_page('/test/index.html')
+    webpage.focus('events')
+    webpage.enter('events', 'value')
+    webpage.value('events').should == 'value'
+    webpage.fire_event('events', 'blur')
+    webpage.should be_alert_present
+    webpage.alert_message.should == 'blurred with value value'
+    webpage.fire_event('events', 'focus')
 #      webpage.focus('events')
-      webpage.value('events').should == 'default'
-    end
+    webpage.value('events').should == 'default'
+  end
 
-    it 'should support key event and check if it is supported' do
-      webpage.open_page('/test/index.httml')
-      webpage.key_down(:shift)
-      webpage.key_up(:shift)
-      [:shift, :meta, :alt, :control].each do |key|
-        key = webpage.key(key)
-        key.down
-        key.up
-      end
-      webpage.key(:alt).down
-
-      Proc.new {webpage.key_up(:command)}.should raise_error(NoKeyError)
-      Proc.new {webpage.key_down(:command)}.should raise_error(NoKeyError)
+  it 'should support key event and check if it is supported' do
+    webpage.open_page('/test/index.httml')
+    webpage.key_down(:shift)
+    webpage.key_up(:shift)
+    [:shift, :meta, :alt, :control].each do |key|
+      key = webpage.key(key)
+      key.down
+      key.up
     end
+    webpage.key(:alt).down
 
-    it 'should have speed as attribute' do
-      webpage.speed = 500
-      webpage.speed.should == 500
-    end
+    Proc.new {webpage.key_up(:command)}.should raise_error(Selenium::NoKeyError)
+    Proc.new {webpage.key_down(:command)}.should raise_error(Selenium::NoKeyError)
+  end
 
+  it 'should have speed as attribute' do
+    webpage.speed = 500
+    webpage.speed.should == 500
   end
+
 end</diff>
      <filename>spec/selenium/tc_web_page.rb</filename>
    </modified>
  </modified>
  <removed type="array"/>
  <parents type="array">
    <parent>
      <id>2a809a82072f4a7e0b2fbbdb7df6076d0d8b85ce</id>
    </parent>
    <parent>
      <id>5df1fa9fdd24b30e778b21564a60de2fc5af5bf8</id>
    </parent>
  </parents>
  <author>
    <name>wolfdancer</name>
    <email>wolfdancer@gmail.com</email>
  </author>
  <url>http://github.com/wolfdancer/selenium/commit/2224d781bce6c9a4f5ba8d460d8c3cf12afab9ce</url>
  <id>2224d781bce6c9a4f5ba8d460d8c3cf12afab9ce</id>
  <committed-date>2009-01-15T21:23:21-08:00</committed-date>
  <authored-date>2009-01-15T21:23:21-08:00</authored-date>
  <message>merged from ph7</message>
  <tree>22796b6812d5f994cfee81ca9271cb3bd9397c8a</tree>
  <committer>
    <name>wolfdancer</name>
    <email>wolfdancer@gmail.com</email>
  </committer>
</commit>
