operawatir 0.5.1-jruby → 0.6.pre1-jruby

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/CHANGES CHANGED
@@ -1,3 +1,23 @@
1
+ v0.6.pre1 2011-12-01
2
+
3
+ [ENHANCEMENTS]
4
+
5
+ * Construction of DesktopWatir now uses desired capabilities, and
6
+ relies on shared code between OperaWatir and OperaDesktopWatir.
7
+ (andreastt)
8
+
9
+ [BUG FIXES]
10
+
11
+ * OperaDesktopHelper missed a line making it impossible to run
12
+ desktopwatir RSpec tests from `jruby -S rspec test.rb`.
13
+ (andreastt)
14
+
15
+ * Exposing browser.utils.* on DesktopBrowser. (andreastt)
16
+
17
+ [OTHER]
18
+
19
+ * Upgraded to OperaDriver v0.8.1. (andreastt)
20
+
1
21
  v0.5.1 2011-09-20
2
22
 
3
23
  [OTHER]
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.5.1
1
+ 0.6.pre1
data/bin/desktopwatir CHANGED
@@ -1,13 +1,14 @@
1
1
  #!/usr/bin/env jruby
2
2
  require 'rubygems'
3
3
  require 'optparse'
4
+ require 'stringio'
4
5
  require 'rspec'
5
6
  require 'rbconfig'
6
7
  require 'operawatir'
7
8
 
8
-
9
9
  @options = {
10
- #:manual => false,
10
+ :manual => false, # Defining this here so that we are sure
11
+ # it doesn't trigger manual mode
11
12
  :ng => false,
12
13
  :color_enabled => true,
13
14
  :check_syntax => false,
@@ -25,21 +26,16 @@ require 'operawatir'
25
26
  begin
26
27
  OptionParser.new do |opts|
27
28
  opts.banner = <<EOS
28
-
29
- Usage: desktopwatir [-l|--launcher=BINARY] [-e|--executable=BINARY]
30
- [-a|--args=ARGUMENTS] [--no-color] [-q|--no-quit] [-r|--no-restart]
31
- [--opera-idle] [-b|--backtrace] [-t|--tag=TAG] [-f|--format=FORMAT]
29
+ Usage: desktopwatir [-m|--manual] [-l|--launcher=BINARY]
30
+ [-e|--executable=BINARY] [-a|--args=ARGUMENTS] [--no-color]
31
+ [-q|--no-quit] [-r|--no-restart] [--opera-idle]
32
+ [-b|--backtrace] [-t|--tag=TAG] [-f|--format=FORMAT]
32
33
  [-o|--out=FILE] [-h|--help] [-v|--version] FILES
33
34
  EOS
34
35
 
35
36
  opts.separator ''
36
37
  opts.separator 'Specific options:'
37
38
 
38
- #run without launcher and with manual connection, restart not possible (same as -rq)
39
- #opts.on('-m', '--manual', 'Wait for a manual connection from opera:debug') do |c|
40
- # @options[:manual] = c
41
- #end
42
-
43
39
  opts.on('-l', '--launcher=BINARY', 'Path to launcher binary, will use environmental ',
44
40
  'variable OPERA_LAUNCHER if not specified') do |c|
45
41
  @options[:launcher] = c
@@ -96,6 +92,18 @@ EOS
96
92
  opts.separator ''
97
93
  opts.separator 'Common options:'
98
94
 
95
+ opts.on_tail('-d', '--debug=LEVEL', 'The logging level to use. Available levels: SEVERE',
96
+ '(highest), WARNING, INFO (default), CONFIG, FINE,',
97
+ 'FINER, FINEST (lowest), ALL') do |l|
98
+ available_levels = ['SEVERE', 'WARNING', 'INFO', 'CONFIG', 'FINE', 'FINER', 'FINEST', 'ALL']
99
+ raise OptionParser::InvalidArgument, l.to_s.inspect unless available_levels.include?(l)
100
+ @options[:logging_level] = l
101
+ end
102
+
103
+ opts.on_tail('--log=FILE', 'Output the log to a file') do |f|
104
+ @options[:logging_file] = f
105
+ end
106
+
99
107
  opts.on_tail('-h', '--help', 'Show this message') do
100
108
  abort opts.to_s
101
109
  end
@@ -105,7 +113,7 @@ EOS
105
113
  end
106
114
  end.parse!(ARGV)
107
115
  rescue OptionParser::InvalidOption => e
108
- abort "desktopwatir: Unknown option `#{e.to_s.sub(/invalid option:\s+/, '')}'"
116
+ abort "desktopwatir: #{e}"
109
117
  end
110
118
 
111
119
  if ARGV.empty?
data/bin/operawatir CHANGED
@@ -14,6 +14,7 @@ require 'operawatir'
14
14
  :output_stream => IO.new(1, 'w'),
15
15
  :format => 'progress',
16
16
  :no_quit => false,
17
+ :no_restart => false,
17
18
  :opera_idle => false,
18
19
  #:full_backtrace => false # TODO: Provide fix for RSpec
19
20
  }
