acceptance_test 1.7.2 → 1.7.3
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.
- checksums.yaml +13 -5
- data/.ruby-version +1 -1
- data/CHANGES +5 -1
- data/lib/acceptance_test/acceptance_test.rb +13 -0
- data/lib/acceptance_test/gherkin_ext.rb +22 -8
- data/lib/acceptance_test/version.rb +1 -1
- data/spec/data.yml +6 -0
- data/spec/features/search_with_pages.feature +0 -1
- data/spec/features/{search_with_examples_from_csv.feature → search_with_scenario_outline1.feature} +1 -15
- data/spec/features/search_with_scenario_outline2.feature +16 -0
- data/spec/features/search_with_scenario_outline3.feature +16 -0
- data/spec/features/search_with_table.feature +0 -1
- data/spec/support/steps/{search_with_examples_from_csv_steps.rb → search_with_scenario_outline_steps.rb} +12 -2
- data/spec/turnip_helper.rb +1 -1
- metadata +32 -27
- data/lib/acceptance_test/acceptance_test_old.rb +0 -221
checksums.yaml
CHANGED
@@ -1,7 +1,15 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
|
2
|
+
!binary "U0hBMQ==":
|
3
|
+
metadata.gz: !binary |-
|
4
|
+
ZDgwYTc1YmQxNjhlMmRlOGRlOTk4OWVjYjMxNWU3YmM3ZDJiYWFkNg==
|
5
|
+
data.tar.gz: !binary |-
|
6
|
+
ZTg0MWFkODU2MThlZGM5ZGI5ZTY1NmZjOTQyYzA2ZGRmZDYzZjUyYw==
|
5
7
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
|
8
|
+
metadata.gz: !binary |-
|
9
|
+
MDljZjg0YmFlZmViMzA2MDlmNmUwNTFiZDM5NGM4NWZhMDkzNjdiNjk5ZjRl
|
10
|
+
ZDIzZGZhMzA3MDUxMThlOTdmZmM5MTFmZWNhMGY5MWMzMDY0YjY4MjE0M2Ux
|
11
|
+
YTA4N2MxZDYxYTUyYmJjYzkyMjUyYzdmOWRkNzUyZjE5YWU4ZDA=
|
12
|
+
data.tar.gz: !binary |-
|
13
|
+
NGJiOTAxYWVkOTkxYWYyNzk3YzJkZWNlZmIzYzAyOWQwNDk5NmUxODFiYmRm
|
14
|
+
NzJhYWUyMzEyZjdlZWZmNWY0YjUzM2MzNDlhY2Y2MmM5ZGU0YTQyMmUzNTRj
|
15
|
+
NWQxNTQ5ZDMyZGQ0ZDU2NjcwNmY0OTNmNjViYjhlN2FlODQ1MDM=
|
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
1.9.3
|
data/CHANGES
CHANGED
@@ -154,4 +154,17 @@ class AcceptanceTest
|
|
154
154
|
('a'..'z').to_a.shuffle[0, 12].join
|
155
155
|
end
|
156
156
|
|
157
|
+
# def self.get_localhost
|
158
|
+
# orig, Socket.do_not_reverse_lookup = Socket.do_not_reverse_lookup, true # turn off reverse DNS resolution temporarily
|
159
|
+
#
|
160
|
+
# UDPSocket.open do |s|
|
161
|
+
# s.connect '192.168.1.1', 1
|
162
|
+
# s.addr.last
|
163
|
+
# end
|
164
|
+
# ensure
|
165
|
+
# Socket.do_not_reverse_lookup = orig
|
166
|
+
# end
|
167
|
+
|
168
|
+
# ip = `ifconfig | grep 'inet ' | grep -v 127.0.0.1 | cut -d ' ' -f2`.strip
|
169
|
+
# Capybara.app_host = http://#{ip}:#{Capybara.server_port}
|
157
170
|
end
|
@@ -26,19 +26,17 @@ class GherkinExt
|
|
26
26
|
|
27
27
|
source.each_line do |line|
|
28
28
|
if line =~ /file\s?:/
|
29
|
-
|
29
|
+
part1, part2 = line.split(",")
|
30
|
+
|
31
|
+
source_path = part1.gsub('file:', '').gsub('|', '').strip
|
32
|
+
key = part2 ? part2.gsub('key:', '').gsub('|', '').strip : nil
|
30
33
|
|
31
34
|
if source_path
|
32
35
|
values = self.data_reader.call(source_path)
|
33
36
|
|
34
|
-
|
35
|
-
new_source += " |"
|
37
|
+
data = key.nil? ? values : values[key]
|
36
38
|
|
37
|
-
|
38
|
-
new_source += " #{element} |"
|
39
|
-
end
|
40
|
-
new_source += "\n"
|
41
|
-
end
|
39
|
+
new_source += build_data_section data
|
42
40
|
end
|
43
41
|
else
|
44
42
|
new_source += line
|
@@ -52,6 +50,22 @@ class GherkinExt
|
|
52
50
|
source
|
53
51
|
end
|
54
52
|
end
|
53
|
+
|
54
|
+
def self.build_data_section values
|
55
|
+
buffer = ""
|
56
|
+
|
57
|
+
values.each do |row|
|
58
|
+
buffer += " |"
|
59
|
+
|
60
|
+
row.each do |element|
|
61
|
+
buffer += " #{element} |"
|
62
|
+
end
|
63
|
+
|
64
|
+
buffer += "\n"
|
65
|
+
end
|
66
|
+
|
67
|
+
buffer
|
68
|
+
end
|
55
69
|
end
|
56
70
|
end
|
57
71
|
|
data/spec/data.yml
ADDED
data/spec/features/{search_with_examples_from_csv.feature → search_with_scenario_outline1.feature}
RENAMED
@@ -3,8 +3,7 @@ Feature: Using Wikipedia
|
|
3
3
|
Background: within wikipedia.com context
|
4
4
|
Given I am within wikipedia.com
|
5
5
|
|
6
|
-
@
|
7
|
-
@search_with_examples_from_csv
|
6
|
+
@search_with_scenario_outline
|
8
7
|
Scenario Outline: Searching with selenium for a term with submit (embedded data)
|
9
8
|
|
10
9
|
Given I am on wikipedia.com
|
@@ -17,16 +16,3 @@ Feature: Using Wikipedia
|
|
17
16
|
| Capybara | Hydrochoerus hydrochaeris |
|
18
17
|
| Wombat | quadrupedal marsupials |
|
19
18
|
| Echidna | Tachyglossidae |
|
20
|
-
|
21
|
-
@selenium
|
22
|
-
@search_with_examples_from_csv
|
23
|
-
Scenario Outline: Searching with selenium for a term with submit (external data)
|
24
|
-
|
25
|
-
Given I am on wikipedia.com
|
26
|
-
When I enter word <keyword>
|
27
|
-
And I click submit button
|
28
|
-
Then I should see "<result>"
|
29
|
-
|
30
|
-
Examples:
|
31
|
-
| keyword | result |
|
32
|
-
| file:spec/data.csv ||
|
@@ -0,0 +1,16 @@
|
|
1
|
+
Feature: Using Wikipedia
|
2
|
+
|
3
|
+
Background: within wikipedia.com context
|
4
|
+
Given I am within wikipedia.com
|
5
|
+
|
6
|
+
@search_with_scenario_outline
|
7
|
+
Scenario Outline: Searching with selenium for a term with submit (external data)
|
8
|
+
|
9
|
+
Given I am on wikipedia.com
|
10
|
+
When I enter word <keyword>
|
11
|
+
And I click submit button
|
12
|
+
Then I should see "<result>"
|
13
|
+
|
14
|
+
Examples:
|
15
|
+
| keyword | result | something_else |
|
16
|
+
| file:spec/data.csv || |
|
@@ -0,0 +1,16 @@
|
|
1
|
+
Feature: Using Wikipedia
|
2
|
+
|
3
|
+
Background: within wikipedia.com context
|
4
|
+
Given I am within wikipedia.com
|
5
|
+
|
6
|
+
@search_with_scenario_outline
|
7
|
+
Scenario Outline: Searching with selenium for a term with submit (external data)
|
8
|
+
|
9
|
+
Given I am on wikipedia.com
|
10
|
+
When I enter word <keyword>
|
11
|
+
And I click submit button
|
12
|
+
Then I should see "<result>"
|
13
|
+
|
14
|
+
Examples:
|
15
|
+
| keyword | result |something_else |
|
16
|
+
| file:spec/data.yml, key:test1 || |
|
@@ -1,10 +1,20 @@
|
|
1
|
+
require 'csv'
|
2
|
+
|
1
3
|
# enable external source for gherkin
|
2
4
|
|
3
|
-
data_reader = lambda
|
5
|
+
data_reader = lambda do |source_path|
|
6
|
+
ext = File.extname(source_path)
|
7
|
+
|
8
|
+
if ext == '.csv'
|
9
|
+
CSV.read(File.expand_path(source_path))
|
10
|
+
elsif ext == '.yml'
|
11
|
+
YAML.load_file(File.expand_path(source_path))
|
12
|
+
end
|
13
|
+
end
|
4
14
|
|
5
15
|
AcceptanceTest.instance.enable_external_source data_reader
|
6
16
|
|
7
|
-
steps_for :
|
17
|
+
steps_for :search_with_scenario_outline do
|
8
18
|
|
9
19
|
step "I am within wikipedia.com" do
|
10
20
|
end
|
data/spec/turnip_helper.rb
CHANGED
@@ -19,7 +19,7 @@ AcceptanceTest.instance.configure_turnip 'tmp/report.html'
|
|
19
19
|
|
20
20
|
require 'steps/search_with_drivers_steps'
|
21
21
|
require 'steps/search_with_pages_steps'
|
22
|
-
require 'steps/
|
22
|
+
require 'steps/search_with_scenario_outline_steps'
|
23
23
|
require 'steps/search_with_table_steps'
|
24
24
|
|
25
25
|
|
metadata
CHANGED
@@ -1,62 +1,62 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: acceptance_test
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.7.
|
4
|
+
version: 1.7.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alexander Shvets
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-10-
|
11
|
+
date: 2014-10-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: gemspec_deps_gen
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- -
|
17
|
+
- - ! '>='
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: '0'
|
20
20
|
type: :development
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- -
|
24
|
+
- - ! '>='
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '0'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: gemcutter
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- -
|
31
|
+
- - ! '>='
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: '0'
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- -
|
38
|
+
- - ! '>='
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '0'
|
41
|
-
description: 'Description: simplifies congiguration and run of acceptance tests.'
|
41
|
+
description: ! 'Description: simplifies congiguration and run of acceptance tests.'
|
42
42
|
email: alexander.shvets@gmail.com
|
43
43
|
executables: []
|
44
44
|
extensions: []
|
45
45
|
extra_rdoc_files: []
|
46
46
|
files:
|
47
|
-
-
|
48
|
-
-
|
49
|
-
-
|
50
|
-
-
|
51
|
-
-
|
52
|
-
-
|
53
|
-
-
|
54
|
-
-
|
55
|
-
-
|
56
|
-
-
|
57
|
-
-
|
58
|
-
-
|
59
|
-
-
|
47
|
+
- .gitignore
|
48
|
+
- .idea/.rakeTasks
|
49
|
+
- .idea/acceptance_test.iml
|
50
|
+
- .idea/encodings.xml
|
51
|
+
- .idea/jenkinsSettings.xml
|
52
|
+
- .idea/misc.xml
|
53
|
+
- .idea/modules.xml
|
54
|
+
- .idea/runConfigurations/wikipedia_search__acceptance_test.xml
|
55
|
+
- .idea/scopes/scope_settings.xml
|
56
|
+
- .idea/vcs.xml
|
57
|
+
- .rspec
|
58
|
+
- .ruby-gemset
|
59
|
+
- .ruby-version
|
60
60
|
- CHANGES
|
61
61
|
- Gemfile
|
62
62
|
- Gemfile.lock
|
@@ -71,7 +71,6 @@ files:
|
|
71
71
|
- features/wikipedia/wikipedia_search_from_csv.feature
|
72
72
|
- lib/acceptance_test.rb
|
73
73
|
- lib/acceptance_test/acceptance_test.rb
|
74
|
-
- lib/acceptance_test/acceptance_test_old.rb
|
75
74
|
- lib/acceptance_test/cucumber_ext.rb
|
76
75
|
- lib/acceptance_test/driver_manager.rb
|
77
76
|
- lib/acceptance_test/gherkin_ext.rb
|
@@ -84,16 +83,19 @@ files:
|
|
84
83
|
- lib/tasks/rspec.rake
|
85
84
|
- spec/acceptance_config.yml
|
86
85
|
- spec/data.csv
|
86
|
+
- spec/data.yml
|
87
87
|
- spec/features/search_with_drivers.feature
|
88
|
-
- spec/features/search_with_examples_from_csv.feature
|
89
88
|
- spec/features/search_with_pages.feature
|
89
|
+
- spec/features/search_with_scenario_outline1.feature
|
90
|
+
- spec/features/search_with_scenario_outline2.feature
|
91
|
+
- spec/features/search_with_scenario_outline3.feature
|
90
92
|
- spec/features/search_with_table.feature
|
91
93
|
- spec/support/pages/main_page.rb
|
92
94
|
- spec/support/pages/wikipedia_pages.rb
|
93
95
|
- spec/support/steps/common_steps.rb
|
94
96
|
- spec/support/steps/search_with_drivers_steps.rb
|
95
|
-
- spec/support/steps/search_with_examples_from_csv_steps.rb
|
96
97
|
- spec/support/steps/search_with_pages_steps.rb
|
98
|
+
- spec/support/steps/search_with_scenario_outline_steps.rb
|
97
99
|
- spec/support/steps/search_with_table_steps.rb
|
98
100
|
- spec/test_helper.rb
|
99
101
|
- spec/turnip_helper.rb
|
@@ -111,12 +113,12 @@ require_paths:
|
|
111
113
|
- lib
|
112
114
|
required_ruby_version: !ruby/object:Gem::Requirement
|
113
115
|
requirements:
|
114
|
-
- -
|
116
|
+
- - ! '>='
|
115
117
|
- !ruby/object:Gem::Version
|
116
118
|
version: '0'
|
117
119
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
118
120
|
requirements:
|
119
|
-
- -
|
121
|
+
- - ! '>='
|
120
122
|
- !ruby/object:Gem::Version
|
121
123
|
version: '0'
|
122
124
|
requirements: []
|
@@ -132,16 +134,19 @@ test_files:
|
|
132
134
|
- features/wikipedia/wikipedia_search_from_csv.feature
|
133
135
|
- spec/acceptance_config.yml
|
134
136
|
- spec/data.csv
|
137
|
+
- spec/data.yml
|
135
138
|
- spec/features/search_with_drivers.feature
|
136
|
-
- spec/features/search_with_examples_from_csv.feature
|
137
139
|
- spec/features/search_with_pages.feature
|
140
|
+
- spec/features/search_with_scenario_outline1.feature
|
141
|
+
- spec/features/search_with_scenario_outline2.feature
|
142
|
+
- spec/features/search_with_scenario_outline3.feature
|
138
143
|
- spec/features/search_with_table.feature
|
139
144
|
- spec/support/pages/main_page.rb
|
140
145
|
- spec/support/pages/wikipedia_pages.rb
|
141
146
|
- spec/support/steps/common_steps.rb
|
142
147
|
- spec/support/steps/search_with_drivers_steps.rb
|
143
|
-
- spec/support/steps/search_with_examples_from_csv_steps.rb
|
144
148
|
- spec/support/steps/search_with_pages_steps.rb
|
149
|
+
- spec/support/steps/search_with_scenario_outline_steps.rb
|
145
150
|
- spec/support/steps/search_with_table_steps.rb
|
146
151
|
- spec/test_helper.rb
|
147
152
|
- spec/turnip_helper.rb
|
@@ -1,221 +0,0 @@
|
|
1
|
-
require 'uri'
|
2
|
-
require 'singleton'
|
3
|
-
|
4
|
-
require 'active_support/core_ext/hash'
|
5
|
-
|
6
|
-
require 'acceptance_test/driver_manager'
|
7
|
-
require 'acceptance_test/gherkin_ext'
|
8
|
-
require 'acceptance_test/turnip_ext'
|
9
|
-
|
10
|
-
class AcceptanceTestOld
|
11
|
-
include Singleton
|
12
|
-
|
13
|
-
attr_reader :config, :driver_manager
|
14
|
-
|
15
|
-
def initialize
|
16
|
-
@driver_manager = DriverManager.new
|
17
|
-
|
18
|
-
@config = HashWithIndifferentAccess.new
|
19
|
-
|
20
|
-
@config[:browser] = 'firefox'
|
21
|
-
@config[:screenshot_dir] = File.expand_path('tmp')
|
22
|
-
end
|
23
|
-
|
24
|
-
def configure hash={}
|
25
|
-
config.merge!(HashWithIndifferentAccess.new(hash))
|
26
|
-
end
|
27
|
-
|
28
|
-
def setup
|
29
|
-
Capybara.app_host = AcceptanceTest.instance.config[:webapp_url]
|
30
|
-
|
31
|
-
Capybara.configure do |conf|
|
32
|
-
conf.default_wait_time = timeout_in_seconds
|
33
|
-
end
|
34
|
-
|
35
|
-
ENV['WAIT_TIME'] ||= Capybara.default_wait_time.to_s
|
36
|
-
|
37
|
-
Capybara.default_driver = :selenium
|
38
|
-
end
|
39
|
-
|
40
|
-
def teardown
|
41
|
-
Capybara.app_host = nil
|
42
|
-
|
43
|
-
Capybara.configure do |conf|
|
44
|
-
conf.default_wait_time = 5
|
45
|
-
end
|
46
|
-
|
47
|
-
Capybara.default_driver = :rack_test
|
48
|
-
end
|
49
|
-
|
50
|
-
def before_test metadata={}, page=nil
|
51
|
-
setup unless Capybara.app_host
|
52
|
-
|
53
|
-
driver = driver(metadata)
|
54
|
-
|
55
|
-
if driver
|
56
|
-
driver_name = driver_manager.register_driver driver, config[:browser].to_sym, config[:selenium_url]
|
57
|
-
|
58
|
-
if driver_name and Capybara.drivers[driver_name]
|
59
|
-
Capybara.current_driver = driver_name
|
60
|
-
Capybara.javascript_driver = driver_name
|
61
|
-
|
62
|
-
page.instance_variable_set(:@mode, driver_name) if page
|
63
|
-
end
|
64
|
-
end
|
65
|
-
end
|
66
|
-
|
67
|
-
def after_test metadata={}, exception=nil, page=nil
|
68
|
-
driver = driver(metadata)
|
69
|
-
|
70
|
-
if driver and exception and page and not [:webkit].include? driver
|
71
|
-
screenshot_dir = File.expand_path(config[:screenshot_dir])
|
72
|
-
|
73
|
-
FileUtils.mkdir_p screenshot_dir
|
74
|
-
|
75
|
-
screenshot_maker = ScreenshotMaker.new screenshot_dir
|
76
|
-
|
77
|
-
screenshot_maker.make page, metadata
|
78
|
-
|
79
|
-
puts metadata[:full_description]
|
80
|
-
puts "Screenshot: #{screenshot_maker.screenshot_url(metadata)}"
|
81
|
-
end
|
82
|
-
|
83
|
-
Capybara.current_driver = Capybara.default_driver
|
84
|
-
Capybara.javascript_driver = Capybara.default_driver
|
85
|
-
end
|
86
|
-
|
87
|
-
def create_shared_context name
|
88
|
-
throw "rspec library is not available" unless defined? RSpec
|
89
|
-
|
90
|
-
acceptance_test = self
|
91
|
-
|
92
|
-
acceptance_test_lambda = lambda do
|
93
|
-
acceptance_test.configure_rspec self
|
94
|
-
end
|
95
|
-
|
96
|
-
RSpec.shared_context name do
|
97
|
-
self.define_singleton_method(:include_context, acceptance_test_lambda)
|
98
|
-
|
99
|
-
include_context
|
100
|
-
end
|
101
|
-
end
|
102
|
-
|
103
|
-
def metadata_from_scenario scenario
|
104
|
-
tags = scenario.source_tag_names.collect { |a| a.gsub("@", '') }
|
105
|
-
|
106
|
-
metadata = {}
|
107
|
-
|
108
|
-
if tags.size > 0
|
109
|
-
tag = tags.first.to_sym
|
110
|
-
|
111
|
-
if driver_manager.supported_drivers.include? tag
|
112
|
-
metadata[:driver] = tag
|
113
|
-
end
|
114
|
-
end
|
115
|
-
|
116
|
-
metadata
|
117
|
-
end
|
118
|
-
|
119
|
-
def extend_turnip
|
120
|
-
shared_context_name = "#{random_name}AcceptanceTest"
|
121
|
-
|
122
|
-
create_shared_context shared_context_name
|
123
|
-
|
124
|
-
TurnipExt.shared_context_with_turnip shared_context_name
|
125
|
-
end
|
126
|
-
|
127
|
-
def enable_external_source data_reader
|
128
|
-
GherkinExt.enable_external_source data_reader
|
129
|
-
end
|
130
|
-
|
131
|
-
def configure_turnip_formatter report_name
|
132
|
-
require 'turnip/rspec'
|
133
|
-
require 'turnip_formatter'
|
134
|
-
require 'turnip/capybara'
|
135
|
-
require 'gnawrnip'
|
136
|
-
|
137
|
-
RSpec.configure do |config|
|
138
|
-
config.add_formatter RSpecTurnipFormatter, report_name
|
139
|
-
end
|
140
|
-
|
141
|
-
Gnawrnip.configure do |c|
|
142
|
-
c.make_animation = true
|
143
|
-
c.max_frame_size = 1024 # pixel
|
144
|
-
end
|
145
|
-
end
|
146
|
-
|
147
|
-
def driver metadata
|
148
|
-
driver = ENV['DRIVER'].nil? ? nil : ENV['DRIVER'].to_sym
|
149
|
-
|
150
|
-
driver = config[:driver].to_sym if driver.nil? and config[:driver]
|
151
|
-
|
152
|
-
driver = metadata[:driver] if driver.nil?
|
153
|
-
|
154
|
-
driver_manager.supported_drivers.each do |supported_driver|
|
155
|
-
driver = supported_driver if metadata[supported_driver]
|
156
|
-
break if driver
|
157
|
-
end
|
158
|
-
|
159
|
-
driver = :webkit if driver.nil?
|
160
|
-
|
161
|
-
driver
|
162
|
-
end
|
163
|
-
|
164
|
-
# def selenium_driver? driver
|
165
|
-
# driver.to_s =~ /selenium/
|
166
|
-
# end
|
167
|
-
|
168
|
-
def configure_rspec object=nil
|
169
|
-
acceptance_test = self
|
170
|
-
|
171
|
-
if object
|
172
|
-
if object.kind_of? RSpec::Core::Example
|
173
|
-
rspec_conf = object.example_group.parent_groups.last
|
174
|
-
else
|
175
|
-
rspec_conf = object
|
176
|
-
end
|
177
|
-
else
|
178
|
-
rspec_conf = RSpec.configuration
|
179
|
-
end
|
180
|
-
|
181
|
-
rspec_conf.around(:each) do |example|
|
182
|
-
acceptance_test.before_test(example.metadata, page)
|
183
|
-
|
184
|
-
example.run
|
185
|
-
|
186
|
-
acceptance_test.after_test(example.metadata, example.exception, page)
|
187
|
-
end
|
188
|
-
end
|
189
|
-
|
190
|
-
private
|
191
|
-
|
192
|
-
def timeout_in_seconds
|
193
|
-
if ENV['WAIT_TIME']
|
194
|
-
ENV['WAIT_TIME'].to_i
|
195
|
-
else
|
196
|
-
if config[:timeout_in_seconds]
|
197
|
-
config[:timeout_in_seconds]
|
198
|
-
else
|
199
|
-
Capybara.default_wait_time.to_s
|
200
|
-
end
|
201
|
-
end
|
202
|
-
end
|
203
|
-
|
204
|
-
def random_name
|
205
|
-
('a'..'z').to_a.shuffle[0, 12].join
|
206
|
-
end
|
207
|
-
|
208
|
-
# def self.get_localhost
|
209
|
-
# orig, Socket.do_not_reverse_lookup = Socket.do_not_reverse_lookup, true # turn off reverse DNS resolution temporarily
|
210
|
-
#
|
211
|
-
# UDPSocket.open do |s|
|
212
|
-
# s.connect '192.168.1.1', 1
|
213
|
-
# s.addr.last
|
214
|
-
# end
|
215
|
-
# ensure
|
216
|
-
# Socket.do_not_reverse_lookup = orig
|
217
|
-
# end
|
218
|
-
|
219
|
-
# ip = `ifconfig | grep 'inet ' | grep -v 127.0.0.1 | cut -d ' ' -f2`.strip
|
220
|
-
# Capybara.app_host = http://#{ip}:#{Capybara.server_port}
|
221
|
-
end
|