jarib-celerity 0.0.6.11 → 0.0.6.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/lib/celerity.rb +1 -0
- data/lib/celerity/browser.rb +78 -29
- data/lib/celerity/element_locator.rb +12 -5
- data/lib/celerity/elements/button.rb +3 -1
- data/lib/celerity/elements/meta.rb +2 -1
- data/lib/celerity/elements/option.rb +1 -1
- data/lib/celerity/exception.rb +6 -0
- data/lib/celerity/htmlunit/htmlunit-2.6-SNAPSHOT.jar +0 -0
- data/lib/celerity/htmlunit/htmlunit-core-js-2.6-SNAPSHOT.jar +0 -0
- data/lib/celerity/htmlunit/{nekohtml-1.9.13-20090507.082850-2.jar → nekohtml-1.9.13-20090714.153721-7.jar} +0 -0
- data/lib/celerity/ignoring_web_connection.rb +15 -0
- data/lib/celerity/version.rb +1 -1
- metadata +15 -17
    
        data/lib/celerity.rb
    CHANGED
    
    
    
        data/lib/celerity/browser.rb
    CHANGED
    
    | @@ -32,9 +32,10 @@ module Celerity | |
| 32 32 | 
             
                # @see Celerity::Container for an introduction to the main API.
         | 
| 33 33 | 
             
                #
         | 
| 34 34 | 
             
                # @option opts :log_level [Symbol] (:warning) @see log_level=
         | 
| 35 | 
            -
                # @option opts :browser [:firefox, : | 
| 35 | 
            +
                # @option opts :browser [:internet_explorer, :firefox, :firefox3] (:firefox) Set the BrowserVersion used by HtmlUnit. Defaults to Firefox 2.
         | 
| 36 36 | 
             
                # @option opts :css [Boolean] (false) Enable CSS.  Disabled by default.
         | 
| 37 | 
            -
                # @option opts :secure_ssl [Boolean] (true)   | 
| 37 | 
            +
                # @option opts :secure_ssl [Boolean] (true)  Enable/disable secure SSL. Enabled by default.
         | 
| 38 | 
            +
                # @option opts :javascript_enabled [Boolean] (true)  Enable/disable JavaScript evaluation. Enabled by default.
         | 
| 38 39 | 
             
                # @option opts :resynchronize [Boolean] (false) Use HtmlUnit::NicelyResynchronizingAjaxController to resynchronize Ajax calls.
         | 
| 39 40 | 
             
                # @option opts :javascript_exceptions [Boolean] (false) Raise exceptions on script errors. Disabled by default.
         | 
| 40 41 | 
             
                # @option opts :status_code_exceptions [Boolean] (false) Raise exceptions on failing status codes (404 etc.). Disabled by default.
         | 
| @@ -42,6 +43,7 @@ module Celerity | |
| 42 43 | 
             
                # @option opts :charset [String] ("UTF-8") Specify the charset that webclient will use for requests, and those where texts are getting gibberished, like Browser#html.
         | 
| 43 44 | 
             
                # @option opts :proxy [String] (nil) Proxy server to use, in address:port format.
         | 
| 44 45 | 
             
                # @option opts :user_agent [String] Override the User-Agent set by the :browser option
         | 
| 46 | 
            +
                # @option opts :ignore_pattern [Regexp] See Browser#ignore_pattern=
         | 
| 45 47 | 
             
                #
         | 
| 46 48 | 
             
                # @return [Celerity::Browser]     An instance of the browser.
         | 
| 47 49 | 
             
                #
         | 
| @@ -56,7 +58,7 @@ module Celerity | |
| 56 58 | 
             
                  unless (render_types = [:html, :xml, nil]).include?(opts[:render])
         | 
| 57 59 | 
             
                    raise ArgumentError, "expected one of #{render_types.inspect} for key :render"
         | 
| 58 60 | 
             
                  end
         | 
| 59 | 
            -
             | 
| 61 | 
            +
             | 
