test-factory 0.4.7 → 0.4.9
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/lib/test-factory/page_factory.rb +24 -4
- data/test-factory.gemspec +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
MjM2NDE3ZTk1MzI5ZjgyYjhhYjI2Zjg4MGY1NWQ3NmQ4MDk0MDgwMg==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
ZDM2NzNjNmJkN2I0MTcwODc3MDg5ODc3MjM3YTczZTA2MjdkNTE2NQ==
|
7
7
|
!binary "U0hBNTEy":
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
ODhjMDg0OTE0OTkwODczZGM0YjZhNTUyYTE0MmVhNjE5MjNiNjg3M2QwOTkz
|
10
|
+
MmQxZjE3NWE5N2E4MjM2N2VkMDJjZTI3OWMwYWY1MTM2MWJiZGNiNjZkYjAx
|
11
|
+
MmIyOGM1ZjU4ZjhlNDk3MmVlM2RlODRkYmE0OGQ1NWYwOTg2MmU=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
ZjU2MjEwMTdmOTkzMDU4NzJmY2JmODU2YmE0NjNjYTAyYzE0NDA5ODg5NWUx
|
14
|
+
ZDA2Y2M5YTQzNjgwOWJjYzIyNjEzZDM2MzBlNDc4MTc2ZThhNjNiYWIwZTI1
|
15
|
+
YTFmMTkwMWY4NjZjZWJkMThkMDQwMGVhYTczYTcxNjY2NmIyOGE=
|
@@ -116,7 +116,7 @@ class PageFactory
|
|
116
116
|
# @example
|
117
117
|
# link("Click Me For Fun!", :click_me) => Creates the methods #click_me and #click_me_link
|
118
118
|
#
|
119
|
-
def link
|
119
|
+
def link link_text, *alias_name
|
120
120
|
elementize(:link, link_text, *alias_name)
|
121
121
|
end
|
122
122
|
|
@@ -143,19 +143,39 @@ class PageFactory
|
|
143
143
|
# @example
|
144
144
|
# link("Click Me For Fun!", :click_me) => Creates the methods #click_me and #click_me_link
|
145
145
|
#
|
146
|
-
def button
|
146
|
+
def button button_text, *alias_name
|
147
147
|
elementize(:button, button_text, *alias_name)
|
148
148
|
end
|
149
149
|
|
150
|
+
def inherited klass
|
151
|
+
klass.instance_eval {
|
152
|
+
|
153
|
+
# Creates a method, #wait_for_ajax, usable in your Page Classes, that executes
|
154
|
+
# the 'jQuery.active' Javascript snippet each second until timeout.
|
155
|
+
#
|
156
|
+
# If timeout is exceeded, raises Watir::Wait::TimeoutError exception.
|
157
|
+
#
|
158
|
+
define_method 'wait_for_ajax' do |timeout=10|
|
159
|
+
timeout.times do
|
160
|
+
sleep 0.3
|
161
|
+
return true if @browser.execute_script('return jQuery.active').to_i == 0
|
162
|
+
sleep 0.7
|
163
|
+
end
|
164
|
+
raise Watir::Wait::TimeoutError, "Ajax calls continued beyond #{timeout} seconds."
|
165
|
+
end
|
166
|
+
|
167
|
+
}
|
168
|
+
end
|
169
|
+
|
150
170
|
private
|
151
171
|
# A helper method that converts the passed string into snake case. See the StringFactory
|
152
172
|
# module for more info.
|
153
173
|
#
|
154
|
-
def damballa
|
174
|
+
def damballa text
|
155
175
|
StringFactory.damballa(text)
|
156
176
|
end
|
157
177
|
|
158
|
-
def elementize
|
178
|
+
def elementize type, text, *alias_name
|
159
179
|
hash={:link=>:text, :button=>:value}
|
160
180
|
if alias_name.empty?
|
161
181
|
el_name=damballa("#{text}_#{type}")
|
data/test-factory.gemspec
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
spec = Gem::Specification.new do |s|
|
2
2
|
s.name = 'test-factory'
|
3
|
-
s.version = '0.4.
|
3
|
+
s.version = '0.4.9'
|
4
4
|
s.summary = %q{rSmart's framework for creating automated testing scripts}
|
5
5
|
s.description = %q{This gem provides a set of modules and methods to help quickly and DRYly create a test automation framework using Ruby and Watir (or watir-webdriver).}
|
6
6
|
s.files = Dir.glob("**/**/**")
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: test-factory
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.4.
|
4
|
+
version: 0.4.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Abraham Heward
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-05-
|
11
|
+
date: 2014-05-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: watir-webdriver
|