@@ -24,10 +25,11 @@ require 'operawatir'
24
25
  begin
25
26
  OptionParser.new do |opts|
26
27
  opts.banner = <<EOS
27
- Usage: operawatir [-m|--manual] [-l|--launcher=BINARY] [--binary=BINARY]
28
- [-a|--args=ARGUMENTS] [-q|--no-quit] [--opera-idle] [-b|--backtrace]
29
- [--no-color] [-t|--tag=TAG] [-f|--format=FORMAT] [-o|--out=FILE]
30
- [-d|--debug=LEVEL] [--log=FILE] [-h|--help] [-v|--version] FILES
28
+ Usage: operawatir [-m|--manual] [-l|--launcher=BINARY]
29
+ [--binary=BINARY] [-a|--args=ARGUMENTS] [-q|--no-quit]
30
+ [--opera-idle] [-b|--backtrace] [--no-color] [-t|--tag=TAG]
31
+ [-f|--format=FORMAT] [-o|--out=FILE] [-d|--debug=LEVEL]
32
+ [--log=FILE] [-h|--help] [-v|--version] FILES
31
33
  EOS
32
34
 
33
35
  opts.separator ''
Binary file
data/lib/operawatir.rb CHANGED
@@ -4,8 +4,9 @@ require 'deprecated'
4
4
  require 'java'
5
5
  include Java
6
6
 
7
- %w(commons-jxpath-1.3.jar protobuf-java-2.4.1.jar selenium-nodeps-20100909.jar
8
- operadriver-v0.7.3.jar commons-io-2.0.1.jar guava-r09.jar).each { |jar| require "operadriver/#{jar}" }
7
+ %w(commons-jxpath-1.3.jar commons-exec-1.1.jar protobuf-java-2.4.1.jar
8
+ selenium-java-2.13.0.jar operalaunchers-0.3.jar operadriver-v0.8.1.jar
9
+ guava-10.0.1.jar).each { |jar| require "operadriver/#{jar}" }
9
10
 
10
11
  include_class org.openqa.selenium.WebDriver
11
12
  include_class org.openqa.selenium.remote.RemoteWebElement
@@ -199,17 +199,19 @@ class OperaWatir::Browser
199
199
 
200
200
  private
201
201
 
202
- def self.desired_capabilities
203
- @desired_capabilities ||= DesiredCapabilities.new.tap { |s|
204
- s.setCapability('opera.logging.level', self.settings[:logging_level]) if self.settings[:logging_level]
205
- s.setCapability('opera.logging.file', self.settings[:logging_file]) if self.settings[:logging_file]
206
- s.setCapability('opera.autostart', false) if self.settings[:manual]
207
- s.setCapability('opera.launcher', self.settings[:launcher]) if self.settings[:launcher]
208
- s.setCapability('opera.binary', self.settings[:path]) if self.settings[:path]
209
- s.setCapability('opera.arguments', self.settings[:args].to_s) if self.settings[:args]
210
- s.setCapability('opera.no_quit', true) if self.settings[:no_quit]
211
- s.setCapability('opera.idle', true) if self.settings[:opera_idle] or ENV['OPERA_IDLE'].truthy?
212
- }
202
+ def self.desired_capabilities(desktopwatir = false)
203
+ @desired_capabilities ||= DesiredCapabilities.new.tap do |c|
204
+ c.setCapability('opera.logging.level', self.settings[:logging_level]) if self.settings[:logging_level]
205
+ c.setCapability('opera.logging.file', self.settings[:logging_file]) if self.settings[:logging_file]
206
+ c.setCapability('opera.autostart', false) if self.settings[:manual]
207
+ c.setCapability('opera.launcher', self.settings[:launcher]) if self.settings[:launcher]
208
+ c.setCapability('opera.binary', self.settings[:path]) if self.settings[:path]
209
+ c.setCapability('opera.arguments', self.settings[:args].to_s) if self.settings[:args]
210
+ c.setCapability('opera.no_quit', true) if self.settings[:no_quit]
211
+ c.setCapability('opera.no_restart', true) if self.settings[:no_restart]
212
+ c.setCapability('opera.guess_binary_path', false) if desktopwatir
213
+ c.setCapability('opera.idle', true) if self.settings[:opera_idle] or ENV['OPERA_IDLE'].truthy?
214
+ end
213
215
  end
