celerity 0.9.0 → 0.9.1
Sign up to get free protection for your applications and to get access to all the features.
- data/.document +5 -0
- data/.gitignore +9 -0
- data/.gitmodules +3 -0
- data/.travis.yml +4 -0
- data/Gemfile +3 -0
- data/LICENSE +253 -596
- data/README.rdoc +8 -4
- data/Rakefile +5 -1
- data/benchmark/bm_2000_spans.rb +48 -0
- data/benchmark/bm_digg.rb +26 -0
- data/benchmark/bm_google_images.rb +36 -0
- data/benchmark/bm_input_locator.rb +69 -0
- data/benchmark/bm_text_input.rb +19 -0
- data/benchmark/loader.rb +14 -0
- data/celerity.gemspec +18 -114
- data/lib/celerity.rb +1 -3
- data/lib/celerity/htmlunit/commons-lang3-3.0.1.jar +0 -0
- data/lib/celerity/htmlunit/cssparser-0.9.6-20110829.205617-3.jar +0 -0
- data/lib/celerity/htmlunit/{htmlunit-2.9.jar → htmlunit-2.10-SNAPSHOT.jar} +0 -0
- data/lib/celerity/version.rb +1 -1
- data/spec/browser_authentication_spec.rb +16 -0
- data/spec/browser_spec.rb +428 -0
- data/spec/button_spec.rb +24 -0
- data/spec/clickable_element_spec.rb +39 -0
- data/spec/default_viewer_spec.rb +23 -0
- data/spec/element_spec.rb +77 -0
- data/spec/filefield_spec.rb +18 -0
- data/spec/htmlunit_spec.rb +63 -0
- data/spec/implementation.rb +7 -0
- data/spec/index_offset_spec.rb +24 -0
- data/spec/link_spec.rb +16 -0
- data/spec/listener_spec.rb +142 -0
- data/spec/spec_helper.rb +6 -0
- data/spec/table_spec.rb +41 -0
- data/spec/watir_compatibility_spec.rb +32 -0
- data/tasks/snapshot.rake +1 -1
- data/website/benchmarks.html +237 -0
- data/website/css/color.css +153 -0
- data/website/css/hacks.css +3 -0
- data/website/css/layout.css +179 -0
- data/website/css/screen.css +5 -0
- data/website/css/textmate.css +226 -0
- data/website/css/typography.css +72 -0
- data/website/gfx/body_bg.gif +0 -0
- data/website/gfx/button_bg.jpg +0 -0
- data/website/gfx/header_bg.jpg +0 -0
- data/website/gfx/header_left.jpg +0 -0
- data/website/gfx/header_right.jpg +0 -0
- data/website/gfx/nav_bg.jpg +0 -0
- data/website/index.html +125 -0
- data/website/yard/index.html +1 -0
- metadata +69 -22
- data/VERSION.yml +0 -5
- data/lib/celerity/htmlunit/commons-lang-2.6.jar +0 -0
- data/lib/celerity/htmlunit/cssparser-0.9.5.jar +0 -0
- data/tasks/jeweler.rake +0 -28
@@ -0,0 +1,226 @@
|
|
1
|
+
/* Stylesheet generated from TextMate theme
|
2
|
+
*
|
3
|
+
* Mac Classic
|
4
|
+
*
|
5
|
+
*
|
6
|
+
*/
|
7
|
+
|
8
|
+
/* Mostly to improve view within the TextMate HTML viewer */
|
9
|
+
body {
|
10
|
+
margin: 0;
|
11
|
+
padding: 0;
|
12
|
+
}
|
13
|
+
|
14
|
+
pre.textmate-source {
|
15
|
+
margin: 0;
|
16
|
+
padding: 0 0 0 2px;
|
17
|
+
font-family: "DejaVu Sans Mono", monospace;
|
18
|
+
font-size: 14px;
|
19
|
+
line-height: 1.3em;
|
20
|
+
word-wrap: break-word;
|
21
|
+
white-space: pre;
|
22
|
+
white-space: pre-wrap;
|
23
|
+
white-space: -moz-pre-wrap;
|
24
|
+
white-space: -o-pre-wrap;
|
25
|
+
}
|
26
|
+
|
27
|
+
pre.textmate-source.mac_classic {
|
28
|
+
color: #000000;
|
29
|
+
background: rgb(249,249,247)
|
30
|
+
}
|
31
|
+
|
32
|
+
pre.textmate-source .linenum {
|
33
|
+
width: 75px;
|
34
|
+
padding: 0.1em 1em 0.2em 0;
|
35
|
+
color: #888;
|
36
|
+
background-color: #eee;
|
37
|
+
}
|
38
|
+
pre.textmate-source.mac_classic span {
|
39
|
+
padding-top: 0.2em;
|
40
|
+
padding-bottom: 0.1em;
|
41
|
+
}
|
42
|
+
pre.textmate-source.mac_classic ::selection {
|
43
|
+
background-color: rgba(77, 151, 255, 0.33);
|
44
|
+
}
|
45
|
+
/* Comment */
|
46
|
+
pre.textmate-source.mac_classic .comment {
|
47
|
+
color: #0066FF;
|
48
|
+
font-style: italic;
|
49
|
+
}
|
50
|
+
|
51
|
+
/* Keyword */
|
52
|
+
pre.textmate-source.mac_classic .keyword, pre.textmate-source.mac_classic .storage {
|
53
|
+
color: #0000FF;
|
54
|
+
font-weight: bold;
|
55
|
+
}
|
56
|
+
|
57
|
+
/* Number */
|
58
|
+
pre.textmate-source.mac_classic .constant_numeric {
|
59
|
+
color: #0000CD;
|
60
|
+
}
|
61
|
+
|
62
|
+
/* User-defined constant */
|
63
|
+
pre.textmate-source.mac_classic .constant {
|
64
|
+
color: #C5060B;
|
65
|
+
font-weight: bold;
|
66
|
+
}
|
67
|
+
|
68
|
+
/* Built-in constant */
|
69
|
+
pre.textmate-source.mac_classic .constant_language {
|
70
|
+
color: #585CF6;
|
71
|
+
font-weight: bold;
|
72
|
+
}
|
73
|
+
|
74
|
+
/* Variable */
|
75
|
+
pre.textmate-source.mac_classic .variable_language, pre.textmate-source.mac_classic .variable_other {
|
76
|
+
color: #318495;
|
77
|
+
}
|
78
|
+
|
79
|
+
/* String */
|
80
|
+
pre.textmate-source.mac_classic .string {
|
81
|
+
color: #036A07;
|
82
|
+
}
|
83
|
+
|
84
|
+
/* String interpolation */
|
85
|
+
pre.textmate-source.mac_classic .constant_character_escape, pre.textmate-source.mac_classic .string .source {
|
86
|
+
color: #26B31A;
|
87
|
+
}
|
88
|
+
|
89
|
+
/* Preprocessor line */
|
90
|
+
pre.textmate-source.mac_classic .meta_preprocessor {
|
91
|
+
color: #1A921C;
|
92
|
+
}
|
93
|
+
|
94
|
+
/* Preprocessor directive */
|
95
|
+
pre.textmate-source.mac_classic .keyword_control_import {
|
96
|
+
color: #0C450D;
|
97
|
+
font-weight: bold;
|
98
|
+
}
|
99
|
+
|
100
|
+
/* Function name */
|
101
|
+
pre.textmate-source.mac_classic .entity_name_function, pre.textmate-source.mac_classic .support_function_any-method {
|
102
|
+
color: #0000A2;
|
103
|
+
font-weight: bold;
|
104
|
+
}
|
105
|
+
|
106
|
+
/* Type name */
|
107
|
+
pre.textmate-source.mac_classic .entity_name_type {
|
108
|
+
text-decoration: underline;
|
109
|
+
}
|
110
|
+
|
111
|
+
/* Inherited class name */
|
112
|
+
pre.textmate-source.mac_classic .entity_other_inherited-class {
|
113
|
+
font-style: italic;
|
114
|
+
}
|
115
|
+
|
116
|
+
/* Function parameter */
|
117
|
+
pre.textmate-source.mac_classic .variable_parameter {
|
118
|
+
font-style: italic;
|
119
|
+
}
|
120
|
+
|
121
|
+
/* Function argument and result types */
|
122
|
+
pre.textmate-source.mac_classic .storage_type_method {
|
123
|
+
color: #70727E;
|
124
|
+
}
|
125
|
+
|
126
|
+
/* Section */
|
127
|
+
pre.textmate-source.mac_classic .meta_section .entity_name_section, pre.textmate-source.mac_classic .declaration_section .entity_name_section {
|
128
|
+
font-style: italic;
|
129
|
+
}
|
130
|
+
|
131
|
+
/* Library function */
|
132
|
+
pre.textmate-source.mac_classic .support_function {
|
133
|
+
color: #3C4C72;
|
134
|
+
font-weight: bold;
|
135
|
+
}
|
136
|
+
|
137
|
+
/* Library object */
|
138
|
+
pre.textmate-source.mac_classic .support_class, pre.textmate-source.mac_classic .support_type {
|
139
|
+
color: #6D79DE;
|
140
|
+
font-weight: bold;
|
141
|
+
}
|
142
|
+
|
143
|
+
/* Library constant */
|
144
|
+
pre.textmate-source.mac_classic .support_constant {
|
145
|
+
color: #06960E;
|
146
|
+
font-weight: bold;
|
147
|
+
}
|
148
|
+
|
149
|
+
/* Library variable */
|
150
|
+
pre.textmate-source.mac_classic .support_variable {
|
151
|
+
color: #21439C;
|
152
|
+
font-weight: bold;
|
153
|
+
}
|
154
|
+
|
155
|
+
/* JS: Operator */
|
156
|
+
pre.textmate-source.mac_classic .keyword_operator_js {
|
157
|
+
color: #687687;
|
158
|
+
}
|
159
|
+
|
160
|
+
/* Invalid */
|
161
|
+
pre.textmate-source.mac_classic .invalid {
|
162
|
+
color: #FFFFFF;
|
163
|
+
background-color: #990000;
|
164
|
+
}
|
165
|
+
|
166
|
+
/* Invalid trailing whitespace */
|
167
|
+
pre.textmate-source.mac_classic .invalid_deprecated_trailing-whitespace {
|
168
|
+
background-color: #FFD0D0;
|
169
|
+
}
|
170
|
+
|
171
|
+
/* Embedded source */
|
172
|
+
pre.textmate-source.mac_classic .text .source, pre.textmate-source.mac_classic .string_unquoted {
|
173
|
+
background-color: rgba(0, 0, 0, 0.05);
|
174
|
+
}
|
175
|
+
|
176
|
+
/* Embedded embedded source */
|
177
|
+
pre.textmate-source.mac_classic .text .source .string_unquoted, pre.textmate-source.mac_classic .text .source .text .source {
|
178
|
+
background-color: rgba(0, 0, 0, 0.06);
|
179
|
+
}
|
180
|
+
|
181
|
+
/* Markup XML declaration */
|
182
|
+
pre.textmate-source.mac_classic .meta_tag_preprocessor_xml {
|
183
|
+
color: #68685B;
|
184
|
+
}
|
185
|
+
|
186
|
+
/* Markup DOCTYPE */
|
187
|
+
pre.textmate-source.mac_classic .meta_tag_sgml_doctype, pre.textmate-source.mac_classic .meta_tag_sgml_doctype .entity, pre.textmate-source.mac_classic .meta_tag_sgml_doctype .string, pre.textmate-source.mac_classic .meta_tag_preprocessor_xml, pre.textmate-source.mac_classic .meta_tag_preprocessor_xml .entity, pre.textmate-source.mac_classic .meta_tag_preprocessor_xml .string {
|
188
|
+
color: #888888;
|
189
|
+
}
|
190
|
+
|
191
|
+
/* Markup DTD */
|
192
|
+
pre.textmate-source.mac_classic .string_quoted_docinfo_doctype_DTD {
|
193
|
+
font-style: italic;
|
194
|
+
}
|
195
|
+
|
196
|
+
/* Markup tag */
|
197
|
+
pre.textmate-source.mac_classic .meta_tag, pre.textmate-source.mac_classic .declaration_tag {
|
198
|
+
color: #1C02FF;
|
199
|
+
}
|
200
|
+
|
201
|
+
/* Markup name of tag */
|
202
|
+
pre.textmate-source.mac_classic .entity_name_tag {
|
203
|
+
font-weight: bold;
|
204
|
+
}
|
205
|
+
|
206
|
+
/* Markup tag attribute */
|
207
|
+
pre.textmate-source.mac_classic .entity_other_attribute-name {
|
208
|
+
font-style: italic;
|
209
|
+
}
|
210
|
+
|
211
|
+
/* Markup: Heading */
|
212
|
+
pre.textmate-source.mac_classic .markup_heading {
|
213
|
+
color: #0C07FF;
|
214
|
+
font-weight: bold;
|
215
|
+
}
|
216
|
+
|
217
|
+
/* Markup: Quote */
|
218
|
+
pre.textmate-source.mac_classic .markup_quote {
|
219
|
+
color: #000000;
|
220
|
+
font-style: italic;
|
221
|
+
}
|
222
|
+
|
223
|
+
/* Markup: List */
|
224
|
+
pre.textmate-source.mac_classic .markup_list {
|
225
|
+
color: #B90690;
|
226
|
+
}
|
@@ -0,0 +1,72 @@
|
|
1
|
+
body {
|
2
|
+
font-family: "verdana";
|
3
|
+
}
|
4
|
+
|
5
|
+
p {
|
6
|
+
margin-bottom: 1.5em;
|
7
|
+
line-height: 1.4em;
|
8
|
+
}
|
9
|
+
|
10
|
+
q {
|
11
|
+
font-style: italic;
|
12
|
+
}
|
13
|
+
|
14
|
+
#content ul, #content table, #content fieldset {
|
15
|
+
margin-bottom: 1.5em;
|
16
|
+
}
|
17
|
+
|
18
|
+
#content ul ul {
|
19
|
+
margin-bottom: 0;
|
20
|
+
}
|
21
|
+
|
22
|
+
ul {
|
23
|
+
line-height: 1.4em;
|
24
|
+
}
|
25
|
+
|
26
|
+
/* ---( headers )-------------------------- */
|
27
|
+
|
28
|
+
h1 {
|
29
|
+
font-size: 1.8em;
|
30
|
+
}
|
31
|
+
|
32
|
+
h2 {
|
33
|
+
font-size: 1.4em;
|
34
|
+
}
|
35
|
+
|
36
|
+
h3 {
|
37
|
+
font-size: 1.1em;
|
38
|
+
}
|
39
|
+
|
40
|
+
h4 {
|
41
|
+
font-size: 0.92em;
|
42
|
+
}
|
43
|
+
|
44
|
+
h5 {
|
45
|
+
font-size: 0.82em;
|
46
|
+
}
|
47
|
+
|
48
|
+
#header {
|
49
|
+
font-family: "trebuchet ms", serif;
|
50
|
+
}
|
51
|
+
|
52
|
+
#header h1 {
|
53
|
+
font-size: 2em;
|
54
|
+
}
|
55
|
+
|
56
|
+
#header #tagline {
|
57
|
+
font-size: 0.7em;
|
58
|
+
}
|
59
|
+
|
60
|
+
#nav {
|
61
|
+
font-size: 0.9em;
|
62
|
+
font-weight: bold;
|
63
|
+
}
|
64
|
+
|
65
|
+
#footer {
|
66
|
+
font-size: 0.75em;
|
67
|
+
}
|
68
|
+
|
69
|
+
#footer .w3cbutton {
|
70
|
+
font-weight: bold;
|
71
|
+
white-space: nowrap;
|
72
|
+
}
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
data/website/index.html
ADDED
@@ -0,0 +1,125 @@
|
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
2
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" dir="ltr">
|
3
|
+
<head>
|
4
|
+
<title>Celerity | Easy and fast functional test automation for web applications</title>
|
5
|
+
<meta http-equiv="content-type" content="application/xhtml+xml; charset=utf-8" />
|
6
|
+
<link rel="stylesheet" type="text/css" media="screen" href="css/screen.css" />
|
7
|
+
</head>
|
8
|
+
<body>
|
9
|
+
<div id="container">
|
10
|
+
<div id="header">
|
11
|
+
<h1><a href=".">Celerity</a></h1>
|
12
|
+
<div id="tagline">
|
13
|
+
{ French célérité > Latin celeritas > Latin celer, fast, swift. <br />
|
14
|
+
Rapidity of motion; quickness; swiftness. }
|
15
|
+
</div>
|
16
|
+
<div id="leftSlice"></div>
|
17
|
+
<div id="rightSlice"></div>
|
18
|
+
</div>
|
19
|
+
<div id="nav">
|
20
|
+
<ul>
|
21
|
+
<li><a accesskey="h" title="Front page" href="." hreflang="en">Home</a></li>
|
22
|
+
<li><a accesskey="p" title="Celerity at Rubyforge" href="http://rubyforge.org/projects/celerity/" hreflang="en">Rubyforge project</a></li>
|
23
|
+
<li><a accesskey="d" title="Download Celerity" href="http://rubygems.org/gems/celerity" hreflang="en">Download</a></li>
|
24
|
+
<li><a accesskey="o" title="Documentation" href="http://rubydoc.info/gems/celerity/" hreflang="en">Documentation</a></li>
|
25
|
+
<li><a accesskey="f" title="Discuss Celerity" href="http://rubyforge.org/forum/?group_id=6198" hreflang="en">Forum</a></li>
|
26
|
+
<li><a accesskey="m" title="Stay up-to-date" href="http://rubyforge.org/mail/?group_id=6198" hreflang="en">Mailing lists</a></li>
|
27
|
+
<li><a accesskey="s" title="Browse the source code" href="http://github.com/jarib/celerity/tree/master" hreflang="en">Browse source</a></li>
|
28
|
+
<li><a accesskey="b" title="Report and browse bugs" href="http://github.com/jarib/celerity/issues" hreflang="en">Bug tracker</a></li>
|
29
|
+
<li><a accesskey="n" title="Benchmarks" href="benchmarks.html" hreflang="en">Benchmarks</a></li>
|
30
|
+
<li><a accesskey="w" title="Wiki/FAQ" href="http://wiki.github.com/jarib/celerity" hreflang="en">Wiki/FAQ</a></li>
|
31
|
+
<li><a accesskey="t" title="Tutorial" href="http://wiki.github.com/jarib/celerity/getting-started" hreflang="en">Tutorial</a></li>
|
32
|
+
</ul>
|
33
|
+
</div>
|
34
|
+
<div id="content">
|
35
|
+
<a href="http://rubygems.org/gems/celerity" id="download" title="Download Celerity from RubyGems.org">Download →</a>
|
36
|
+
|
37
|
+
<h2>What is Celerity?</h2>
|
38
|
+
<p>Celerity is a <a href="http://jruby.org/">JRuby</a> wrapper around <a href="http://htmlunit.sourceforge.net/">HtmlUnit</a> – a headless Java browser with JavaScript support. It provides a simple API for programmatic navigation through web applications. Celerity aims at being <acronym title="Application Programming Interface">API</acronym> compatible with <a href="http://wtr.rubyforge.org/">Watir</a>.</p>
|
39
|
+
|
40
|
+
<h2>Features</h2>
|
41
|
+
<ul>
|
42
|
+
<li><a accesskey="n" title="Benchmarks" href="benchmarks.html" hreflang="en">Fast</a> - No time-consuming <acronym title="Graphical User Interface">GUI</acronym> rendering or unessential downloads</li>
|
43
|
+
<li>Easy to use - Simple API</li>
|
44
|
+
<li><a href="http://htmlunit.sourceforge.net/javascript.html" title="HtmlUnit's JavaScript engine">JavaScript support</a></li>
|
45
|
+
<li>Scalable - Java threads lets you run tests in parallel</li>
|
46
|
+
<li>Portable - Cross-platform thanks to the JVM</li>
|
47
|
+
<li>Unintrusive - No browser window interrupting your workflow (runs in background)</li>
|
48
|
+
</ul>
|
49
|
+
|
50
|
+
<h2>Requirements</h2>
|
51
|
+
<ul>
|
52
|
+
<li><a href="http://jruby.org">JRuby</a> (<a href="http://jruby.org/download">download</a>) (<a href="http://jruby.org/getting-started">installation</a>)</li>
|
53
|
+
<li><a href="http://java.sun.com/javase/" title="Java SE Development Kit (JDK) 6">Java 6</a> (<a href="http://java.sun.com/javase/downloads/index.jsp">download</a>)</li>
|
54
|
+
</ul>
|
55
|
+
|
56
|
+
<h2>Background</h2>
|
57
|
+
<p><a href="http://www.finn.no/">FINN.no</a> is a top provider of online classifieds in Europe. Consequently automated functional testing is an essential part of our quality assurance effort. As of spring 2008 our Watir test suite, consisting of 340 test cases (which only covers part of our application), completes in 3 hours. Obviously, not optimal for an agile development environment.</p>
|
58
|
+
<p>We need a faster alternative. At the same time, we enjoy working with Ruby and Watir's API. By providing this API on top of HtmlUnit, we hope to significantly speed up test suite execution, while avoiding a rewrite of our existing test suite. <a href="benchmarks.html">Early benchmarks</a> are available.</p>
|
59
|
+
|
60
|
+
<h2>Installing Celerity</h2>
|
61
|
+
<pre>
|
62
|
+
<code>
|
63
|
+
$ jruby -S gem install celerity
|
64
|
+
</code>
|
65
|
+
</pre>
|
66
|
+
<h2>Code example</h2>
|
67
|
+
<pre class="textmate-source mac_classic"><span class="source source_ruby"><span class="meta meta_require meta_require_ruby"><span class="keyword keyword_other keyword_other_special-method keyword_other_special-method_ruby">require</span> <span class="string string_quoted string_quoted_double string_quoted_double_ruby"><span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_begin punctuation_definition_string_begin_ruby">"</span>rubygems<span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_end punctuation_definition_string_end_ruby">"</span></span></span>
|
68
|
+
<span class="meta meta_require meta_require_ruby"><span class="keyword keyword_other keyword_other_special-method keyword_other_special-method_ruby">require</span> <span class="string string_quoted string_quoted_double string_quoted_double_ruby"><span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_begin punctuation_definition_string_begin_ruby">"</span>celerity<span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_end punctuation_definition_string_end_ruby">"</span></span></span>
|
69
|
+
|
70
|
+
browser <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_ruby">=</span> <span class="support support_class support_class_ruby">Celerity</span><span class="punctuation punctuation_separator punctuation_separator_other punctuation_separator_other_ruby">::</span><span class="support support_class support_class_ruby">Browser</span><span class="punctuation punctuation_separator punctuation_separator_method punctuation_separator_method_ruby">.</span><span class="keyword keyword_other keyword_other_special-method keyword_other_special-method_ruby">new</span>
|
71
|
+
browser<span class="punctuation punctuation_separator punctuation_separator_method punctuation_separator_method_ruby">.</span>goto<span class="punctuation punctuation_section punctuation_section_function punctuation_section_function_ruby">(</span><span class="string string_quoted string_quoted_single string_quoted_single_ruby"><span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_begin punctuation_definition_string_begin_ruby">'</span>http://www.google.com<span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_end punctuation_definition_string_end_ruby">'</span></span><span class="punctuation punctuation_section punctuation_section_function punctuation_section_function_ruby">)</span>
|
72
|
+
browser<span class="punctuation punctuation_separator punctuation_separator_method punctuation_separator_method_ruby">.</span>text_field<span class="punctuation punctuation_section punctuation_section_function punctuation_section_function_ruby">(</span><span class="constant constant_other constant_other_symbol constant_other_symbol_ruby"><span class="punctuation punctuation_definition punctuation_definition_constant punctuation_definition_constant_ruby">:</span>name</span><span class="punctuation punctuation_separator punctuation_separator_object punctuation_separator_object_ruby">,</span> <span class="string string_quoted string_quoted_single string_quoted_single_ruby"><span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_begin punctuation_definition_string_begin_ruby">'</span>q<span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_end punctuation_definition_string_end_ruby">'</span></span><span class="punctuation punctuation_section punctuation_section_function punctuation_section_function_ruby">)</span><span class="punctuation punctuation_separator punctuation_separator_method punctuation_separator_method_ruby">.</span>value <span class="keyword keyword_operator keyword_operator_assignment keyword_operator_assignment_ruby">=</span> <span class="string string_quoted string_quoted_single string_quoted_single_ruby"><span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_begin punctuation_definition_string_begin_ruby">'</span>Celerity<span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_end punctuation_definition_string_end_ruby">'</span></span>
|
73
|
+
browser<span class="punctuation punctuation_separator punctuation_separator_method punctuation_separator_method_ruby">.</span>button<span class="punctuation punctuation_section punctuation_section_function punctuation_section_function_ruby">(</span><span class="constant constant_other constant_other_symbol constant_other_symbol_ruby"><span class="punctuation punctuation_definition punctuation_definition_constant punctuation_definition_constant_ruby">:</span>name</span><span class="punctuation punctuation_separator punctuation_separator_object punctuation_separator_object_ruby">,</span> <span class="string string_quoted string_quoted_single string_quoted_single_ruby"><span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_begin punctuation_definition_string_begin_ruby">'</span>btnG<span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_end punctuation_definition_string_end_ruby">'</span></span><span class="punctuation punctuation_section punctuation_section_function punctuation_section_function_ruby">)</span><span class="punctuation punctuation_separator punctuation_separator_method punctuation_separator_method_ruby">.</span>click
|
74
|
+
|
75
|
+
puts <span class="string string_quoted string_quoted_double string_quoted_double_ruby"><span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_begin punctuation_definition_string_begin_ruby">"</span>yay<span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_end punctuation_definition_string_end_ruby">"</span></span> <span class="keyword keyword_control keyword_control_ruby">if</span> browser<span class="punctuation punctuation_separator punctuation_separator_method punctuation_separator_method_ruby">.</span>text<span class="punctuation punctuation_separator punctuation_separator_method punctuation_separator_method_ruby">.</span>include? <span class="string string_quoted string_quoted_single string_quoted_single_ruby"><span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_begin punctuation_definition_string_begin_ruby">'</span>celerity.rubyforge.org<span class="punctuation punctuation_definition punctuation_definition_string punctuation_definition_string_end punctuation_definition_string_end_ruby">'</span></span></span>
|
76
|
+
</pre>
|
77
|
+
|
78
|
+
<p>For more examples and help, check our <a href="http://github.com/jarib/celerity/wikis">wiki</a>.</p>
|
79
|
+
|
80
|
+
<h2>How to submit patches</h2>
|
81
|
+
<p>Read the <a href="http://drnicwilliams.com/2007/06/01/8-steps-for-fixing-other-peoples-code/">8 steps for fixing other people's code</a>. The repository is hosted at <a href="http://github.com/jarib/celerity/tree/master"><code>GitHub</code></a>. Failing specs for issues/features are most welcome!</p>
|
82
|
+
|
83
|
+
<h2>License</h2>
|
84
|
+
<p>Celerity is licensed under the <a href="http://www.gnu.org/licenses/gpl-3.0.html">GPLv3 license</a>.</p>
|
85
|
+
|
86
|
+
<h2>Contact</h2>
|
87
|
+
<p>Comments are welcome. You can reach us through our <a href="http://rubyforge.org/mail/?group_id=6198">mailing lists</a>, our <a href="http://rubyforge.org/forum/?group_id=6198">forum</a>, or our individual email addresses below.</p>
|
88
|
+
|
89
|
+
<h2>Developers</h2>
|
90
|
+
<ul>
|
91
|
+
<li><a href="mailto:tinius.alexander@lystadonline.no">T. Alexander Lystad</a></li>
|
92
|
+
<li><a href="mailto:knut.johannes.dahle@gmail.com">Knut Johannes Dahle</a></li>
|
93
|
+
<li><a href="mailto:jari.bakken@finn.no">Jari Bakken</a></li>
|
94
|
+
</ul>
|
95
|
+
</div>
|
96
|
+
</div>
|
97
|
+
<div id="footer">
|
98
|
+
<p>
|
99
|
+
<span class="w3cbutton">
|
100
|
+
<a href="http://validator.w3.org/check?uri=referer" title="Valid XHTML 1.0 Strict" hreflang="en">
|
101
|
+
<span class="w3c">W3C</span>
|
102
|
+
<span class="spec">XHTML 1.0</span>
|
103
|
+
</a>
|
104
|
+
</span>
|
105
|
+
|
106
|
+
<span class="w3cbutton">
|
107
|
+
<a href="http://jigsaw.w3.org/css-validator/check/referer" title="Valid CSS" hreflang="en">
|
108
|
+
<span class="w3c">W3C</span>
|
109
|
+
<span class="spec">CSS</span>
|
110
|
+
</a>
|
111
|
+
</span>
|
112
|
+
<!--
|
113
|
+
<span class="w3cbutton">
|
114
|
+
<a href="http://www.w3.org/WAI/WCAG1AAA-Conformance" title="Conforming with the highest level (AAA) of the Web Content Accessibility Guidelines 1.0" hreflang="en">
|
115
|
+
<span class="w3c">W3C</span>
|
116
|
+
<span class="spec">WAI‑<span class="red">AAA</span> WCAG 1.0</span>
|
117
|
+
</a>
|
118
|
+
</span>-->
|
119
|
+
</p>
|
120
|
+
<address>
|
121
|
+
<a href="mailto:jari.bakken@finn.no">JB</a>, 2009-03-19
|
122
|
+
</address>
|
123
|
+
</div>
|
124
|
+
</body>
|
125
|
+
</html>
|
@@ -0,0 +1 @@
|
|
1
|
+
See <a href="http://rubydoc.info/gems/celerity">RubyDoc.info</a>.
|
metadata
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
name: celerity
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease:
|
5
|
-
version: 0.9.
|
5
|
+
version: 0.9.1
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- Jari Bakken
|
@@ -12,67 +12,86 @@ autorequire:
|
|
12
12
|
bindir: bin
|
13
13
|
cert_chain: []
|
14
14
|
|
15
|
-
date: 2011-
|
16
|
-
default_executable:
|
15
|
+
date: 2011-10-22 00:00:00 Z
|
17
16
|
dependencies:
|
18
17
|
- !ruby/object:Gem::Dependency
|
19
|
-
name:
|
18
|
+
name: rake
|
20
19
|
prerelease: false
|
21
20
|
requirement: &id001 !ruby/object:Gem::Requirement
|
22
21
|
none: false
|
23
22
|
requirements:
|
24
23
|
- - ~>
|
25
24
|
- !ruby/object:Gem::Version
|
26
|
-
version:
|
25
|
+
version: 0.9.2
|
27
26
|
type: :development
|
28
27
|
version_requirements: *id001
|
29
28
|
- !ruby/object:Gem::Dependency
|
30
|
-
name:
|
29
|
+
name: rspec
|
31
30
|
prerelease: false
|
32
31
|
requirement: &id002 !ruby/object:Gem::Requirement
|
33
32
|
none: false
|
34
33
|
requirements:
|
35
|
-
- -
|
34
|
+
- - ~>
|
36
35
|
- !ruby/object:Gem::Version
|
37
|
-
version:
|
36
|
+
version: 2.0.0
|
38
37
|
type: :development
|
39
38
|
version_requirements: *id002
|
40
39
|
- !ruby/object:Gem::Dependency
|
41
|
-
name:
|
40
|
+
name: yard
|
42
41
|
prerelease: false
|
43
42
|
requirement: &id003 !ruby/object:Gem::Requirement
|
44
43
|
none: false
|
45
44
|
requirements:
|
46
45
|
- - ">="
|
47
46
|
- !ruby/object:Gem::Version
|
48
|
-
version: "
|
47
|
+
version: "0"
|
49
48
|
type: :development
|
50
49
|
version_requirements: *id003
|
51
50
|
- !ruby/object:Gem::Dependency
|
52
|
-
name:
|
51
|
+
name: sinatra
|
53
52
|
prerelease: false
|
54
53
|
requirement: &id004 !ruby/object:Gem::Requirement
|
54
|
+
none: false
|
55
|
+
requirements:
|
56
|
+
- - ~>
|
57
|
+
- !ruby/object:Gem::Version
|
58
|
+
version: "1.0"
|
59
|
+
type: :development
|
60
|
+
version_requirements: *id004
|
61
|
+
- !ruby/object:Gem::Dependency
|
62
|
+
name: mongrel
|
63
|
+
prerelease: false
|
64
|
+
requirement: &id005 !ruby/object:Gem::Requirement
|
55
65
|
none: false
|
56
66
|
requirements:
|
57
67
|
- - ">="
|
58
68
|
- !ruby/object:Gem::Version
|
59
69
|
version: "0"
|
60
70
|
type: :development
|
61
|
-
version_requirements: *
|
71
|
+
version_requirements: *id005
|
62
72
|
description: "Celerity is a JRuby wrapper around HtmlUnit \xE2\x80\x93 a headless Java browser with JavaScript support. It provides a simple API for programmatic navigation through web applications. Celerity provides a superset of Watir's API."
|
63
73
|
email: jari.bakken@gmail.com
|
64
74
|
executables: []
|
65
75
|
|
66
76
|
extensions: []
|
67
77
|
|
68
|
-
extra_rdoc_files:
|
69
|
-
|
70
|
-
- README.rdoc
|
78
|
+
extra_rdoc_files: []
|
79
|
+
|
71
80
|
files:
|
81
|
+
- .document
|
82
|
+
- .gitignore
|
83
|
+
- .gitmodules
|
84
|
+
- .travis.yml
|
85
|
+
- Gemfile
|
72
86
|
- LICENSE
|
73
87
|
- README.rdoc
|
74
88
|
- Rakefile
|
75
|
-
-
|
89
|
+
- benchmark/bm_2000_spans.rb
|
90
|
+
- benchmark/bm_digg.rb
|
91
|
+
- benchmark/bm_google_images.rb
|
92
|
+
- benchmark/bm_input_locator.rb
|
93
|
+
- benchmark/bm_text_input.rb
|
94
|
+
- benchmark/loader.rb
|
76
95
|
- celerity.gemspec
|
77
96
|
- lib/celerity.rb
|
78
97
|
- lib/celerity/browser.rb
|
@@ -106,10 +125,10 @@ files:
|
|
106
125
|
- lib/celerity/htmlunit/commons-codec-1.4.jar
|
107
126
|
- lib/celerity/htmlunit/commons-collections-3.2.1.jar
|
108
127
|
- lib/celerity/htmlunit/commons-io-2.0.1.jar
|
109
|
-
- lib/celerity/htmlunit/commons-
|
128
|
+
- lib/celerity/htmlunit/commons-lang3-3.0.1.jar
|
110
129
|
- lib/celerity/htmlunit/commons-logging-1.1.1.jar
|
111
|
-
- lib/celerity/htmlunit/cssparser-0.9.
|
112
|
-
- lib/celerity/htmlunit/htmlunit-2.
|
130
|
+
- lib/celerity/htmlunit/cssparser-0.9.6-20110829.205617-3.jar
|
131
|
+
- lib/celerity/htmlunit/htmlunit-2.10-SNAPSHOT.jar
|
113
132
|
- lib/celerity/htmlunit/htmlunit-core-js-2.9.jar
|
114
133
|
- lib/celerity/htmlunit/httpclient-4.1.2.jar
|
115
134
|
- lib/celerity/htmlunit/httpcore-4.1.2.jar
|
@@ -132,18 +151,46 @@ files:
|
|
132
151
|
- lib/celerity/viewer_connection.rb
|
133
152
|
- lib/celerity/watir_compatibility.rb
|
134
153
|
- lib/celerity/xpath_support.rb
|
154
|
+
- spec/browser_authentication_spec.rb
|
155
|
+
- spec/browser_spec.rb
|
156
|
+
- spec/button_spec.rb
|
157
|
+
- spec/clickable_element_spec.rb
|
158
|
+
- spec/default_viewer_spec.rb
|
159
|
+
- spec/element_spec.rb
|
160
|
+
- spec/filefield_spec.rb
|
161
|
+
- spec/htmlunit_spec.rb
|
162
|
+
- spec/implementation.rb
|
163
|
+
- spec/index_offset_spec.rb
|
164
|
+
- spec/link_spec.rb
|
165
|
+
- spec/listener_spec.rb
|
166
|
+
- spec/spec_helper.rb
|
167
|
+
- spec/table_spec.rb
|
168
|
+
- spec/watir_compatibility_spec.rb
|
135
169
|
- tasks/benchmark.rake
|
136
170
|
- tasks/check.rake
|
137
171
|
- tasks/clean.rake
|
138
172
|
- tasks/fix.rake
|
139
173
|
- tasks/jar.rake
|
140
|
-
- tasks/jeweler.rake
|
141
174
|
- tasks/rdoc.rake
|
142
175
|
- tasks/snapshot.rake
|
143
176
|
- tasks/spec.rake
|
144
177
|
- tasks/website.rake
|
145
178
|
- tasks/yard.rake
|
146
|
-
|
179
|
+
- website/benchmarks.html
|
180
|
+
- website/css/color.css
|
181
|
+
- website/css/hacks.css
|
182
|
+
- website/css/layout.css
|
183
|
+
- website/css/screen.css
|
184
|
+
- website/css/textmate.css
|
185
|
+
- website/css/typography.css
|
186
|
+
- website/gfx/body_bg.gif
|
187
|
+
- website/gfx/button_bg.jpg
|
188
|
+
- website/gfx/header_bg.jpg
|
189
|
+
- website/gfx/header_left.jpg
|
190
|
+
- website/gfx/header_right.jpg
|
191
|
+
- website/gfx/nav_bg.jpg
|
192
|
+
- website/index.html
|
193
|
+
- website/yard/index.html
|
147
194
|
homepage: http://github.com/jarib/celerity
|
148
195
|
licenses: []
|
149
196
|
|
@@ -167,7 +214,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
167
214
|
requirements: []
|
168
215
|
|
169
216
|
rubyforge_project: celerity
|
170
|
-
rubygems_version: 1.
|
217
|
+
rubygems_version: 1.8.9
|
171
218
|
signing_key:
|
172
219
|
specification_version: 3
|
173
220
|
summary: Celerity is a JRuby library for easy and fast functional test automation for web applications.
|