| 60 62 | 
             
                  opts     = opts.dup # we'll delete from opts, so dup to avoid side effects
         | 
| 61 63 | 
             
                  @options = opts.dup # keep the unmodified version around as well
         | 
| 62 64 |  | 
| @@ -64,7 +66,7 @@ module Celerity | |
| 64 66 | 
             
                  @charset       = opts.delete(:charset)   || "UTF-8"
         | 
| 65 67 | 
             
                  self.log_level = opts.delete(:log_level) || :warning
         | 
| 66 68 |  | 
| 67 | 
            -
                  @ | 
| 69 | 
            +
                  @page = nil
         | 
| 68 70 | 
             
                  @error_checkers  = []
         | 
| 69 71 | 
             
                  @browser         = self # for Container#browser
         | 
| 70 72 |  | 
| @@ -272,13 +274,27 @@ module Celerity | |
| 272 274 | 
             
                end
         | 
| 273 275 |  | 
| 274 276 | 
             
                #
         | 
| 275 | 
            -
                # Goto  | 
| 276 | 
            -
                # @return [String | 
| 277 | 
            +
                # Goto back one history item
         | 
| 278 | 
            +
                # @return [String] The url of the resulting page.
         | 
| 277 279 | 
             
                #
         | 
| 278 280 |  | 
| 279 281 | 
             
                def back
         | 
| 280 | 
            -
                   | 
| 281 | 
            -
                   | 
| 282 | 
            +
                  @webclient.getCurrentWindow.getHistory.back
         | 
| 283 | 
            +
                  refresh_page_from_window
         | 
| 284 | 
            +
             | 
| 285 | 
            +
                  url
         | 
| 286 | 
            +
                end
         | 
| 287 | 
            +
             | 
| 288 | 
            +
                #
         | 
| 289 | 
            +
                # Go forward one history item
         | 
| 290 | 
            +
                # @return [String] The url of the resulting page.
         | 
| 291 | 
            +
                #
         | 
| 292 | 
            +
             | 
| 293 | 
            +
                def forward
         | 
| 294 | 
            +
                  @webclient.getCurrentWindow.getHistory.forward
         | 
| 295 | 
            +
                  refresh_page_from_window
         | 
| 296 | 
            +
             | 
| 297 | 
            +
                  url
         | 
| 282 298 | 
             
                end
         | 
| 283 299 |  | 
| 284 300 | 
             
                #
         | 
| @@ -349,7 +365,7 @@ module Celerity | |
| 349 365 | 
             
                  max_age = opts.delete(:max_age) || (Time.now + 60*60*24) # not sure if this is correct
         | 
| 350 366 | 
             
                  secure  = opts.delete(:secure) || false
         | 
| 351 367 |  | 
| 352 | 
            -
                  raise "unknown option: #{opts.inspect}" unless opts.empty?
         | 
| 368 | 
            +
                  raise(ArgumentError, "unknown option: #{opts.inspect}") unless opts.empty?
         | 
| 353 369 |  | 
| 354 370 | 
             
                  cookie = Cookie.new(domain, name, value, path, max_age, secure)
         | 
| 355 371 | 
             
                  @webclient.getCookieManager.addCookie(cookie)
         | 
| @@ -361,13 +377,15 @@ module Celerity | |
| 361 377 | 
             
                # @param [String] domain
         | 
| 362 378 | 
             
                # @param [String] name
         | 
| 363 379 | 
             
                #
         | 
| 380 | 
            +
                # @raise [CookieNotFoundError] if the cookie doesn't exist
         | 
| 381 | 
            +
                #
         | 
| 364 382 |  | 
| 365 383 | 
             
                def remove_cookie(domain, name)
         | 
| 366 384 | 
             
                  cm = @webclient.getCookieManager
         | 
| 367 385 | 
             
                  cookie = cm.getCookies.find { |c| c.getDomain == domain && c.getName == name }
         | 
| 368 386 |  | 
| 369 387 | 
             
                  if cookie.nil?
         | 