214
216
 
215
217
  end
@@ -1,3 +1,4 @@
1
+ # -*- coding: utf-8 -*-
1
2
  module OperaWatir
2
3
  class DesktopBrowser < Browser
3
4
  include DesktopContainer
@@ -13,7 +14,7 @@ module OperaWatir
13
14
  def initialize
14
15
  OperaWatir.compatibility! unless OperaWatir.api >= 3
15
16
 
16
- self.driver = OperaDesktopDriver.new(self.class.opera_driver_settings)
17
+ self.driver = OperaDesktopDriver.new(self.class.desired_capabilities(true))
17
18
  self.active_window = OperaWatir::Window.new(self)
18
19
  self.preferences = OperaWatir::Preferences.new(self)
19
20
  self.keys = OperaWatir::Keys.new(self)
@@ -604,8 +605,8 @@ module OperaWatir
604
605
  return 0 if win_id == 0
605
606
 
606
607
  #Ensure is Expanded
607
- if quick_button(:name, "Destails_expand").value == 0
608
- quick_button(:name, "Destails_expand").toggle_with_click
608
+ if quick_button(:name, "Details_expand").value == 0
609
+ quick_button(:name, "Details_expand").toggle_with_click
609
610
  end
610
611
 
611
612
  quick_checkboxes("Clear Private Data Dialog").each do |box|
@@ -796,26 +797,11 @@ module OperaWatir
796
797
 
797
798
  private
798
799
 
799
- def close_menu
800
+ def close_menu
800
801
  wait_start
801
802
  key_press_direct("Esc")
802
803
  wait_for_menu_closed("")
803
- end
804
-
805
-
806
- def self.opera_driver_settings
807
- @opera_driver_settings ||= OperaDriverSettings.new.tap {|s|
808
- #s.setRunOperaLauncherFromOperaDriver true
809
- s.setAutostart false if self.settings[:manual]
810
- s.setOperaLauncherBinary self.settings[:launcher]
811
- s.setOperaBinaryLocation self.settings[:path]
812
- # s.setOperaBinaryArguments self.settings[:args].to_s + ' -autotestmode'
813
- s.setNoQuit self.settings[:no_quit]
814
- s.setNoRestart self.settings[:no_restart]
815
- s.setGuessOperaPath false
816
- s.setUseOperaIdle false if !self.settings[:opera_idle]
817
- }
818
- end
804
+ end
819
805
 
820
806
  # Gets the parent widget name of which there is none here
821
807
  def parent_widget
@@ -107,3 +107,5 @@ private
107
107
  end
108
108
  end
109
109
  end
110
+
111
+ OperaWatir::DesktopHelper.run!
data/operawatir.gemspec CHANGED
@@ -5,12 +5,12 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{operawatir}
8
- s.version = "0.5.1"
8
+ s.version = "0.6.pre1"
9
9
  s.platform = %q{jruby}
10
10
 
