rwebspec-webdriver 0.4.2 → 0.5

Sign up to get free protection for your applications and to get access to all the features.
data/CHANGELOG CHANGED
@@ -1,6 +1,10 @@
1
1
  CHANGELOG
2
2
  =========
3
3
 
4
+ == 0.5
5
+ [Enhancement] select_option with faster syntax
6
+ [Refactor] Separate pause from operation_delay
7
+
4
8
  == 0.4.2
5
9
  [Feature] use_current_browser will try to use $browser
6
10
 
data/Rakefile CHANGED
@@ -69,7 +69,7 @@ end
69
69
  spec = Gem::Specification.new do |s|
70
70
  s.platform= Gem::Platform::RUBY
71
71
  s.name = "rwebspec-webdriver"
72
- s.version = "0.4.2"
72
+ s.version = "0.5"
73
73
  s.summary = "Executable functional specification for web applications in RSpec syntax and Selenium-WebDriver"
74
74
  # s.description = ""
75
75
 
@@ -17,7 +17,7 @@ require 'rspec'
17
17
  require 'selenium-webdriver'
18
18
 
19
19
  unless defined? RWEBSPEC_WEBDRIVER_VERSION
20
- RWEBSPEC_WEBDRIVER_VERSION = "0.4.2"
20
+ RWEBSPEC_WEBDRIVER_VERSION = "0.5"
21
21
  end
22
22
 
23
23
 
@@ -327,6 +327,7 @@ module RWebSpec
327
327
  begin
328
328
  dump_caller_stack
329
329
  operation_delay
330
+ check_for_pause
330
331
  yield
331
332
  rescue RuntimeError => re
332
333
  puts "[DEBUG] operation error: #{re}"
@@ -24,18 +24,29 @@ module RWebSpec
24
24
  if $TESTWISE_OPERATION_DELAY && $TESTWISE_OPERATION_DELAY > 0 &&
25
25
  $TESTWISE_OPERATION_DELAY && $TESTWISE_OPERATION_DELAY < 30000 then # max 30 seconds
26
26
  sleep($TESTWISE_OPERATION_DELAY / 1000)
27
- end
28
-
29
- while $TESTWISE_PAUSE
30
- debug("Paused, waiting ...")
31
- sleep 1
32
- end
27
+ end
33
28
  rescue => e
34
29
  puts "Error on delaying: #{e}"
35
30
  # ignore
36
31
  end
37
32
  end
38
33
 
34
+ def check_for_pause
35
+
36
+ if $TESTWISE_READY_TO_PAUSE
37
+ # Already executed the the line immedately above,
38
+ # give some buffer time for TW to set $TESTWISE_PAUSE flag
39
+ sleep 0.5
40
+ end
41
+
42
+ # If the executed line no change, ignore
43
+ while $TESTWISE_PAUSE
44
+ Thread.pass
45
+ debug("[selenium_webdriver_extension] Paused, waiting ...")
46
+ sleep 1
47
+ end
48
+ end
49
+
39
50
  def notify_screenshot_location(image_file_path)
40
51
  connect_to_testwise(" SHOT", image_file_path)
41
52
  end
@@ -515,19 +515,8 @@ module RWebSpec
515
515
  # Select a dropdown list by name
516
516
  # Usage:
517
517
  # select_option("country", "Australia")
518
- def select_option(selectName, text)
519
- select_box = find_element(:name, selectName)
520
-
521
- options = select_box.find_elements(:tag_name, "option")
522
- options.each do |opt|
523
- opt.click
524
- if text == opt.text
525
- opt.click
526
- return true
527
- end
528
- end
529
-
530
- raise "no option with text '#{text}' found for select list name = '#{selectName}"
518
+ def select_option(selectName, text)
519
+ Selenium::WebDriver::Support::Select.new(find_element(:name, selectName)).select_by(:text, text)
531
520
  end
532
521
 
533
522
  # submit first submit button
metadata CHANGED
@@ -1,12 +1,12 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rwebspec-webdriver
3
3
  version: !ruby/object:Gem::Version
4
- prerelease: false
4
+ hash: 1
5
+ prerelease:
5
6
  segments:
6
7
  - 0
7
- - 4
8
- - 2
9
- version: 0.4.2
8
+ - 5
9
+ version: "0.5"
10
10
  platform: ruby
11
11
  authors:
12
12
  - Zhimin Zhan
@@ -14,16 +14,17 @@ autorequire: rwebspec-webdriver
14
14
  bindir: bin
15
15
  cert_chain: []
16
16
 
17
- date: 2012-06-16 00:00:00 +10:00
18
- default_executable:
17
+ date: 2012-08-13 00:00:00 Z
19
18
  dependencies:
20
19
  - !ruby/object:Gem::Dependency
21
20
  name: rspec
22
21
  prerelease: false
23
22
  requirement: &id001 !ruby/object:Gem::Requirement
23
+ none: false
24
24
  requirements:
25
25
  - - ">="
26
26
  - !ruby/object:Gem::Version
27
+ hash: 23
27
28
  segments:
28
29
  - 2
29
30
  - 10
@@ -34,9 +35,11 @@ dependencies:
34
35
  name: rspec-core
35
36
  prerelease: false
36
37
  requirement: &id002 !ruby/object:Gem::Requirement
38
+ none: false
37
39
  requirements:
38
40
  - - ">="
39
41
  - !ruby/object:Gem::Version
42
+ hash: 37
40
43
  segments:
41
44
  - 2
42
45
  - 10
@@ -48,9 +51,11 @@ dependencies:
48
51
  name: selenium-webdriver
49
52
  prerelease: false
50
53
  requirement: &id003 !ruby/object:Gem::Requirement
54
+ none: false
51
55
  requirements:
52
56
  - - ">="
53
57
  - !ruby/object:Gem::Version
58
+ hash: 13
54
59
  segments:
55
60
  - 2
56
61
  - 0
@@ -91,7 +96,6 @@ files:
91
96
  - lib/rwebspec-webdriver/web_testcase.rb
92
97
  - lib/rwebspec-webdriver.rb
93
98
  - lib/webdriver_extensions.rb
94
- has_rdoc: true
95
99
  homepage: http://github.com/zhimin/rwebspec-webdriver/tree/master
96
100
  licenses: []
97
101
 
@@ -101,23 +105,27 @@ rdoc_options: []
101
105
  require_paths:
102
106
  - lib
103
107
  required_ruby_version: !ruby/object:Gem::Requirement
108
+ none: false
104
109
  requirements:
105
110
  - - ">="
106
111
  - !ruby/object:Gem::Version
112
+ hash: 3
107
113
  segments:
108
114
  - 0
109
115
  version: "0"
110
116
  required_rubygems_version: !ruby/object:Gem::Requirement
117
+ none: false
111
118
  requirements:
112
119
  - - ">="
113
120
  - !ruby/object:Gem::Version
121
+ hash: 3
114
122
  segments:
115
123
  - 0
116
124
  version: "0"
117
125
  requirements:
118
126
  - none
119
127
  rubyforge_project: rwebspec-webdriver
120
- rubygems_version: 1.3.6
128
+ rubygems_version: 1.8.24
121
129
  signing_key:
122
130
  specification_version: 3
123
131
  summary: Executable functional specification for web applications in RSpec syntax and Selenium-WebDriver