| 370 | 
            -
                    raise "no cookie with domain #{domain.inspect} and name #{name.inspect}"
         | 
| 388 | 
            +
                    raise CookieNotFoundError, "no cookie with domain #{domain.inspect} and name #{name.inspect}"
         | 
| 371 389 | 
             
                  end
         | 
| 372 390 |  | 
| 373 391 | 
             
                  cm.removeCookie(cookie)
         | 
| @@ -598,6 +616,21 @@ module Celerity | |
| 598 616 | 
             
                  level
         | 
| 599 617 | 
             
                end
         | 
| 600 618 |  | 
| 619 | 
            +
                #
         | 
| 620 | 
            +
                # If a request is made to an URL that matches the pattern set here, Celerity
         | 
| 621 | 
            +
                # will ignore the request and return an empty page with content type "text/html" instead.
         | 
| 622 | 
            +
                #
         | 
| 623 | 
            +
                # This is useful to block unwanted requests (like ads/banners).
         | 
| 624 | 
            +
                #
         | 
| 625 | 
            +
             | 
| 626 | 
            +
                def ignore_pattern=(regexp)
         | 
| 627 | 
            +
                  unless regexp.kind_of?(Regexp)
         | 
| 628 | 
            +
                    raise TypeError, "expected Regexp, got #{regexp.inspect}:#{regexp.class}"
         | 
| 629 | 
            +
                  end
         | 
| 630 | 
            +
             | 
| 631 | 
            +
                  Celerity::IgnoringWebConnection.new(@webclient, regexp)
         | 
| 632 | 
            +
                end
         | 
| 633 | 
            +
             | 
| 601 634 | 
             
                #
         | 
| 602 635 | 
             
                # Checks if we have a page currently loaded.
         | 
| 603 636 | 
             
                # @return [true, false]
         | 
| @@ -664,6 +697,20 @@ module Celerity | |
| 664 697 | 
             
                  !@webclient.useInsecureSSL
         | 
| 665 698 | 
             
                end
         | 
| 666 699 |  | 
| 700 | 
            +
                #
         | 
| 701 | 
            +
                # Turn on/off JavaScript execution
         | 
| 702 | 
            +
                #
         | 
| 703 | 
            +
                # @param [Bool]
         | 
| 704 | 
            +
                #
         | 
| 705 | 
            +
             | 
| 706 | 
            +
                def javascript_enabled=(bool)
         | 
| 707 | 
            +
                  @webclient.setJavaScriptEnabled(bool)
         | 
| 708 | 
            +
                end
         | 
| 709 | 
            +
             | 
| 710 | 
            +
                def javascript_enabled
         | 
| 711 | 
            +
                  @webclient.isJavaScriptEnabled
         | 
| 712 | 
            +
                end
         | 
| 713 | 
            +
             | 
| 667 714 | 
             
                #
         | 
| 668 715 | 
             
                # Sets the current page object for the browser
         | 
| 669 716 | 
             
                #
         | 
| @@ -672,11 +719,10 @@ module Celerity | |
| 672 719 | 
             
                #
         | 
| 673 720 |  | 
| 674 721 | 
             
                def page=(value)
         | 
| 675 | 
            -
                  @last_url = url() if exist?
         | 
| 676 722 | 
             
                  @page = value
         | 
| 677 723 |  | 
| 678 724 | 
             
                  if @page.respond_to?("getDocumentElement")
         | 
| 679 | 
            -
                    @object = @page.getDocumentElement
         | 
| 725 | 
            +
                    @object = @page.getDocumentElement || @object
         | 
| 680 726 | 
             
                  elsif @page.is_a? HtmlUnit::UnexpectedPage
         | 
| 681 727 | 
             
                    raise UnexpectedPageException, @page.getWebResponse.getContentType
         | 
| 682 728 | 
             
                  end
         | 
| @@ -690,7 +736,7 @@ module Celerity | |
| 690 736 | 
             
                #
         | 