11
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
12
- s.authors = ["Andreas Tolf Tolfsen", "Chris Lloyd", "Stuart Knightley", "Deniz Turkoglu"]
13
- s.date = %q{2011-09-20}
11
+ s.required_rubygems_version = Gem::Requirement.new("> 1.3.1") if s.respond_to? :required_rubygems_version=
12
+ s.authors = [%q{Andreas Tolf Tolfsen}, %q{Chris Lloyd}, %q{Stuart Knightley}, %q{Deniz Turkoglu}]
13
+ s.date = %q{2011-12-01}
14
14
  s.description = %q{ OperaWatir is a part of the Watir (pronounced water) family of
15
15
  free software Ruby libraries for automating web browsers.
16
16
  OperaWatir provides a querying engine and Ruby bindings for a
@@ -18,8 +18,8 @@ Gem::Specification.new do |s|
18
18
  browser. It aims for full compliancy with the Watir 2 and Watir 3
19
19
  specifications.
20
20
  }
21
- s.email = ["andreastt@opera.com", "christopherl@opera.com", "stuartk@opera.com", "dturkoglu@opera.com"]
22
- s.executables = ["desktopwatir", "operawatir"]
21
+ s.email = [%q{andreastt@opera.com}, %q{christopherl@opera.com}, %q{stuartk@opera.com}, %q{dturkoglu@opera.com}]
22
+ s.executables = [%q{desktopwatir}, %q{operawatir}]
23
23
  s.extra_rdoc_files = [
24
24
  "README.md"
25
25
  ]
@@ -37,12 +37,13 @@ Gem::Specification.new do |s|
37
37
  "bin/operawatir",
38
38
  "lib/operadriver/APACHE_2.0_LICENSE.txt",
39
39
  "lib/operadriver/NEW_BSD_LICENSE.txt",
40
- "lib/operadriver/commons-io-2.0.1.jar",
40
+ "lib/operadriver/commons-exec-1.1.jar",
41
41
  "lib/operadriver/commons-jxpath-1.3.jar",
42
- "lib/operadriver/guava-r09.jar",
43
- "lib/operadriver/operadriver-v0.7.3.jar",
42
+ "lib/operadriver/guava-10.0.1.jar",
43
+ "lib/operadriver/operadriver-v0.8.1.jar",
44
+ "lib/operadriver/operalaunchers-0.3.jar",
44
45
  "lib/operadriver/protobuf-java-2.4.1.jar",
45
- "lib/operadriver/selenium-nodeps-20100909.jar",
46
+ "lib/operadriver/selenium-java-2.13.0.jar",
46
47
  "lib/operawatir.rb",
47
48
  "lib/operawatir/actions.rb",
48
49
  "lib/operawatir/browser.rb",
@@ -292,9 +293,9 @@ Gem::Specification.new do |s|
292
293
  "utils/formatters/spartan_formatter.rb"
293
294
  ]
