blackboxd 0.1.0 → 0.1.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/selenium_webdriver_steps.rb +142 -0
  3. metadata +3 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 8aadb8d263758bf046161cb8d88c9596d4f1855b
4
- data.tar.gz: 01e0103c926d6d7cf9d65b66b0b367763fc7b68c
3
+ metadata.gz: a6236d237b5b64a0e49a378330c555f43bf7777a
4
+ data.tar.gz: ea89050a1f2723b7a2c6f75a4410c110ccbe1e21
5
5
  SHA512:
6
- metadata.gz: 2379a355c4e9bf20b29e3d9fbff8cb98fab05fe9e2c429a61ae1911f40b60fde71663a4a022769bf170c9342b4eb873ba3ef594731e2707b6d8c4412818f1edd
7
- data.tar.gz: 7b3f2db68e5bf8b09bcb0ba9667169bafa07439d4434d47a94393bbc841c2b906e92968a797ea49fb5608c5105266f1dc57c41947bbccf108b1c6a21ad8fc837
6
+ metadata.gz: 50ca35f33c4c0d2278f6d433a244d15e949fc0de0286ab0f18988548dec6b5ebbb063e4e9981418e0406e92de2811bcc7ae6b1b214fa9a4e5083bfac2ee2bfe4
7
+ data.tar.gz: ea79173ea8aa05910dde5099d979dfa11c6cc703663806ad4d3319b5e8030c0ee515d5e03275f2d8a5f4662b17d33f47a3a4331de9d1deb655fde6f1b04cec8b
@@ -0,0 +1,142 @@
1
+ Given /I click_on "(.*)" "(.*)"/ do |value, type|
2
+ steps %Q{
3
+ * I wait until "#{value}" "#{type}" renders
4
+ }
5
+ @driver.find_element(type.to_sym => value).click
6
+ end
7
+
8
+ When /I wait until "(.*)" "(.*)" renders/ do |value, type|
9
+ if value == "preferences-command" || value == "ui-inline-del" then
10
+ sleep 2
11
+ end
12
+ start_time = Time.now.to_i
13
+ wait = Selenium::WebDriver::Wait.new(:timeout => @time)
14
+ wait.until {
15
+ element = @driver.find_element(type.to_sym => value )
16
+ element if element.displayed?
17
+ }
18
+ end_time = Time.now.to_i - start_time
19
+ puts (end_time.to_s + " seconds to render " + "<" + type + ">" + value.inspect + "</" + type + ">")
20
+ end
21
+
22
+ Given /I xpath "(.*)" "(.*)"/ do |what, how|
23
+ steps %Q{
24
+ * I wait for "#{what}" "#{how}" to render
25
+ }
26
+ @driver.find_element(:xpath, ".//" + how + "[text()='" + what + "']").click
27
+ end
28
+
29
+ When /I wait for "(.*)" "(.*)" to render/ do |what, how|
30
+ if what == "Insight" then
31
+ puts sleep 2
32
+ end
33
+ start_time = Time.now.to_i
34
+ wait = Selenium::WebDriver::Wait.new(:timeout => @time)
35
+ wait.until {
36
+ element = @driver.find_element(:xpath, ".//" + how + "[text()='" + what + "']")
37
+ element if element.displayed?
38
+ }
39
+ end_time = Time.now.to_i - start_time
40
+ if end_time == 1
41
+ puts (end_time.to_s + " second to render " + "<" + how + ">" + what.inspect + "</" + how + ">")
42
+ else
43
+ puts (end_time.to_s + " seconds to render " + "<" + how + ">" + what.inspect + "</" + how + ">")
44
+ end
45
+ end
46
+
47
+ Given /^I am on the (.+)/ do |page_name|
48
+ @driver.get(path_to(page_name))
49
+ if page_name == "login page"
50
+ @driver.get(path_to(page_name))
51
+ end
52
+ end
53
+
54
+ Given /I fill in "(.*)" with "(.*)"/ do |how, what|
55
+ if (@driver.all(:id, how).count >= 1 ) then
56
+ # @driver.find_element(:id, how).clear
57
+ @driver.find_element(:id, how).send_keys(what)
58
+ elsif (@driver.all(:class, how).count >=1) then
59
+ @driver.find_element(:class, how).clear
60
+ @driver.find_element(:class, how).send_keys(what)
61
+ elsif (@driver.all(:name, how).count >=1) then
62
+ @driver.find_element(:name, how).clear
63
+ @driver.find_element(:name, how).send_keys(what)
64
+ end
65
+ end
66
+
67
+ Given /I should (NOT )?see "(.*)"/ do |visibility, what|
68
+ sleep 2
69
+ what = what.to_s.strip
70
+ if (visibility.to_s.strip == 'NOT') then
71
+ result = @driver.all(:xpath, "//*[text()='" + what + "']")
72
+ result.count.should == 0
73
+ else
74
+ start_time = Time.now.to_i
75
+ wait = Selenium::WebDriver::Wait.new(:timeout => @time)
76
+ wait.until {
77
+ result = @driver.first(:xpath, "//*[text()='" + what + "']")
78
+ result.displayed?
79
+ }
80
+ end_time = Time.now.to_i - start_time
81
+ puts (end_time.to_s + " seconds to render => " + "#{result.text}" )
82
+ end
83
+ end
84
+
85
+ Given /I wait "(.*)"/ do |seconds|
86
+ sleep seconds.to_i
87
+ end
88
+
89
+ Given /I should (NOT )?be on "(.*)"/ do |visibility, value|
90
+ sleep 3
91
+ puts url = @driver.current_url.to_s
92
+ if (visibility.to_s.strip == 'NOT') then
93
+ url.should_not include value
94
+ else
95
+ url.should include value
96
+ end
97
+ end
98
+
99
+ Given /I maximize browser/ do
100
+ @driver.manage.window.maximize
101
+ end
102
+
103
+ Given /I refresh the page/ do
104
+ @driver.execute_script("$(document).ready(function(){
105
+ location.reload(true);
106
+ });")
107
+ sleep 4
108
+ end
109
+
110
+ Given /I mouseover "(.*)"/ do |value|
111
+ sleep 3
112
+ el = @driver.find_element(:class, value)
113
+ @driver.action.move_to(el).perform
114
+ sleep 2
115
+ end
116
+
117
+ Given /I press the "(.*)" key/ do |value|
118
+ @driver.action.send_keys(value.to_sym).perform
119
+ end
120
+
121
+ Given /I type in "(.*)"/ do |value|
122
+ @driver.action.send_keys(value).perform
123
+ end
124
+
125
+ Given /I scroll down "(.*)" times/ do |number|
126
+ number.to_i.times do
127
+ @driver.execute_script("window.scrollBy(0,1000)", "")
128
+ end
129
+ end
130
+
131
+ Given /I scroll up/ do
132
+ @driver.execute_script("window.scrollTop", "")
133
+ end
134
+
135
+ Given /I display page source/ do
136
+ puts @driver.page_source
137
+ end
138
+
139
+ Given /I accept alert/ do
140
+ alert = @driver.switch_to.alert
141
+ alert.accept
142
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: blackboxd
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rich Downie
@@ -15,7 +15,8 @@ email: rich@blackboxd.com
15
15
  executables: []
16
16
  extensions: []
17
17
  extra_rdoc_files: []
18
- files: []
18
+ files:
19
+ - lib/selenium_webdriver_steps.rb
19
20
  homepage: http://blackboxd.com
20
21
  licenses:
21
22
  - MIT