acceptance_tests_support 1.0.0 → 1.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/CHANGES +4 -0
- data/lib/acceptance_tests_support/acceptance_tests_support.rb +94 -56
- data/lib/acceptance_tests_support/version.rb +1 -1
- data/projectFilesBackup/.idea/acceptance_tests_support.iml +26 -0
- metadata +3 -10
- data/.idea/.name +0 -1
- data/.idea/.rakeTasks +0 -7
- data/.idea/acceptance_tests_support.iml +0 -34
- data/.idea/encodings.xml +0 -5
- data/.idea/misc.xml +0 -23
- data/.idea/modules.xml +0 -9
- data/.idea/scopes/scope_settings.xml +0 -5
- data/.idea/vcs.xml +0 -7
data/CHANGES
CHANGED
@@ -32,57 +32,35 @@ class AcceptanceTestsSupport
|
|
32
32
|
set_defaults
|
33
33
|
|
34
34
|
configure
|
35
|
-
|
36
|
-
register_drivers
|
37
35
|
end
|
38
36
|
|
39
37
|
def before context
|
40
|
-
driver = context
|
38
|
+
driver = driver(context)
|
41
39
|
|
42
40
|
if driver
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
elsif [:selenium_remote].include? driver
|
41
|
+
register_driver driver
|
42
|
+
|
43
|
+
select_driver driver
|
44
|
+
|
45
|
+
if driver.to_s =~ /selenium/
|
49
46
|
puts "\nSelenium Configuration: #{@selenium_config[:name]}"
|
50
47
|
puts "Environment: #{@selenium_config[:env]}"
|
51
48
|
puts "Application: #{@selenium_config[:webapp_url]}"
|
52
49
|
puts "Selenium: #{@selenium_config[:selenium_host]}:#{@selenium_config[:selenium_port]}"
|
53
|
-
|
54
|
-
selenium_app_host = app_host_from_url(@selenium_config[:webapp_url])
|
55
|
-
setup_app_host selenium_app_host
|
56
|
-
|
57
|
-
Rails.env = @selenium_config[:env]
|
58
|
-
|
59
|
-
Capybara.current_driver = driver
|
60
|
-
else
|
61
|
-
Capybara.current_driver = Capybara.default_driver
|
62
|
-
end
|
63
|
-
else
|
64
|
-
driver = ENV['DRIVER']
|
65
|
-
|
66
|
-
if driver
|
67
|
-
Capybara.current_driver = driver.to_sym
|
68
|
-
else
|
69
|
-
Capybara.current_driver = :webkit
|
70
50
|
end
|
71
51
|
end
|
72
52
|
|
73
|
-
setup_app_host
|
53
|
+
setup_app_host app_host
|
74
54
|
end
|
75
55
|
|
76
56
|
def after context
|
77
57
|
context.reset_session!
|
78
58
|
|
79
59
|
if context.example.exception
|
80
|
-
driver = context
|
60
|
+
driver = driver(context)
|
81
61
|
|
82
|
-
if driver
|
83
|
-
|
84
|
-
save_screenshot context.example, context.page
|
85
|
-
end
|
62
|
+
if driver and not [:webkit].include? driver
|
63
|
+
save_screenshot context.example, context.page
|
86
64
|
end
|
87
65
|
end
|
88
66
|
|
@@ -105,19 +83,10 @@ class AcceptanceTestsSupport
|
|
105
83
|
require 'rspec/rails'
|
106
84
|
require 'rspec/autorun'
|
107
85
|
|
108
|
-
require "capybara/rails"
|
109
|
-
|
110
|
-
require 'capybara/rspec'
|
111
|
-
require "capybara-webkit"
|
112
|
-
require 'capybara/poltergeist'
|
113
|
-
|
114
86
|
require "capybara"
|
115
87
|
require "capybara/dsl"
|
116
|
-
require 'capybara/
|
117
|
-
|
118
|
-
#Selenium::WebDriver::Firefox::Profile.firebug_version = '1.11.2'
|
119
|
-
|
120
|
-
#Selenium::WebDriver::Firefox::Profile.enable_firebug
|
88
|
+
require 'capybara/rspec'
|
89
|
+
require "capybara/rails"
|
121
90
|
|
122
91
|
RSpec.configure do |config|
|
123
92
|
config.filter_run_excluding :exclude => true
|
@@ -125,7 +94,6 @@ class AcceptanceTestsSupport
|
|
125
94
|
|
126
95
|
RSpec.configure do |config|
|
127
96
|
config.include Capybara::DSL
|
128
|
-
#config.include Rails.application.routes.url_helpers, :type => :acceptance
|
129
97
|
end
|
130
98
|
|
131
99
|
RSpec::Core::ExampleGroup.send :include, Capybara::DSL
|
@@ -151,24 +119,94 @@ class AcceptanceTestsSupport
|
|
151
119
|
#
|
152
120
|
end
|
153
121
|
|
154
|
-
def
|
155
|
-
|
156
|
-
|
157
|
-
|
122
|
+
def register_driver driver
|
123
|
+
case driver
|
124
|
+
when :webkit
|
125
|
+
require "capybara-webkit"
|
126
|
+
|
127
|
+
when :selenium
|
128
|
+
# nothing
|
129
|
+
|
130
|
+
when :selenium_with_firebug
|
131
|
+
require 'capybara/firebug'
|
132
|
+
|
133
|
+
#Capybara.register_driver :selenium_with_firebug do |app|
|
134
|
+
# profile = Selenium::WebDriver::Firefox::Profile.new
|
135
|
+
# profile.enable_firebug
|
136
|
+
# Capybara::Selenium::Driver.new(app, :browser => :firefox, :profile => profile)
|
137
|
+
#end
|
138
|
+
|
139
|
+
#Selenium::WebDriver::Firefox::Profile.firebug_version = '1.11.2'
|
140
|
+
when :selenium_chrome
|
141
|
+
unless Capybara.drivers[:selenium_chrome]
|
142
|
+
Capybara.register_driver :selenium_chrome do |app|
|
143
|
+
Capybara::Selenium::Driver.new(app, :browser => :chrome)
|
144
|
+
end
|
145
|
+
end
|
146
|
+
|
147
|
+
when :poltergeist
|
148
|
+
require 'capybara/poltergeist'
|
158
149
|
|
159
|
-
|
160
|
-
|
150
|
+
unless Capybara.drivers[:poltergeist]
|
151
|
+
Capybara.register_driver :poltergeist do |app|
|
152
|
+
Capybara::Poltergeist::Driver.new(app, { debug: false })
|
153
|
+
end
|
154
|
+
end
|
155
|
+
|
156
|
+
when :selenium_remote
|
157
|
+
unless Capybara.drivers[:selenium_remote]
|
158
|
+
selenium_url = "http://#{@selenium_config[:selenium_host]}:#{@selenium_config[:selenium_port]}/wd/hub"
|
159
|
+
|
160
|
+
Capybara.register_driver :selenium_remote do |app|
|
161
|
+
Capybara::Selenium::Driver.new(app, {:browser => :remote, :url => selenium_url})
|
162
|
+
|
163
|
+
#profile = Selenium::WebDriver::Firefox::Profile.new
|
164
|
+
#profile.enable_firebug
|
165
|
+
#
|
166
|
+
#Capybara::Driver::Selenium.new(app, {
|
167
|
+
# :browser => :remote,
|
168
|
+
# :url => selenium_url,
|
169
|
+
# :desired_capabilities => Selenium::WebDriver::Remote::Capabilities.firefox(:firefox_profile => profile)
|
170
|
+
#})
|
171
|
+
end
|
172
|
+
end
|
173
|
+
when :selenium_safari
|
174
|
+
unless Capybara.drivers[:selenium_safari]
|
175
|
+
Capybara.register_driver :selenium_safari do |app|
|
176
|
+
Capybara::Selenium::Driver.new(app, :browser => :safari)
|
177
|
+
end
|
178
|
+
end
|
179
|
+
else
|
180
|
+
# nothing
|
161
181
|
end
|
182
|
+
end
|
183
|
+
|
184
|
+
def select_driver driver
|
185
|
+
if [:js, :javascript].include? driver
|
186
|
+
Capybara.current_driver = Capybara.javascript_driver
|
187
|
+
elsif [:webkit, :selenium, :selenium_with_firebug, :selenium_chrome, :poltergeist].include? driver
|
188
|
+
Capybara.current_driver = driver
|
189
|
+
Capybara.javascript_driver = driver
|
190
|
+
elsif [:selenium_remote].include? driver
|
191
|
+
selenium_app_host = app_host_from_url(@selenium_config[:webapp_url])
|
192
|
+
setup_app_host selenium_app_host
|
162
193
|
|
163
|
-
|
194
|
+
Rails.env = @selenium_config[:env]
|
164
195
|
|
165
|
-
|
166
|
-
|
196
|
+
Capybara.current_driver = driver
|
197
|
+
else
|
198
|
+
Capybara.current_driver = Capybara.default_driver
|
167
199
|
end
|
200
|
+
end
|
168
201
|
|
169
|
-
|
170
|
-
|
171
|
-
|
202
|
+
def driver context
|
203
|
+
driver = ENV['DRIVER'].nil? ? nil : ENV['DRIVER'].to_sym
|
204
|
+
|
205
|
+
driver = context.example.metadata[:driver] if driver.nil?
|
206
|
+
|
207
|
+
driver = :webkit if driver.nil?
|
208
|
+
|
209
|
+
driver
|
172
210
|
end
|
173
211
|
|
174
212
|
def setup_app_host app_host
|
@@ -0,0 +1,26 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<module type="RUBY_MODULE" version="4">
|
3
|
+
<component name="NewModuleRootManager">
|
4
|
+
<content url="file://$MODULE_DIR$" />
|
5
|
+
<orderEntry type="inheritedJdk" />
|
6
|
+
<orderEntry type="sourceFolder" forTests="false" />
|
7
|
+
<orderEntry type="library" scope="PROVIDED" name="bundler (v1.3.5, RVM: ruby-1.9.3-p429 [rails_app_tmpl]) [gem]" level="application" />
|
8
|
+
<orderEntry type="library" scope="PROVIDED" name="capybara (v2.1.0, RVM: ruby-1.9.3-p429 [rails_app_tmpl]) [gem]" level="application" />
|
9
|
+
<orderEntry type="library" scope="PROVIDED" name="capybara-firebug (v1.3.0, RVM: ruby-1.9.3-p429 [rails_app_tmpl]) [gem]" level="application" />
|
10
|
+
<orderEntry type="library" scope="PROVIDED" name="capybara-webkit (v1.0.0, RVM: ruby-1.9.3-p429 [rails_app_tmpl]) [gem]" level="application" />
|
11
|
+
<orderEntry type="library" scope="PROVIDED" name="cucumber (v1.3.2, RVM: ruby-1.9.3-p429 [rails_app_tmpl]) [gem]" level="application" />
|
12
|
+
<orderEntry type="library" scope="PROVIDED" name="diff-lcs (v1.2.4, RVM: ruby-1.9.3-p429 [rails_app_tmpl]) [gem]" level="application" />
|
13
|
+
<orderEntry type="library" scope="PROVIDED" name="file_utils (v1.0.6, RVM: ruby-1.9.3-p429 [rails_app_tmpl]) [gem]" level="application" />
|
14
|
+
<orderEntry type="library" scope="PROVIDED" name="gherkin (v2.12.0, RVM: ruby-1.9.3-p429 [rails_app_tmpl]) [gem]" level="application" />
|
15
|
+
<orderEntry type="library" scope="PROVIDED" name="metaclass (v0.0.1, RVM: ruby-1.9.3-p429 [rails_app_tmpl]) [gem]" level="application" />
|
16
|
+
<orderEntry type="library" scope="PROVIDED" name="mime-types (v1.23, RVM: ruby-1.9.3-p429 [rails_app_tmpl]) [gem]" level="application" />
|
17
|
+
<orderEntry type="library" scope="PROVIDED" name="mocha (v0.14.0, RVM: ruby-1.9.3-p429 [rails_app_tmpl]) [gem]" level="application" />
|
18
|
+
<orderEntry type="library" scope="PROVIDED" name="multi_json (v1.7.6, RVM: ruby-1.9.3-p429 [rails_app_tmpl]) [gem]" level="application" />
|
19
|
+
<orderEntry type="library" scope="PROVIDED" name="nokogiri (v1.5.10, RVM: ruby-1.9.3-p429 [rails_app_tmpl]) [gem]" level="application" />
|
20
|
+
<orderEntry type="library" scope="PROVIDED" name="rack-test (v0.6.2, RVM: ruby-1.9.3-p429 [rails_app_tmpl]) [gem]" level="application" />
|
21
|
+
<orderEntry type="library" scope="PROVIDED" name="rspec-core (v2.13.1, RVM: ruby-1.9.3-p429 [rails_app_tmpl]) [gem]" level="application" />
|
22
|
+
<orderEntry type="library" scope="PROVIDED" name="rspec-expectations (v2.13.0, RVM: ruby-1.9.3-p429 [rails_app_tmpl]) [gem]" level="application" />
|
23
|
+
<orderEntry type="library" scope="PROVIDED" name="xpath (v2.0.0, RVM: ruby-1.9.3-p429 [rails_app_tmpl]) [gem]" level="application" />
|
24
|
+
</component>
|
25
|
+
</module>
|
26
|
+
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: acceptance_tests_support
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.1
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2013-
|
12
|
+
date: 2013-08-07 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: gemspec_deps_gen
|
@@ -50,14 +50,6 @@ extensions: []
|
|
50
50
|
extra_rdoc_files: []
|
51
51
|
files:
|
52
52
|
- .gitignore
|
53
|
-
- .idea/.name
|
54
|
-
- .idea/.rakeTasks
|
55
|
-
- .idea/acceptance_tests_support.iml
|
56
|
-
- .idea/encodings.xml
|
57
|
-
- .idea/misc.xml
|
58
|
-
- .idea/modules.xml
|
59
|
-
- .idea/scopes/scope_settings.xml
|
60
|
-
- .idea/vcs.xml
|
61
53
|
- .ruby-gemset
|
62
54
|
- .ruby-version
|
63
55
|
- CHANGES
|
@@ -73,6 +65,7 @@ files:
|
|
73
65
|
- lib/acceptance_tests_support/acceptance_shared_context.rb
|
74
66
|
- lib/acceptance_tests_support/acceptance_tests_support.rb
|
75
67
|
- lib/acceptance_tests_support/version.rb
|
68
|
+
- projectFilesBackup/.idea/acceptance_tests_support.iml
|
76
69
|
homepage: http://github.com/shvets/acceptance_tests_support
|
77
70
|
licenses: []
|
78
71
|
post_install_message:
|
data/.idea/.name
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
acceptance_tests_support
|
data/.idea/.rakeTasks
DELETED
@@ -1,7 +0,0 @@
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
-
<Settings><!--This file was automatically generated by Ruby plugin.
|
3
|
-
You are allowed to:
|
4
|
-
1. Remove rake task
|
5
|
-
2. Add existing rake tasks
|
6
|
-
To add existing rake tasks automatically delete this file and reload the project.
|
7
|
-
--><RakeGroup description="" fullCmd="" taksId="rake" /></Settings>
|
@@ -1,34 +0,0 @@
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
-
<module type="RUBY_MODULE" version="4">
|
3
|
-
<component name="FacetManager">
|
4
|
-
<facet type="gem" name="Gem">
|
5
|
-
<configuration>
|
6
|
-
<option name="GEM_APP_ROOT_PATH" value="$MODULE_DIR$" />
|
7
|
-
<option name="GEM_APP_TEST_PATH" value="" />
|
8
|
-
<option name="GEM_APP_LIB_PATH" value="$MODULE_DIR$/lib" />
|
9
|
-
</configuration>
|
10
|
-
</facet>
|
11
|
-
</component>
|
12
|
-
<component name="NewModuleRootManager">
|
13
|
-
<content url="file://$MODULE_DIR$" />
|
14
|
-
<orderEntry type="inheritedJdk" />
|
15
|
-
<orderEntry type="sourceFolder" forTests="false" />
|
16
|
-
<orderEntry type="library" scope="PROVIDED" name="bundler (v1.3.1, RVM: ruby-1.9.3-p429 [r23]) [gem]" level="application" />
|
17
|
-
<orderEntry type="library" scope="PROVIDED" name="capybara (v2.1.0, RVM: ruby-1.9.3-p429 [r23]) [gem]" level="application" />
|
18
|
-
<orderEntry type="library" scope="PROVIDED" name="capybara-firebug (v1.3.0, RVM: ruby-1.9.3-p429 [r23]) [gem]" level="application" />
|
19
|
-
<orderEntry type="library" scope="PROVIDED" name="capybara-webkit (v1.0.0, RVM: ruby-1.9.3-p429 [r23]) [gem]" level="application" />
|
20
|
-
<orderEntry type="library" scope="PROVIDED" name="cucumber (v1.3.2, RVM: ruby-1.9.3-p429 [r23]) [gem]" level="application" />
|
21
|
-
<orderEntry type="library" scope="PROVIDED" name="diff-lcs (v1.2.4, RVM: ruby-1.9.3-p429 [r23]) [gem]" level="application" />
|
22
|
-
<orderEntry type="library" scope="PROVIDED" name="file_utils (v1.0.6, RVM: ruby-1.9.3-p429 [r23]) [gem]" level="application" />
|
23
|
-
<orderEntry type="library" scope="PROVIDED" name="gherkin (v2.12.0, RVM: ruby-1.9.3-p429 [r23]) [gem]" level="application" />
|
24
|
-
<orderEntry type="library" scope="PROVIDED" name="metaclass (v0.0.1, RVM: ruby-1.9.3-p429 [r23]) [gem]" level="application" />
|
25
|
-
<orderEntry type="library" scope="PROVIDED" name="mime-types (v1.23, RVM: ruby-1.9.3-p429 [r23]) [gem]" level="application" />
|
26
|
-
<orderEntry type="library" scope="PROVIDED" name="mocha (v0.14.0, RVM: ruby-1.9.3-p429 [r23]) [gem]" level="application" />
|
27
|
-
<orderEntry type="library" scope="PROVIDED" name="multi_json (v1.7.6, RVM: ruby-1.9.3-p429 [r23]) [gem]" level="application" />
|
28
|
-
<orderEntry type="library" scope="PROVIDED" name="rack-test (v0.6.2, RVM: ruby-1.9.3-p429 [r23]) [gem]" level="application" />
|
29
|
-
<orderEntry type="library" scope="PROVIDED" name="rspec-core (v2.13.1, RVM: ruby-1.9.3-p429 [r23]) [gem]" level="application" />
|
30
|
-
<orderEntry type="library" scope="PROVIDED" name="rspec-expectations (v2.13.0, RVM: ruby-1.9.3-p429 [r23]) [gem]" level="application" />
|
31
|
-
<orderEntry type="library" scope="PROVIDED" name="xpath (v2.0.0, RVM: ruby-1.9.3-p429 [r23]) [gem]" level="application" />
|
32
|
-
</component>
|
33
|
-
</module>
|
34
|
-
|
data/.idea/encodings.xml
DELETED
data/.idea/misc.xml
DELETED
@@ -1,23 +0,0 @@
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
-
<project version="4">
|
3
|
-
<component name="ProjectRootManager" version="2" project-jdk-name="RVM: ruby-1.9.3-p429 [r23]" project-jdk-type="RUBY_SDK" />
|
4
|
-
<component name="SvnConfiguration" maxAnnotateRevisions="500" myUseAcceleration="nothing" myAutoUpdateAfterCommit="false" cleanupOnStartRun="false">
|
5
|
-
<option name="USER" value="" />
|
6
|
-
<option name="PASSWORD" value="" />
|
7
|
-
<option name="mySSHConnectionTimeout" value="30000" />
|
8
|
-
<option name="mySSHReadTimeout" value="30000" />
|
9
|
-
<option name="LAST_MERGED_REVISION" />
|
10
|
-
<option name="MERGE_DRY_RUN" value="false" />
|
11
|
-
<option name="MERGE_DIFF_USE_ANCESTRY" value="true" />
|
12
|
-
<option name="UPDATE_LOCK_ON_DEMAND" value="false" />
|
13
|
-
<option name="IGNORE_SPACES_IN_MERGE" value="false" />
|
14
|
-
<option name="DETECT_NESTED_COPIES" value="true" />
|
15
|
-
<option name="CHECK_NESTED_FOR_QUICK_MERGE" value="false" />
|
16
|
-
<option name="IGNORE_SPACES_IN_ANNOTATE" value="true" />
|
17
|
-
<option name="SHOW_MERGE_SOURCES_IN_ANNOTATE" value="true" />
|
18
|
-
<option name="FORCE_UPDATE" value="false" />
|
19
|
-
<option name="IGNORE_EXTERNALS" value="false" />
|
20
|
-
<myIsUseDefaultProxy>false</myIsUseDefaultProxy>
|
21
|
-
</component>
|
22
|
-
</project>
|
23
|
-
|
data/.idea/modules.xml
DELETED
@@ -1,9 +0,0 @@
|
|
1
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
-
<project version="4">
|
3
|
-
<component name="ProjectModuleManager">
|
4
|
-
<modules>
|
5
|
-
<module fileurl="file://$PROJECT_DIR$/.idea/acceptance_tests_support.iml" filepath="$PROJECT_DIR$/.idea/acceptance_tests_support.iml" />
|
6
|
-
</modules>
|
7
|
-
</component>
|
8
|
-
</project>
|
9
|
-
|