celerity 0.0.7 → 0.0.7.2
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/Manifest.txt +3 -3
- data/README.rdoc +2 -2
- data/Rakefile +12 -5
- data/celerity.gemspec +8 -8
- data/lib/celerity.rb +1 -0
- data/lib/celerity/browser.rb +15 -7
- data/lib/celerity/elements/select_list.rb +8 -0
- data/lib/celerity/htmlunit.rb +1 -2
- data/lib/celerity/htmlunit/htmlunit-2.7-SNAPSHOT.jar +0 -0
- data/lib/celerity/htmlunit/{htmlunit-core-js-2.6.jar → htmlunit-core-js-2.7-SNAPSHOT.jar} +0 -0
- data/lib/celerity/javascript_debugger.rb +32 -0
- data/lib/celerity/version.rb +1 -1
- data/spec/browser_spec.rb +1 -1
- data/tasks/snapshot.rake +1 -1
- metadata +11 -12
- data/lib/celerity/htmlunit/htmlunit-2.6.jar +0 -0
- data/tasks/simple_ci.rake +0 -94
data/Manifest.txt
CHANGED
|
@@ -40,8 +40,8 @@ lib/celerity/htmlunit/commons-io-1.4.jar
|
|
|
40
40
|
lib/celerity/htmlunit/commons-lang-2.4.jar
|
|
41
41
|
lib/celerity/htmlunit/commons-logging-1.1.1.jar
|
|
42
42
|
lib/celerity/htmlunit/cssparser-0.9.5.jar
|
|
43
|
-
lib/celerity/htmlunit/htmlunit-2.
|
|
44
|
-
lib/celerity/htmlunit/htmlunit-core-js-2.
|
|
43
|
+
lib/celerity/htmlunit/htmlunit-2.7-SNAPSHOT.jar
|
|
44
|
+
lib/celerity/htmlunit/htmlunit-core-js-2.7-SNAPSHOT.jar
|
|
45
45
|
lib/celerity/htmlunit/nekohtml-1.9.13.jar
|
|
46
46
|
lib/celerity/htmlunit/sac-1.3.jar
|
|
47
47
|
lib/celerity/htmlunit/serializer-2.7.1.jar
|
|
@@ -51,6 +51,7 @@ lib/celerity/htmlunit/xml-apis-1.3.04.jar
|
|
|
51
51
|
lib/celerity/identifier.rb
|
|
52
52
|
lib/celerity/ignoring_web_connection.rb
|
|
53
53
|
lib/celerity/input_element.rb
|
|
54
|
+
lib/celerity/javascript_debugger.rb
|
|
54
55
|
lib/celerity/listener.rb
|
|
55
56
|
lib/celerity/resources/no_viewer.png
|
|
56
57
|
lib/celerity/short_inspect.rb
|
|
@@ -76,7 +77,6 @@ tasks/fix.rake
|
|
|
76
77
|
tasks/jar.rake
|
|
77
78
|
tasks/rdoc.rake
|
|
78
79
|
tasks/rspec.rake
|
|
79
|
-
tasks/simple_ci.rake
|
|
80
80
|
tasks/snapshot.rake
|
|
81
81
|
tasks/website.rake
|
|
82
82
|
tasks/yard.rake
|
data/README.rdoc
CHANGED
|
@@ -6,9 +6,9 @@
|
|
|
6
6
|
|
|
7
7
|
Celerity is a JRuby library for easy and fast functional test automation for web applications.
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
Celerity is a JRuby wrapper around HtmlUnit – a headless Java browser with
|
|
10
10
|
JavaScript support. It provides a simple API for programmatic navigation through
|
|
11
|
-
web applications. Celerity
|
|
11
|
+
web applications. Celerity provides a superset of Watir's API.
|
|
12
12
|
|
|
13
13
|
== Features
|
|
14
14
|
|
data/Rakefile
CHANGED
|
@@ -10,11 +10,18 @@ Hoe.plugin :website
|
|
|
10
10
|
|
|
11
11
|
# Generate all the Rake tasks
|
|
12
12
|
# Run 'rake -T' to see list of generated tasks (from gem root directory)
|
|
13
|
-
Hoe.spec 'celerity' do
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
13
|
+
Hoe.spec 'celerity' do |s|
|
|
14
|
+
s.developer "Jari Bakken", "jari.bakken@finn.no"
|
|
15
|
+
s.version = Celerity::VERSION
|
|
16
|
+
s.clean_globs = %w[classes/* pkg/ doc/*]
|
|
17
|
+
|
|
18
|
+
s.author << "Jari Bakken" << "T. Alexander Lystad" << "Knut Johannes Dahle"
|
|
19
|
+
s.email << "jari.bakken@finn.no"
|
|
20
|
+
s.extra_dev_deps << ['sinatra', '>= 0.9.4']
|
|
21
|
+
s.summary = "Celerity is a JRuby library for easy and fast functional test automation for web applications."
|
|
22
|
+
|
|
23
|
+
# hack to avoid the extra file
|
|
24
|
+
@website_config = {'host' => 'jarib@rubyforge.org', 'remote_dir' => "/var/www/gforge-projects/celerity"}
|
|
18
25
|
end
|
|
19
26
|
|
|
20
27
|
Dir['tasks/**/*.rake'].each do |rake|
|
data/celerity.gemspec
CHANGED
|
@@ -2,25 +2,25 @@
|
|
|
2
2
|
|
|
3
3
|
Gem::Specification.new do |s|
|
|
4
4
|
s.name = %q{celerity}
|
|
5
|
-
s.version = "0.0.7"
|
|
5
|
+
s.version = "0.0.7.2"
|
|
6
6
|
|
|
7
7
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
|
8
|
-
s.authors = ["Jari Bakken", "T. Alexander Lystad", "Knut Johannes Dahle"]
|
|
9
|
-
s.date = %q{2009-09-
|
|
8
|
+
s.authors = ["Jari Bakken", "Jari Bakken", "T. Alexander Lystad", "Knut Johannes Dahle"]
|
|
9
|
+
s.date = %q{2009-09-30}
|
|
10
10
|
s.description = %q{Celerity is a JRuby library for easy and fast functional test automation for web applications.
|
|
11
11
|
|
|
12
|
-
|
|
12
|
+
Celerity is a JRuby wrapper around HtmlUnit – a headless Java browser with
|
|
13
13
|
JavaScript support. It provides a simple API for programmatic navigation through
|
|
14
|
-
web applications. Celerity
|
|
15
|
-
s.email = ["jari.bakken@finn.no"]
|
|
14
|
+
web applications. Celerity provides a superset of Watir's API.}
|
|
15
|
+
s.email = ["jari.bakken@finn.no", "jari.bakken@finn.no"]
|
|
16
16
|
s.extra_rdoc_files = ["History.txt", "License.txt", "Manifest.txt"]
|
|
17
|
-
s.files = ["History.txt", "License.txt", "Manifest.txt", "README.rdoc", "Rakefile", "celerity.gemspec", "lib/celerity.rb", "lib/celerity/browser.rb", "lib/celerity/clickable_element.rb", "lib/celerity/collections.rb", "lib/celerity/container.rb", "lib/celerity/default_viewer.rb", "lib/celerity/disabled_element.rb", "lib/celerity/element.rb", "lib/celerity/element_collection.rb", "lib/celerity/element_locator.rb", "lib/celerity/elements/button.rb", "lib/celerity/elements/file_field.rb", "lib/celerity/elements/form.rb", "lib/celerity/elements/frame.rb", "lib/celerity/elements/image.rb", "lib/celerity/elements/label.rb", "lib/celerity/elements/link.rb", "lib/celerity/elements/meta.rb", "lib/celerity/elements/non_control_elements.rb", "lib/celerity/elements/option.rb", "lib/celerity/elements/radio_check.rb", "lib/celerity/elements/select_list.rb", "lib/celerity/elements/table.rb", "lib/celerity/elements/table_cell.rb", "lib/celerity/elements/table_elements.rb", "lib/celerity/elements/table_row.rb", "lib/celerity/elements/text_field.rb", "lib/celerity/exception.rb", "lib/celerity/htmlunit.rb", "lib/celerity/htmlunit/commons-codec-1.4.jar", "lib/celerity/htmlunit/commons-collections-3.2.1.jar", "lib/celerity/htmlunit/commons-httpclient-3.1.jar", "lib/celerity/htmlunit/commons-io-1.4.jar", "lib/celerity/htmlunit/commons-lang-2.4.jar", "lib/celerity/htmlunit/commons-logging-1.1.1.jar", "lib/celerity/htmlunit/cssparser-0.9.5.jar", "lib/celerity/htmlunit/htmlunit-2.
|
|
17
|
+
s.files = ["History.txt", "License.txt", "Manifest.txt", "README.rdoc", "Rakefile", "celerity.gemspec", "lib/celerity.rb", "lib/celerity/browser.rb", "lib/celerity/clickable_element.rb", "lib/celerity/collections.rb", "lib/celerity/container.rb", "lib/celerity/default_viewer.rb", "lib/celerity/disabled_element.rb", "lib/celerity/element.rb", "lib/celerity/element_collection.rb", "lib/celerity/element_locator.rb", "lib/celerity/elements/button.rb", "lib/celerity/elements/file_field.rb", "lib/celerity/elements/form.rb", "lib/celerity/elements/frame.rb", "lib/celerity/elements/image.rb", "lib/celerity/elements/label.rb", "lib/celerity/elements/link.rb", "lib/celerity/elements/meta.rb", "lib/celerity/elements/non_control_elements.rb", "lib/celerity/elements/option.rb", "lib/celerity/elements/radio_check.rb", "lib/celerity/elements/select_list.rb", "lib/celerity/elements/table.rb", "lib/celerity/elements/table_cell.rb", "lib/celerity/elements/table_elements.rb", "lib/celerity/elements/table_row.rb", "lib/celerity/elements/text_field.rb", "lib/celerity/exception.rb", "lib/celerity/htmlunit.rb", "lib/celerity/htmlunit/commons-codec-1.4.jar", "lib/celerity/htmlunit/commons-collections-3.2.1.jar", "lib/celerity/htmlunit/commons-httpclient-3.1.jar", "lib/celerity/htmlunit/commons-io-1.4.jar", "lib/celerity/htmlunit/commons-lang-2.4.jar", "lib/celerity/htmlunit/commons-logging-1.1.1.jar", "lib/celerity/htmlunit/cssparser-0.9.5.jar", "lib/celerity/htmlunit/htmlunit-2.7-SNAPSHOT.jar", "lib/celerity/htmlunit/htmlunit-core-js-2.7-SNAPSHOT.jar", "lib/celerity/htmlunit/nekohtml-1.9.13.jar", "lib/celerity/htmlunit/sac-1.3.jar", "lib/celerity/htmlunit/serializer-2.7.1.jar", "lib/celerity/htmlunit/xalan-2.7.1.jar", "lib/celerity/htmlunit/xercesImpl-2.9.1.jar", "lib/celerity/htmlunit/xml-apis-1.3.04.jar", "lib/celerity/identifier.rb", "lib/celerity/ignoring_web_connection.rb", "lib/celerity/input_element.rb", "lib/celerity/javascript_debugger.rb", "lib/celerity/listener.rb", "lib/celerity/resources/no_viewer.png", "lib/celerity/short_inspect.rb", "lib/celerity/util.rb", "lib/celerity/version.rb", "lib/celerity/viewer_connection.rb", "lib/celerity/watir_compatibility.rb", "lib/celerity/xpath_support.rb", "spec/browser_authentication_spec.rb", "spec/browser_spec.rb", "spec/clickable_element_spec.rb", "spec/default_viewer_spec.rb", "spec/element_spec.rb", "spec/filefield_spec.rb", "spec/htmlunit_spec.rb", "spec/index_offset_spec.rb", "spec/listener_spec.rb", "spec/spec_helper.rb", "tasks/benchmark.rake", "tasks/deployment.rake", "tasks/environment.rake", "tasks/fix.rake", "tasks/jar.rake", "tasks/rdoc.rake", "tasks/rspec.rake", "tasks/snapshot.rake", "tasks/website.rake", "tasks/yard.rake"]
|
|
18
18
|
s.homepage = %q{http://celerity.rubyforge.org/}
|
|
19
19
|
s.rdoc_options = ["--main", "README.rdoc"]
|
|
20
20
|
s.require_paths = ["lib"]
|
|
21
21
|
s.rubyforge_project = %q{celerity}
|
|
22
22
|
s.rubygems_version = %q{1.3.5}
|
|
23
|
-
s.summary = %q{Celerity is a JRuby library for easy and fast functional test automation for web applications}
|
|
23
|
+
s.summary = %q{Celerity is a JRuby library for easy and fast functional test automation for web applications.}
|
|
24
24
|
|
|
25
25
|
if s.respond_to? :specification_version then
|
|
26
26
|
current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
|
data/lib/celerity.rb
CHANGED
|
@@ -67,6 +67,7 @@ require "celerity/util"
|
|
|
67
67
|
require "celerity/default_viewer"
|
|
68
68
|
require "celerity/listener"
|
|
69
69
|
require "celerity/ignoring_web_connection"
|
|
70
|
+
require "celerity/javascript_debugger"
|
|
70
71
|
require "celerity/viewer_connection"
|
|
71
72
|
require "celerity/browser"
|
|
72
73
|
require "celerity/watir_compatibility"
|
data/lib/celerity/browser.rb
CHANGED
|
@@ -32,7 +32,7 @@ module Celerity
|
|
|
32
32
|
#
|
|
33
33
|
# @see Celerity::Container for an introduction to the main API.
|
|
34
34
|
#
|
|
35
|
-
# @option opts :browser [:internet_explorer, :firefox, :firefox3] (:
|
|
35
|
+
# @option opts :browser [:internet_explorer, :firefox, :firefox3] (:firefox3) Set the BrowserVersion used by HtmlUnit. Defaults to Firefox 3.
|
|
36
36
|
# @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.
|
|
37
37
|
# @option opts :css [Boolean] (false) Enable CSS. Disabled by default.
|
|
38
38
|
# @option opts :ignore_pattern [Regexp] See Browser#ignore_pattern=
|
|
@@ -333,19 +333,21 @@ module Celerity
|
|
|
333
333
|
# @param [String] value
|
|
334
334
|
#
|
|
335
335
|
# @option opts :path [String] ("/") A path
|
|
336
|
-
# @option opts :
|
|
336
|
+
# @option opts :expires [Time] (1 day from now) An expiration date
|
|
337
337
|
# @option opts :secure [Boolean] (false)
|
|
338
338
|
#
|
|
339
339
|
|
|
340
340
|
def add_cookie(domain, name, value, opts = {})
|
|
341
341
|
path = opts.delete(:path) || "/"
|
|
342
|
-
|
|
342
|
+
expires = opts.delete(:expires) || (Time.now + 60*60*24) # not sure if this is correct
|
|
343
343
|
secure = opts.delete(:secure) || false
|
|
344
344
|
|
|
345
345
|
raise(ArgumentError, "unknown option: #{opts.inspect}") unless opts.empty?
|
|
346
346
|
|
|
347
|
-
cookie = Cookie.new(
|
|
348
|
-
@webclient.getCookieManager.addCookie
|
|
347
|
+
cookie = HtmlUnit::Util::Cookie.new(name, value, domain, path, expires, secure)
|
|
348
|
+
@webclient.getCookieManager.addCookie cookie
|
|
349
|
+
|
|
350
|
+
cookie
|
|
349
351
|
end
|
|
350
352
|
|
|
351
353
|
#
|
|
@@ -489,6 +491,12 @@ module Celerity
|
|
|
489
491
|
res
|
|
490
492
|
end
|
|
491
493
|
|
|
494
|
+
def trace_javascript(debugger_klass = Celerity::JavascriptDebugger, &blk)
|
|
495
|
+
@webclient.getJavaScriptEngine.getContextFactory.setDebugger debugger_klass.new
|
|
496
|
+
yield
|
|
497
|
+
@webclient.getJavaScriptEngine.getContextFactory.setDebugger nil
|
|
498
|
+
end
|
|
499
|
+
|
|
492
500
|
#
|
|
493
501
|
# Add a listener block for one of the available types. (Celerity only)
|
|
494
502
|
# Types map to HtmlUnit interfaces like this:
|
|
@@ -799,7 +807,7 @@ module Celerity
|
|
|
799
807
|
#
|
|
800
808
|
|
|
801
809
|
def setup_webclient(opts)
|
|
802
|
-
browser = (opts.delete(:browser) || :
|
|
810
|
+
browser = (opts.delete(:browser) || :firefox3).to_sym
|
|
803
811
|
|
|
804
812
|
browser_version = case browser
|
|
805
813
|
when :firefox, :ff, :ff2
|
|
@@ -827,7 +835,7 @@ module Celerity
|
|
|
827
835
|
self.status_code_exceptions = false unless opts.delete(:status_code_exceptions)
|
|
828
836
|
self.css = false unless opts.delete(:css)
|
|
829
837
|
self.javascript_enabled = opts.delete(:javascript_enabled) != false
|
|
830
|
-
self.secure_ssl = opts.delete(:secure_ssl)
|
|
838
|
+
self.secure_ssl = opts.delete(:secure_ssl) != false
|
|
831
839
|
self.ignore_pattern = opts.delete(:ignore_pattern) if opts[:ignore_pattern]
|
|
832
840
|
self.refresh_handler = opts.delete(:refresh_handler) if opts[:refresh_handler]
|
|
833
841
|
|
|
@@ -118,6 +118,14 @@ module Celerity
|
|
|
118
118
|
'select-' + (@object.hasAttribute('multiple') ? 'multiple' : 'one')
|
|
119
119
|
end
|
|
120
120
|
|
|
121
|
+
#
|
|
122
|
+
# Returns true if the select list supports multiple selections
|
|
123
|
+
#
|
|
124
|
+
|
|
125
|
+
def multiple?
|
|
126
|
+
type == "select-multiple"
|
|
127
|
+
end
|
|
128
|
+
|
|
121
129
|
#
|
|
122
130
|
# Returns the value of the first selected option in the select list.
|
|
123
131
|
# Returns nil if no option is selected.
|
data/lib/celerity/htmlunit.rb
CHANGED
|
@@ -2,8 +2,6 @@ module Celerity
|
|
|
2
2
|
Jars = Dir[File.dirname(__FILE__) + '/htmlunit/*.jar']
|
|
3
3
|
Jars.each { |jar| require(jar) }
|
|
4
4
|
|
|
5
|
-
include_class org.apache.commons.httpclient.Cookie
|
|
6
|
-
|
|
7
5
|
module JsxHelper
|
|
8
6
|
def method_missing(meth, *args, &blk)
|
|
9
7
|
m = ["jsxGet_#{meth}", "jsx_get_#{meth}"].find { |m| respond_to?(m) }
|
|
@@ -22,6 +20,7 @@ module HtmlUnit
|
|
|
22
20
|
module Util
|
|
23
21
|
include_package 'com.gargoylesoftware.htmlunit.util'
|
|
24
22
|
end
|
|
23
|
+
|
|
25
24
|
end
|
|
26
25
|
|
|
27
26
|
module Java::OrgW3cDom::NamedNodeMap
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
module Celerity
|
|
2
|
+
class JavascriptDebugger
|
|
3
|
+
include Java::net.sourceforge.htmlunit.corejs.javascript.debug.Debugger
|
|
4
|
+
|
|
5
|
+
def handleCompilationDone(ctx, script, source)
|
|
6
|
+
p debug_info_for(script).merge(:source_code => source)
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
def getFrame(ctx, script)
|
|
10
|
+
p debug_info_for(script)
|
|
11
|
+
end
|
|
12
|
+
|
|
13
|
+
private
|
|
14
|
+
|
|
15
|
+
def string_for_context(ctx)
|
|
16
|
+
ctx.toString
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
def string_for_script(script)
|
|
20
|
+
script.toString
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
def debug_info_for(script)
|
|
24
|
+
{
|
|
25
|
+
:source => "#{script.getSourceName}:#{script.getLineNumbers.to_a.join(",")}",
|
|
26
|
+
:function_name => script.getFunctionName,
|
|
27
|
+
:params => (0...script.getParamAndVarCount).map { |idx| script.getParamOrVarName(idx) },
|
|
28
|
+
:function? => script.isFunction,
|
|
29
|
+
}
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
data/lib/celerity/version.rb
CHANGED
data/spec/browser_spec.rb
CHANGED
|
@@ -149,7 +149,7 @@ describe "Browser" do
|
|
|
149
149
|
end
|
|
150
150
|
|
|
151
151
|
it "adds a cookie with the specified options" do
|
|
152
|
-
browser.add_cookie("example.com", "foo", "bar", :path => "/foobar", :
|
|
152
|
+
browser.add_cookie("example.com", "foo", "bar", :path => "/foobar", :expires => Time.now + 100000)
|
|
153
153
|
cookies = browser.cookies
|
|
154
154
|
cookies.should be_instance_of(Hash)
|
|
155
155
|
cookies['example.com']['foo'].should == 'bar'
|
data/tasks/snapshot.rake
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
desc 'Download and unpack the latest HtmlUnit assembly'
|
|
2
2
|
task :snapshot do
|
|
3
|
-
files = %w[ http://build.canoo.com/htmlunit/artifacts/htmlunit-2.
|
|
3
|
+
files = %w[ http://build.canoo.com/htmlunit/artifacts/htmlunit-2.7-SNAPSHOT-with-dependencies.zip ]
|
|
4
4
|
|
|
5
5
|
files.each do |url|
|
|
6
6
|
basename = File.basename(url)
|
metadata
CHANGED
|
@@ -1,17 +1,18 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: celerity
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.0.7
|
|
4
|
+
version: 0.0.7.2
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Jari Bakken
|
|
8
|
+
- Jari Bakken
|
|
8
9
|
- T. Alexander Lystad
|
|
9
10
|
- Knut Johannes Dahle
|
|
10
11
|
autorequire:
|
|
11
12
|
bindir: bin
|
|
12
13
|
cert_chain: []
|
|
13
14
|
|
|
14
|
-
date: 2009-
|
|
15
|
+
date: 2009-10-07 00:00:00 +02:00
|
|
15
16
|
default_executable:
|
|
16
17
|
dependencies:
|
|
17
18
|
- !ruby/object:Gem::Dependency
|
|
@@ -34,12 +35,10 @@ dependencies:
|
|
|
34
35
|
- !ruby/object:Gem::Version
|
|
35
36
|
version: 2.3.3
|
|
36
37
|
version:
|
|
37
|
-
description: "
|
|
38
|
-
It is a JRuby wrapper around HtmlUnit \xE2\x80\x93 a headless Java browser with \n\
|
|
39
|
-
JavaScript support. It provides a simple API for programmatic navigation through\n\
|
|
40
|
-
web applications. Celerity aims at being API compatible with Watir."
|
|
38
|
+
description: ""
|
|
41
39
|
email:
|
|
42
40
|
- jari.bakken@finn.no
|
|
41
|
+
- jari.bakken@finn.no
|
|
43
42
|
executables: []
|
|
44
43
|
|
|
45
44
|
extensions: []
|
|
@@ -91,8 +90,8 @@ files:
|
|
|
91
90
|
- lib/celerity/htmlunit/commons-lang-2.4.jar
|
|
92
91
|
- lib/celerity/htmlunit/commons-logging-1.1.1.jar
|
|
93
92
|
- lib/celerity/htmlunit/cssparser-0.9.5.jar
|
|
94
|
-
- lib/celerity/htmlunit/htmlunit-2.
|
|
95
|
-
- lib/celerity/htmlunit/htmlunit-core-js-2.
|
|
93
|
+
- lib/celerity/htmlunit/htmlunit-2.7-SNAPSHOT.jar
|
|
94
|
+
- lib/celerity/htmlunit/htmlunit-core-js-2.7-SNAPSHOT.jar
|
|
96
95
|
- lib/celerity/htmlunit/nekohtml-1.9.13.jar
|
|
97
96
|
- lib/celerity/htmlunit/sac-1.3.jar
|
|
98
97
|
- lib/celerity/htmlunit/serializer-2.7.1.jar
|
|
@@ -102,6 +101,7 @@ files:
|
|
|
102
101
|
- lib/celerity/identifier.rb
|
|
103
102
|
- lib/celerity/ignoring_web_connection.rb
|
|
104
103
|
- lib/celerity/input_element.rb
|
|
104
|
+
- lib/celerity/javascript_debugger.rb
|
|
105
105
|
- lib/celerity/listener.rb
|
|
106
106
|
- lib/celerity/resources/no_viewer.png
|
|
107
107
|
- lib/celerity/short_inspect.rb
|
|
@@ -127,18 +127,17 @@ files:
|
|
|
127
127
|
- tasks/jar.rake
|
|
128
128
|
- tasks/rdoc.rake
|
|
129
129
|
- tasks/rspec.rake
|
|
130
|
-
- tasks/simple_ci.rake
|
|
131
130
|
- tasks/snapshot.rake
|
|
132
131
|
- tasks/website.rake
|
|
133
132
|
- tasks/yard.rake
|
|
134
133
|
has_rdoc: true
|
|
135
|
-
homepage:
|
|
134
|
+
homepage:
|
|
136
135
|
licenses: []
|
|
137
136
|
|
|
138
137
|
post_install_message:
|
|
139
138
|
rdoc_options:
|
|
140
139
|
- --main
|
|
141
|
-
- README.
|
|
140
|
+
- README.txt
|
|
142
141
|
require_paths:
|
|
143
142
|
- lib
|
|
144
143
|
required_ruby_version: !ruby/object:Gem::Requirement
|
|
@@ -159,6 +158,6 @@ rubyforge_project: celerity
|
|
|
159
158
|
rubygems_version: 1.3.5
|
|
160
159
|
signing_key:
|
|
161
160
|
specification_version: 3
|
|
162
|
-
summary: Celerity is a JRuby library for easy and fast functional test automation for web applications
|
|
161
|
+
summary: Celerity is a JRuby library for easy and fast functional test automation for web applications.
|
|
163
162
|
test_files: []
|
|
164
163
|
|
|
Binary file
|
data/tasks/simple_ci.rake
DELETED
|
@@ -1,94 +0,0 @@
|
|
|
1
|
-
require "rubygems"
|
|
2
|
-
require "fileutils"
|
|
3
|
-
require "erb"
|
|
4
|
-
require "pp"
|
|
5
|
-
|
|
6
|
-
begin
|
|
7
|
-
require "mongrel"
|
|
8
|
-
rescue LoadError
|
|
9
|
-
end
|
|
10
|
-
|
|
11
|
-
task :simple_ci do
|
|
12
|
-
INTERVAL = (60*5)
|
|
13
|
-
CI_ROOT = File.dirname(__FILE__) + "/../simple_ci"
|
|
14
|
-
ROOT = File.expand_path(CI_ROOT + "/..")
|
|
15
|
-
Dir.mkdir(CI_ROOT) unless File.exist?(CI_ROOT)
|
|
16
|
-
|
|
17
|
-
class SpecFile < Struct.new(:file, :describes)
|
|
18
|
-
attr_accessor :passed
|
|
19
|
-
end
|
|
20
|
-
|
|
21
|
-
def get_specs
|
|
22
|
-
Dir[File.dirname(__FILE__) + '/../spec/**/*_spec.rb'].map do |file|
|
|
23
|
-
SpecFile.new(file, File.read(file)[/describe\(?\s*["'](.+?)["']/, 1] || File.basename(file) )
|
|
24
|
-
end
|
|
25
|
-
end
|
|
26
|
-
|
|
27
|
-
class SimpleCI < Mongrel::HttpHandler
|
|
28
|
-
def self.template=(rhtml); @@template = rhtml; end
|
|
29
|
-
|
|
30
|
-
def initialize(results)
|
|
31
|
-
@results = results
|
|
32
|
-
super()
|
|
33
|
-
end
|
|
34
|
-
|
|
35
|
-
def process(request, response)
|
|
36
|
-
response.start(200) do |header, io|
|
|
37
|
-
if @results
|
|
38
|
-
io.write ERB.new(@@template).result
|
|
39
|
-
end
|
|
40
|
-
end
|
|
41
|
-
end
|
|
42
|
-
|
|
43
|
-
end
|
|
44
|
-
|
|
45
|
-
@results = {}
|
|
46
|
-
SimpleCI.template = <<-HTML
|
|
47
|
-
<html>
|
|
48
|
-
<head>
|
|
49
|
-
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
|
|
50
|
-
<title>Celerity Simple CI</title>
|
|
51
|
-
<style type="text/css" media="screen">
|
|
52
|
-
body {font: 10px/16px "Lucida Grande", Geneva, Arial, Verdana, sans-serif; background-color: #fff;color: #333;}
|
|
53
|
-
a{color:#2971a7;}
|
|
54
|
-
a:link,a:visited,a:active{text-decoration:none}
|
|
55
|
-
a:hover{text-decoration:underline}
|
|
56
|
-
table{border-collapse:collapse;border-spacing:0;margin-left:24px;}
|
|
57
|
-
</style>
|
|
58
|
-
</head>
|
|
59
|
-
|
|
60
|
-
<h1> Celerity </h1>
|
|
61
|
-
<h3><a href="result/">Test Results</a></h3>
|
|
62
|
-
<h3><a href="coverage/">Code Coverage</a></h3>
|
|
63
|
-
</html>
|
|
64
|
-
HTML
|
|
65
|
-
|
|
66
|
-
begin
|
|
67
|
-
@server = Mongrel::HttpServer.new('0.0.0.0', '8080')
|
|
68
|
-
rescue NameError
|
|
69
|
-
abort("Run `(jruby -S) gem install mongrel` to use this task.")
|
|
70
|
-
end
|
|
71
|
-
@server.register("/result", Mongrel::DirHandler.new(CI_ROOT))
|
|
72
|
-
@server.register("/coverage", Mongrel::DirHandler.new(CI_ROOT + "/coverage/coverage"))
|
|
73
|
-
@server.register("/", SimpleCI.new(@results))
|
|
74
|
-
Thread.new { @server.run.join }
|
|
75
|
-
puts "simple_ci started on #{@server.host}:#{@server.port}"
|
|
76
|
-
loop do
|
|
77
|
-
puts %x{svn up}
|
|
78
|
-
puts "*** running specs at #{Time.now}"
|
|
79
|
-
specs = get_specs
|
|
80
|
-
|
|
81
|
-
pp specs if $DEBUG
|
|
82
|
-
puts "*** running rcov at #{Time.now}"
|
|
83
|
-
puts %x{jruby -S rake --trace --silent spec > #{CI_ROOT}/index2.html}
|
|
84
|
-
FileUtils.mv(CI_ROOT + "/index2.html", CI_ROOT + "/index.html", :verbose => true)
|
|
85
|
-
Dir[CI_ROOT + "/coverage/*"].each { |f| FileUtils.rm_r(f, :verbose => true) }
|
|
86
|
-
FileUtils.mv(CI_ROOT + "/../coverage", CI_ROOT + "/coverage", :verbose => true)
|
|
87
|
-
puts "\n*** sleeping #{Time.now}"
|
|
88
|
-
sleep(INTERVAL)
|
|
89
|
-
end
|
|
90
|
-
|
|
91
|
-
end
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|