| 691 737 | 
             
                # Check that we have a @page object.
         | 
| 692 738 | 
             
                #
         | 
| 693 | 
            -
                # @raise [ | 
| 739 | 
            +
                # @raise [UnknownObjectException] if no page is loaded.
         | 
| 694 740 | 
             
                # @api private
         | 
| 695 741 | 
             
                #
         | 
| 696 742 |  | 
| @@ -727,32 +773,35 @@ module Celerity | |
| 727 773 | 
             
                def setup_webclient(opts)
         | 
| 728 774 | 
             
                  browser = (opts.delete(:browser) || :firefox).to_sym
         | 
| 729 775 |  | 
| 730 | 
            -
                  case browser
         | 
| 731 | 
            -
             | 
| 732 | 
            -
             | 
| 733 | 
            -
             | 
| 734 | 
            -
             | 
| 735 | 
            -
             | 
| 736 | 
            -
             | 
| 737 | 
            -
             | 
| 738 | 
            -
             | 
| 739 | 
            -
             | 
| 776 | 
            +
                  browser_version = case browser
         | 
| 777 | 
            +
                                    when :firefox, :ff, :ff2
         | 
| 778 | 
            +
                                      ::HtmlUnit::BrowserVersion::FIREFOX_2
         | 
| 779 | 
            +
                                    when :firefox3, :ff3
         | 
| 780 | 
            +
                                      ::HtmlUnit::BrowserVersion::FIREFOX_3
         | 
| 781 | 
            +
                                    when :internet_explorer, :ie
         | 
| 782 | 
            +
                                      ::HtmlUnit::BrowserVersion::INTERNET_EXPLORER_7
         | 
| 783 | 
            +
                                    else
         | 
| 784 | 
            +
                                      raise ArgumentError, "unknown browser: #{browser.inspect}"
         | 
| 785 | 
            +
                                    end
         | 
| 740 786 |  | 
| 741 787 | 
             
                  if ua = opts.delete(:user_agent)
         | 
| 742 788 | 
             
                    browser_version.setUserAgent(ua)
         | 
| 743 789 | 
             
                  end
         | 
| 744 790 |  | 
| 745 | 
            -
                  if proxy = opts.delete(:proxy)
         | 
| 746 | 
            -
             | 
| 747 | 
            -
             | 
| 748 | 
            -
             | 
| 749 | 
            -
             | 
| 750 | 
            -
             | 
| 791 | 
            +
                  @webclient = if proxy = opts.delete(:proxy)
         | 
| 792 | 
            +
                                 phost, pport = proxy.split(":")
         | 
| 793 | 
            +
                                 ::HtmlUnit::WebClient.new(browser_version, phost, pport.to_i)
         | 
| 794 | 
            +
                               else
         | 
| 795 | 
            +
                                 ::HtmlUnit::WebClient.new(browser_version)
         | 
| 796 | 
            +
                               end
         | 
| 751 797 |  | 
| 752 798 | 
             
                  self.javascript_exceptions  = false unless opts.delete(:javascript_exceptions)
         | 
| 753 799 | 
             
                  self.status_code_exceptions = false unless opts.delete(:status_code_exceptions)
         | 
| 754 800 | 
             
                  self.css                    = false unless opts.delete(:css)
         | 
| 801 | 
            +
                  self.javascript_enabled     = opts.delete(:javascript_enabled) != false
         | 
| 755 802 | 
             
                  self.secure_ssl             = opts.delete(:secure_ssl) == false
         | 
| 803 | 
            +
                  self.ignore_pattern         = opts.delete(:ignore_pattern) if opts[:ignore_pattern]
         | 
| 804 | 
            +
             | 
| 756 805 | 
             
                  @webclient.setAjaxController(::HtmlUnit::NicelyResynchronizingAjaxController.new) if opts.delete(:resynchronize)
         | 
| 757 806 | 
             
                end
         | 