294
295
  s.homepage = %q{http://www.opera.com/developer/tools/operawatir/}
295
- s.require_paths = ["lib"]
296
+ s.require_paths = [%q{lib}]
296
297
  s.rubyforge_project = %q{operawatir}
297
- s.rubygems_version = %q{1.5.1}
298
+ s.rubygems_version = %q{1.8.9}
298
299
  s.summary = %q{Toolkit for automating interactions with the Opera web browser.}
299
300
 
300
301
  if s.respond_to? :specification_version then
@@ -156,11 +156,11 @@ describe 'QuickButton' do
156
156
  end
157
157
 
158
158
  it 'returns value = 1 of button when button is pressed' do
159
- browser.quick_button(:name, "Destails_expand").toggle_with_click.should == 1
159
+ browser.quick_button(:name, "Details_expand").toggle_with_click.should == 1
160
160
  end
161
161
 
162
162
  it 'returns value = 0 of button when button is unpressed' do
163
- browser.quick_button(:name, "Destails_expand").toggle_with_click.should == 0
163
+ browser.quick_button(:name, "Details_expand").toggle_with_click.should == 0
164
164
  browser.close_dialog("Clear Private Data Dialog").should close_dialog
165
165
  end
166
166
 
@@ -182,13 +182,13 @@ describe 'QuickButton' do
182
182
  end
183
183
 
184
184
  it 'expands dialog with click' do
185
- browser.quick_button(:name, "Destails_expand").expand_with_click
185
+ browser.quick_button(:name, "Details_expand").expand_with_click
186
186
  browser.quick_button(:name, "button_manage_wand").should be_visible
187
187
  end
188
188
 
189
189
 
190
190
  it 'collapses dialog with click ' do
191
- browser.quick_button(:name, "Destails_expand").expand_with_click
191
+ browser.quick_button(:name, "Details_expand").expand_with_click
192
192
  browser.quick_button(:name, "button_manage_wand").should_not be_visible
193
193
  end
194
194
 
@@ -208,13 +208,13 @@ describe 'QuickButton' do
208
208
  end
209
209
 
210
210
  it 'returns 1 when button is pressed' do
211
- browser.quick_button(:name, "Destails_expand").toggle_with_click.should == 1
212
- browser.quick_button(:name, "Destails_expand").value.should == 1
211
+ browser.quick_button(:name, "Details_expand").toggle_with_click.should == 1
212
+ browser.quick_button(:name, "Details_expand").value.should == 1
213
213
  end
214
214
 
215
215
  it 'returns 0 when button is unpressed' do
216
- browser.quick_button(:name, "Destails_expand").toggle_with_click.should == 0
217
- browser.quick_button(:name, "Destails_expand").value.should == 0
216
+ browser.quick_button(:name, "Details_expand").toggle_with_click.should == 0
217
+ browser.quick_button(:name, "Details_expand").value.should == 0
218
218
  end
219
219
 
220
220
  after(:all) do
metadata CHANGED
@@ -1,8 +1,8 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: operawatir
3
3
  version: !ruby/object:Gem::Version
4
- prerelease:
5
- version: 0.5.1
4
+ prerelease: 4
5
+ version: 0.6.pre1
6
6
  platform: jruby
7
7
  authors:
8
8
  - Andreas Tolf Tolfsen
@@ -13,8 +13,7 @@ autorequire:
13
13
  bindir: bin
14
14
  cert_chain: []
15
15
 
16
- date: 2011-09-20 00:00:00 +02:00
17
- default_executable:
16
+ date: 2011-12-01 00:00:00 Z
18
17
  dependencies:
19
18
  - !ruby/object:Gem::Dependency
20
19
  name: bundler
@@ -285,12 +284,13 @@ files:
285
284
  - bin/operawatir
286
285
  - lib/operadriver/APACHE_2.0_LICENSE.txt
287
286
  - lib/operadriver/NEW_BSD_LICENSE.txt
288
- - lib/operadriver/commons-io-2.0.1.jar
287
+ - lib/operadriver/commons-exec-1.1.jar
289
288
  - lib/operadriver/commons-jxpath-1.3.jar
290
- - lib/operadriver/guava-r09.jar
291
- - lib/operadriver/operadriver-v0.7.3.jar
289
+ - lib/operadriver/guava-10.0.1.jar
290
+ - lib/operadriver/operadriver-v0.8.1.jar
291
+ - lib/operadriver/operalaunchers-0.3.jar
292
292
  - lib/operadriver/protobuf-java-2.4.1.jar
293
- - lib/operadriver/selenium-nodeps-20100909.jar
293
+ - lib/operadriver/selenium-java-2.13.0.jar
294
294
  - lib/operawatir.rb
295
295
  - lib/operawatir/actions.rb
296
296
  - lib/operawatir/browser.rb
@@ -538,7 +538,6 @@ files:
538
538
  - utils/formatters/new_spartan_formatter.rb
539
539
  - utils/formatters/operahelper_formatter.rb
540
540
  - utils/formatters/spartan_formatter.rb
541
- has_rdoc: true
542
541
  homepage: http://www.opera.com/developer/tools/operawatir/
543
542
  licenses: []
544
543
 
@@ -556,13 +555,13 @@ required_ruby_version: !ruby/object:Gem::Requirement
556
555
  required_rubygems_version: !ruby/object:Gem::Requirement
557
556
  none: false
558
557
  requirements:
559
- - - ">="
558
+ - - ">"
560
559
  - !ruby/object:Gem::Version
561
- version: "0"
560
+ version: 1.3.1
562
561
  requirements: []
563
562
 
564
563
  rubyforge_project: operawatir
565
- rubygems_version: 1.5.1
564
+ rubygems_version: 1.8.9
566
565
  signing_key:
567
566
  specification_version: 3
568
567
  summary: Toolkit for automating interactions with the Opera web browser.
Binary file
Binary file