gwt_widgets 0.0.1
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/.gitignore +10 -0
- data/.rvmrc +1 -0
- data/.travis.yml +5 -0
- data/Gemfile +10 -0
- data/README.md +21 -0
- data/Rakefile +33 -0
- data/cucumber.yml +12 -0
- data/features/support/env.rb +8 -0
- data/features/support/hooks.rb +7 -0
- data/features/support/persistent_browser.rb +20 -0
- data/gwt_widget.gemspec +31 -0
- data/lib/gwt_widgets/version.rb +3 -0
- data/lib/gwt_widgets.rb +6 -0
- metadata +180 -0
data/.gitignore
ADDED
data/.rvmrc
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
rvm 1.9.3-p392@gwt_widgets --create
|
data/.travis.yml
ADDED
data/Gemfile
ADDED
data/README.md
ADDED
@@ -0,0 +1,21 @@
|
|
1
|
+
This is a collection of widgets which simplify the testing of a GWT web applications by extending the page-object gem.
|
2
|
+
|
3
|
+
TODO: CAN HAZ MOAR READMEZ
|
4
|
+
|
5
|
+
## Known Issues
|
6
|
+
|
7
|
+
See [http://github.com/joelbyler/gwt_widgets/issues](http://github.com/joelbyler/gwt_widgets/issues)
|
8
|
+
|
9
|
+
## Contribute
|
10
|
+
|
11
|
+
* Fork the project.
|
12
|
+
* Test drive your feature addition or bug fix. Adding specs is important and I will not accept a pull request that does not have tests.
|
13
|
+
* Make sure you describe your new feature with a cucumber scenario.
|
14
|
+
* Make sure you provide RDoc comments for any new public method you add. Remember, others will be using this gem.
|
15
|
+
* Commit, do not mess with Rakefile, version, or ChangeLog.
|
16
|
+
(if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)
|
17
|
+
* Send me a pull request. Bonus points for topic branches.
|
18
|
+
|
19
|
+
## Copyright
|
20
|
+
|
21
|
+
Copyright (c) 2013 Joel Byler. See LICENSE for details.
|
data/Rakefile
ADDED
@@ -0,0 +1,33 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'bundler/gem_tasks'
|
3
|
+
require 'cucumber'
|
4
|
+
require 'cucumber/rake/task'
|
5
|
+
require 'rspec/core/rake_task'
|
6
|
+
|
7
|
+
Bundler::GemHelper.install_tasks
|
8
|
+
|
9
|
+
RSpec::Core::RakeTask.new(:spec) do |spec|
|
10
|
+
spec.ruby_opts = "-I lib:spec"
|
11
|
+
spec.pattern = 'spec/**/*_spec.rb'
|
12
|
+
end
|
13
|
+
|
14
|
+
task :spec
|
15
|
+
|
16
|
+
namespace :features do
|
17
|
+
Cucumber::Rake::Task.new(:watir_webdriver, "Run features with Watir") do |t|
|
18
|
+
t.profile = "default"
|
19
|
+
end
|
20
|
+
|
21
|
+
Cucumber::Rake::Task.new(:selenium_webdriver, "Run features with Selenium") do |t|
|
22
|
+
t.profile = "sfirefox"
|
23
|
+
end
|
24
|
+
|
25
|
+
desc 'Run all features'
|
26
|
+
task :all => [:watir_webdriver, :selenium_webdriver]
|
27
|
+
end
|
28
|
+
|
29
|
+
desc 'Run all specs and cukes'
|
30
|
+
task :test => ['spec', 'features:all']
|
31
|
+
|
32
|
+
task :default => :test
|
33
|
+
|
data/cucumber.yml
ADDED
@@ -0,0 +1,12 @@
|
|
1
|
+
<%
|
2
|
+
std_opts = "--no-source --color --format Cucumber::Formatter::Fuubar --tags ~@ignore"
|
3
|
+
%>
|
4
|
+
|
5
|
+
default: BROWSER=firefox DRIVER=WATIR <%= std_opts %> --tags ~@selenium_only
|
6
|
+
sfirefox: BROWSER=firefox DRIVER=SELENIUM <%= std_opts %> --tags ~@watir_only
|
7
|
+
wchrome: BROWSER=chrome DRIVER=WATIR <%= std_opts %> --tags ~@selenium_only
|
8
|
+
schrome: BROWSER=chrome DRIVER=SELENIUM <%= std_opts %> --tags ~@watir_only
|
9
|
+
wie: BROWSER=ie DRIVER=WATIR <%= std_opts %> --tags ~@selenium_only
|
10
|
+
sie: BROWSER=ie DRIVER=SELENIUM <%= std_opts %> --tags ~@watir_only
|
11
|
+
focus: BROWSER=firefox DRIVER=WATIR <%= std_opts %> --tags @focus ~@selenium_only
|
12
|
+
|
@@ -0,0 +1,20 @@
|
|
1
|
+
require 'watir-webdriver'
|
2
|
+
require 'selenium-webdriver'
|
3
|
+
|
4
|
+
module PageObject
|
5
|
+
module PersistantBrowser
|
6
|
+
@@browser = false
|
7
|
+
def self.get_browser
|
8
|
+
if !@@browser
|
9
|
+
target_browser = ENV['BROWSER'].to_sym
|
10
|
+
@@browser = Watir::Browser.new target_browser if ENV['DRIVER'] == 'WATIR'
|
11
|
+
@@browser = Selenium::WebDriver.for target_browser if ENV['DRIVER'] == 'SELENIUM'
|
12
|
+
end
|
13
|
+
|
14
|
+
@@browser
|
15
|
+
end
|
16
|
+
def self.quit
|
17
|
+
@@browser.quit
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
data/gwt_widget.gemspec
ADDED
@@ -0,0 +1,31 @@
|
|
1
|
+
# -*- encoding: utf-8 -*-
|
2
|
+
$:.push File.expand_path("../lib", __FILE__)
|
3
|
+
require "gwt_widgets/version"
|
4
|
+
|
5
|
+
Gem::Specification.new do |s|
|
6
|
+
s.name = "gwt_widgets"
|
7
|
+
s.version = GwtWidgets::VERSION
|
8
|
+
s.platform = Gem::Platform::RUBY
|
9
|
+
s.authors = ["Joel Byler"]
|
10
|
+
s.email = ["joelbyler@gmail.com"]
|
11
|
+
s.homepage = "http://github.com/joelbyler/gwt_widgets"
|
12
|
+
s.summary = %q{PageObject Widgets extention for GWT apps}
|
13
|
+
s.description = %q{A page-object extension for GWT apps, to support cucumber tests}
|
14
|
+
|
15
|
+
s.rubyforge_project = "gwt_widgets"
|
16
|
+
|
17
|
+
s.files = `git ls-files`.split("\n")
|
18
|
+
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
19
|
+
s.executables = `git ls-files -- bin/*`.split("\n").map { |f| File.basename(f) }
|
20
|
+
s.require_paths = ["lib"]
|
21
|
+
|
22
|
+
s.add_dependency 'page-object', '>= 0.8.2'
|
23
|
+
|
24
|
+
s.add_development_dependency 'rspec', '>= 2.12.0'
|
25
|
+
s.add_development_dependency 'cucumber', '< 1.2.0'
|
26
|
+
s.add_development_dependency 'yard', '>= 0.7.2'
|
27
|
+
s.add_development_dependency 'rack', '>= 1.0'
|
28
|
+
s.add_development_dependency 'watir-webdriver', '>= 0.6.2'
|
29
|
+
s.add_development_dependency 'selenium-webdriver', '>= 2.27.2'
|
30
|
+
|
31
|
+
end
|
data/lib/gwt_widgets.rb
ADDED
metadata
ADDED
@@ -0,0 +1,180 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: gwt_widgets
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
prerelease:
|
6
|
+
platform: ruby
|
7
|
+
authors:
|
8
|
+
- Joel Byler
|
9
|
+
autorequire:
|
10
|
+
bindir: bin
|
11
|
+
cert_chain: []
|
12
|
+
date: 2013-03-01 00:00:00.000000000 Z
|
13
|
+
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: page-object
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
18
|
+
requirements:
|
19
|
+
- - ! '>='
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: 0.8.2
|
22
|
+
type: :runtime
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ! '>='
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: 0.8.2
|
30
|
+
- !ruby/object:Gem::Dependency
|
31
|
+
name: rspec
|
32
|
+
requirement: !ruby/object:Gem::Requirement
|
33
|
+
none: false
|
34
|
+
requirements:
|
35
|
+
- - ! '>='
|
36
|
+
- !ruby/object:Gem::Version
|
37
|
+
version: 2.12.0
|
38
|
+
type: :development
|
39
|
+
prerelease: false
|
40
|
+
version_requirements: !ruby/object:Gem::Requirement
|
41
|
+
none: false
|
42
|
+
requirements:
|
43
|
+
- - ! '>='
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: 2.12.0
|
46
|
+
- !ruby/object:Gem::Dependency
|
47
|
+
name: cucumber
|
48
|
+
requirement: !ruby/object:Gem::Requirement
|
49
|
+
none: false
|
50
|
+
requirements:
|
51
|
+
- - <
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: 1.2.0
|
54
|
+
type: :development
|
55
|
+
prerelease: false
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
none: false
|
58
|
+
requirements:
|
59
|
+
- - <
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: 1.2.0
|
62
|
+
- !ruby/object:Gem::Dependency
|
63
|
+
name: yard
|
64
|
+
requirement: !ruby/object:Gem::Requirement
|
65
|
+
none: false
|
66
|
+
requirements:
|
67
|
+
- - ! '>='
|
68
|
+
- !ruby/object:Gem::Version
|
69
|
+
version: 0.7.2
|
70
|
+
type: :development
|
71
|
+
prerelease: false
|
72
|
+
version_requirements: !ruby/object:Gem::Requirement
|
73
|
+
none: false
|
74
|
+
requirements:
|
75
|
+
- - ! '>='
|
76
|
+
- !ruby/object:Gem::Version
|
77
|
+
version: 0.7.2
|
78
|
+
- !ruby/object:Gem::Dependency
|
79
|
+
name: rack
|
80
|
+
requirement: !ruby/object:Gem::Requirement
|
81
|
+
none: false
|
82
|
+
requirements:
|
83
|
+
- - ! '>='
|
84
|
+
- !ruby/object:Gem::Version
|
85
|
+
version: '1.0'
|
86
|
+
type: :development
|
87
|
+
prerelease: false
|
88
|
+
version_requirements: !ruby/object:Gem::Requirement
|
89
|
+
none: false
|
90
|
+
requirements:
|
91
|
+
- - ! '>='
|
92
|
+
- !ruby/object:Gem::Version
|
93
|
+
version: '1.0'
|
94
|
+
- !ruby/object:Gem::Dependency
|
95
|
+
name: watir-webdriver
|
96
|
+
requirement: !ruby/object:Gem::Requirement
|
97
|
+
none: false
|
98
|
+
requirements:
|
99
|
+
- - ! '>='
|
100
|
+
- !ruby/object:Gem::Version
|
101
|
+
version: 0.6.2
|
102
|
+
type: :development
|
103
|
+
prerelease: false
|
104
|
+
version_requirements: !ruby/object:Gem::Requirement
|
105
|
+
none: false
|
106
|
+
requirements:
|
107
|
+
- - ! '>='
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
version: 0.6.2
|
110
|
+
- !ruby/object:Gem::Dependency
|
111
|
+
name: selenium-webdriver
|
112
|
+
requirement: !ruby/object:Gem::Requirement
|
113
|
+
none: false
|
114
|
+
requirements:
|
115
|
+
- - ! '>='
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: 2.27.2
|
118
|
+
type: :development
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
none: false
|
122
|
+
requirements:
|
123
|
+
- - ! '>='
|
124
|
+
- !ruby/object:Gem::Version
|
125
|
+
version: 2.27.2
|
126
|
+
description: A page-object extension for GWT apps, to support cucumber tests
|
127
|
+
email:
|
128
|
+
- joelbyler@gmail.com
|
129
|
+
executables: []
|
130
|
+
extensions: []
|
131
|
+
extra_rdoc_files: []
|
132
|
+
files:
|
133
|
+
- .gitignore
|
134
|
+
- .rvmrc
|
135
|
+
- .travis.yml
|
136
|
+
- Gemfile
|
137
|
+
- README.md
|
138
|
+
- Rakefile
|
139
|
+
- cucumber.yml
|
140
|
+
- features/support/env.rb
|
141
|
+
- features/support/hooks.rb
|
142
|
+
- features/support/persistent_browser.rb
|
143
|
+
- gwt_widget.gemspec
|
144
|
+
- lib/gwt_widgets.rb
|
145
|
+
- lib/gwt_widgets/version.rb
|
146
|
+
homepage: http://github.com/joelbyler/gwt_widgets
|
147
|
+
licenses: []
|
148
|
+
post_install_message:
|
149
|
+
rdoc_options: []
|
150
|
+
require_paths:
|
151
|
+
- lib
|
152
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
153
|
+
none: false
|
154
|
+
requirements:
|
155
|
+
- - ! '>='
|
156
|
+
- !ruby/object:Gem::Version
|
157
|
+
version: '0'
|
158
|
+
segments:
|
159
|
+
- 0
|
160
|
+
hash: 2044620141943493147
|
161
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
162
|
+
none: false
|
163
|
+
requirements:
|
164
|
+
- - ! '>='
|
165
|
+
- !ruby/object:Gem::Version
|
166
|
+
version: '0'
|
167
|
+
segments:
|
168
|
+
- 0
|
169
|
+
hash: 2044620141943493147
|
170
|
+
requirements: []
|
171
|
+
rubyforge_project: gwt_widgets
|
172
|
+
rubygems_version: 1.8.25
|
173
|
+
signing_key:
|
174
|
+
specification_version: 3
|
175
|
+
summary: PageObject Widgets extention for GWT apps
|
176
|
+
test_files:
|
177
|
+
- features/support/env.rb
|
178
|
+
- features/support/hooks.rb
|
179
|
+
- features/support/persistent_browser.rb
|
180
|
+
has_rdoc:
|