| 758 807 |  | 
| @@ -118,7 +118,7 @@ module Celerity | |
| 118 118 |  | 
| 119 119 | 
             
                def get_by_idents(meth, idents)
         | 
| 120 120 | 
             
                  with_nullpointer_retry do
         | 
| 121 | 
            -
                     | 
| 121 | 
            +
                    all_elements.send(meth) do |e|
         | 
| 122 122 | 
             
                      next unless @tags.include?(e.getTagName)
         | 
| 123 123 | 
             
                      idents.any? { |id| element_matches_ident?(e, id) }
         | 
| 124 124 | 
             
                    end
         | 
| @@ -142,13 +142,20 @@ module Celerity | |
| 142 142 | 
             
                def elements_by_tag_names(tags = @tags)
         | 
| 143 143 | 
             
                  with_nullpointer_retry do
         | 
| 144 144 | 
             
                    # HtmlUnit's getHtmlElementsByTagNames won't get elements in the correct
         | 
| 145 | 
            -
                    # order (making :index fail), so we're  | 
| 146 | 
            -
                     | 
| 147 | 
            -
                      tags.include?(elem.getTagName)
         | 
| 148 | 
            -
                    end
         | 
| 145 | 
            +
                    # order (making :index fail), so we're looping through all elements instead.
         | 
| 146 | 
            +
                    all_elements.select { |elem| tags.include?(elem.getTagName) }
         | 
| 149 147 | 
             
                  end
         | 
| 150 148 | 
             
                end
         | 
| 151 149 |  | 
| 150 | 
            +
                def all_elements
         | 
| 151 | 
            +
                  unless @object
         | 
| 152 | 
            +
                    raise %{internal error in #{self.class}: @container=#{@container.inspect} @element_class=#{@element_class.inspect}
         | 
| 153 | 
            +
                      Please report this failure and the code/HTML that caused it at http://github.com/jarib/celerity/issues}
         | 
| 154 | 
            +
                  end
         | 
| 155 | 
            +
             | 
| 156 | 
            +
                  @object.getAllHtmlChildElements
         | 
| 157 | 
            +
                end
         | 
| 158 | 
            +
             | 
| 152 159 | 
             
                # HtmlUnit throws NPEs sometimes when we're locating elements
         | 
| 153 160 | 
             
                # Retry seems to work fine.
         | 
| 154 161 | 
             
                def with_nullpointer_retry(max_retries = 3)
         | 
| @@ -1,6 +1,7 @@ | |
| 1 1 | 
             
            module Celerity
         | 
| 2 2 | 
             
              class Meta < Element
         | 
| 3 | 
            -
                ATTRIBUTES | 
| 3 | 
            +
                ATTRIBUTES  = [:name, :id, :'http-equiv', :content, :scheme] | HTML_401_TRANSITIONAL[:i18n]
         | 
| 4 | 
            +
                DEFAULT_HOW = :id
         | 
| 4 5 | 
             
                TAGS = [ Identifier.new('meta') ]
         | 
| 5 6 | 
             
              end
         | 
| 6 7 | 
             
            end
         | 
    
        data/lib/celerity/exception.rb
    CHANGED
    
    | @@ -73,5 +73,11 @@ module Celerity | |
| 73 73 |  | 
| 74 74 | 
             
                class UnexpectedPageException < CelerityException; end
         | 
| 75 75 |  | 
| 76 | 
            +
                #
         | 
| 77 | 
            +
                # This exception is thrown if an unexpected content type is returned by the server.
         | 
| 78 | 
            +
                #
         | 
| 79 | 
            +
             | 
| 80 | 
            +
                class CookieNotFoundError < CelerityException; end
         | 
| 81 | 
            +
             | 
| 76 82 | 
             
              end # Exception
         | 
| 77 83 | 
             
            end # Celerity
         | 
| Binary file | 
| Binary file | 
| Binary file | 
| @@ -0,0 +1,15 @@ | |
| 1 | 
            +
            module Celerity
         | 
| 2 | 
            +
              class IgnoringWebConnection < HtmlUnit::Util::FalsifyingWebConnection
         | 
| 3 | 
            +
             | 
| 4 | 
            +
                def initialize(web_client, pattern)
         | 
| 5 | 
            +
                  super(web_client)
         | 
| 6 | 
            +
                  @pattern = pattern
         | 
| 7 | 
            +
                end
         | 
| 8 | 
            +
             | 
| 9 | 
            +
                def getResponse(request_settings)
         | 
| 10 | 
            +
                  return super unless request_settings.getUrl.toString =~ @pattern
         | 
| 11 | 
            +
                  createWebResponse(request_settings, "", "text/html")
         | 
| 12 | 
            +
                end
         | 
| 13 | 
            +
             | 
| 14 | 
            +
              end
         | 
| 15 | 
            +
            end
         | 
    
        data/lib/celerity/version.rb
    CHANGED
    
    
    
        metadata
    CHANGED
    
    | @@ -1,7 +1,7 @@ | |
| 1 1 | 
             
            --- !ruby/object:Gem::Specification 
         | 
| 2 2 | 
             
            name: jarib-celerity
         | 
| 3 3 | 
             
            version: !ruby/object:Gem::Version 
         | 
| 4 | 
            -
              version: 0.0.6. | 
| 4 | 
            +
              version: 0.0.6.12
         | 
| 5 5 | 
             
            platform: ruby
         | 
| 6 6 | 
             
            authors: 
         | 
| 7 7 | 
             
            - Jari Bakken
         | 
| @@ -11,7 +11,7 @@ autorequire: | |
| 11 11 | 
             
            bindir: bin
         | 
| 12 12 | 
             
            cert_chain: []
         | 
| 13 13 |  | 
| 14 | 
            -
            date: 2009- | 
| 14 | 
            +
            date: 2009-07-28 00:00:00 -07:00
         | 
| 15 15 | 
             
            default_executable: 
         | 
| 16 16 | 
             
            dependencies: 
         | 
| 17 17 | 
             
            - !ruby/object:Gem::Dependency 
         | 
| @@ -37,7 +37,6 @@ extra_rdoc_files: | |
| 37 37 | 
             
            files: 
         | 
| 38 38 | 
             
            - History.txt
         | 
| 39 39 | 
             
            - lib
         | 
| 40 | 
            -
            - lib/celerity
         | 
| 41 40 | 
             
            - lib/celerity/browser.rb
         | 
| 42 41 | 
             
            - lib/celerity/clickable_element.rb
         | 
| 43 42 | 
             
            - lib/celerity/collections.rb
         | 
| @@ -47,7 +46,6 @@ files: | |
| 47 46 | 
             
            - lib/celerity/element.rb
         | 
| 48 47 | 
             
            - lib/celerity/element_collection.rb
         | 
| 49 48 | 
             
            - lib/celerity/element_locator.rb
         | 
| 50 | 
            -
            - lib/celerity/elements
         | 
| 51 49 | 
             
            - lib/celerity/elements/button.rb
         | 
| 52 50 | 
             
            - lib/celerity/elements/file_field.rb
         | 
| 53 51 | 
             
            - lib/celerity/elements/form.rb
         | 
| @@ -66,7 +64,16 @@ files: | |
| 66 64 | 
             
            - lib/celerity/elements/table_row.rb
         | 
| 67 65 | 
             
            - lib/celerity/elements/text_field.rb
         | 
| 68 66 | 
             
            - lib/celerity/exception.rb
         | 
| 69 | 
            -
            - lib/celerity/htmlunit
         | 
| 67 | 
            +
            - lib/celerity/htmlunit.rb
         | 
| 68 | 
            +
            - lib/celerity/identifier.rb
         | 
| 69 | 
            +
            - lib/celerity/ignoring_web_connection.rb
         | 
| 70 | 
            +
            - lib/celerity/input_element.rb
         | 
| 71 | 
            +
            - lib/celerity/listener.rb
         | 
| 72 | 
            +
            - lib/celerity/short_inspect.rb
         | 
| 73 | 
            +
            - lib/celerity/util.rb
         | 
| 74 | 
            +
            - lib/celerity/version.rb
         | 
| 75 | 
            +
            - lib/celerity/watir_compatibility.rb
         | 
| 76 | 
            +
            - lib/celerity.rb
         | 
| 70 77 | 
             
            - lib/celerity/htmlunit/commons-codec-1.3.jar
         | 
| 71 78 | 
             
            - lib/celerity/htmlunit/commons-collections-3.2.1.jar
         | 
| 72 79 | 
             
            - lib/celerity/htmlunit/commons-httpclient-3.1.jar
         | 
| @@ -76,23 +83,13 @@ files: | |
| 76 83 | 
             
            - lib/celerity/htmlunit/cssparser-0.9.5.jar
         | 
| 77 84 | 
             
            - lib/celerity/htmlunit/htmlunit-2.6-SNAPSHOT.jar
         | 
| 78 85 | 
             
            - lib/celerity/htmlunit/htmlunit-core-js-2.6-SNAPSHOT.jar
         | 
| 79 | 
            -
            - lib/celerity/htmlunit/nekohtml-1.9.13- | 
| 86 | 
            +
            - lib/celerity/htmlunit/nekohtml-1.9.13-20090714.153721-7.jar
         | 
| 80 87 | 
             
            - lib/celerity/htmlunit/sac-1.3.jar
         | 
| 81 88 | 
             
            - lib/celerity/htmlunit/serializer-2.7.1.jar
         | 
| 82 89 | 
             
            - lib/celerity/htmlunit/xalan-2.7.1.jar
         | 
| 83 90 | 
             
            - lib/celerity/htmlunit/xercesImpl-2.8.1.jar
         | 
| 84 91 | 
             
            - lib/celerity/htmlunit/xml-apis-1.3.04.jar
         | 
| 85 | 
            -
            - lib/celerity/htmlunit.rb
         | 
| 86 | 
            -
            - lib/celerity/identifier.rb
         | 
| 87 | 
            -
            - lib/celerity/input_element.rb
         | 
| 88 | 
            -
            - lib/celerity/listener.rb
         | 
| 89 | 
            -
            - lib/celerity/resources
         | 
| 90 92 | 
             
            - lib/celerity/resources/no_viewer.png
         | 
| 91 | 
            -
            - lib/celerity/short_inspect.rb
         | 
| 92 | 
            -
            - lib/celerity/util.rb
         | 
| 93 | 
            -
            - lib/celerity/version.rb
         | 
| 94 | 
            -
            - lib/celerity/watir_compatibility.rb
         | 
| 95 | 
            -
            - lib/celerity.rb
         | 
| 96 93 | 
             
            - License.txt
         | 
| 97 94 | 
             
            - Rakefile
         | 
| 98 95 | 
             
            - README.txt
         | 
| @@ -101,6 +98,7 @@ files: | |
| 101 98 | 
             
            - tasks/rdoc.rake
         | 
| 102 99 | 
             
            has_rdoc: false
         | 
| 103 100 | 
             
            homepage: http://celerity.rubyforge.org
         | 
| 101 | 
            +
            licenses: 
         | 
| 104 102 | 
             
            post_install_message: 
         | 
| 105 103 | 
             
            rdoc_options: 
         | 
| 106 104 | 
             
            - --main
         | 
| @@ -122,7 +120,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement | |
| 122 120 | 
             
            requirements: []
         | 
| 123 121 |  | 
| 124 122 | 
             
            rubyforge_project: celerity
         | 
| 125 | 
            -
            rubygems_version: 1. | 
| 123 | 
            +
            rubygems_version: 1.3.5
         | 
| 126 124 | 
             
            signing_key: 
         | 
| 127 125 | 
             
            specification_version: 3
         | 
| 128 126 | 
             
            summary: Celerity is a JRuby library for easy and fast functional test automation for web applications
         |