superbara 0.13.2 → 0.14.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +16 -6
- data/examples/spec/minimal_spec.rb +9 -0
- data/lib/capybara_monkey.rb +6 -7
- data/lib/superbara.rb +17 -0
- data/lib/superbara/cli.rb +105 -6
- data/lib/superbara/version.rb +1 -1
- data/superbara.gemspec +7 -3
- data/tests/common/main.rb +4 -3
- data/tests/fail/main.rb +1 -0
- data/vendor/robot/mac64/robot +0 -0
- data/web/public/capybara_svg_test.html +21 -0
- metadata +75 -25
- data/lib/superbara/rspec.rb +0 -35
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 690e9d764e02ee4728756ef0e24432270fb639c455df4080088dad40a763c05e
|
4
|
+
data.tar.gz: acb593b91129cdd4a5fd9de9b34ba542c021a592f0aa67db05f71d5a54316d65
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3912747af73e55766a70dc08d5c0eddf10998bc250d3dbf56d80dd2a7c24b253dfacad86c12c0e0c53ab09739b6493bbe6e25cb58a2f46911c96e838e10932f6
|
7
|
+
data.tar.gz: 504b8332fdc6d54acc72388dd2aaeaa104d7f454ab893a87365e44f4543e7b68be648ba9c011ce5ff0647765187502d916b9d966181e32ef559b1a9eb4d4daab
|
data/Gemfile.lock
CHANGED
@@ -1,13 +1,18 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
superbara (0.
|
4
|
+
superbara (0.14.0)
|
5
5
|
astrolabe (~> 1.3, >= 1.3.1)
|
6
6
|
binding_of_caller (~> 0.8, >= 0.8.0)
|
7
7
|
capybara (~> 3.1, >= 3.1.0)
|
8
8
|
colorize (~> 0.8, >= 0.8.1)
|
9
9
|
faker (~> 1.8, >= 1.8.7)
|
10
|
+
kommando (~> 0.1, >= 0.1.2)
|
11
|
+
pry
|
10
12
|
pry-byebug (~> 3.6, >= 3.6.0)
|
13
|
+
pry-rescue (~> 1.4, >= 1.4.4)
|
14
|
+
pry-stack_explorer
|
15
|
+
rspec (~> 3.7, >= 3.7.0)
|
11
16
|
selenium-webdriver (~> 3.12, >= 3.12.0)
|
12
17
|
sinatra (~> 2.0, >= 2.0.1)
|
13
18
|
|
@@ -41,12 +46,13 @@ GEM
|
|
41
46
|
ffi (1.9.25)
|
42
47
|
i18n (1.0.1)
|
43
48
|
concurrent-ruby (~> 1.0)
|
49
|
+
interception (0.5)
|
44
50
|
kommando (0.1.2)
|
45
51
|
method_source (0.9.0)
|
46
52
|
mini_mime (1.0.0)
|
47
53
|
mini_portile2 (2.3.0)
|
48
54
|
mustermann (1.0.2)
|
49
|
-
nokogiri (1.8.
|
55
|
+
nokogiri (1.8.3)
|
50
56
|
mini_portile2 (~> 2.3.0)
|
51
57
|
parser (2.5.1.0)
|
52
58
|
ast (~> 2.4.0)
|
@@ -56,13 +62,19 @@ GEM
|
|
56
62
|
pry-byebug (3.6.0)
|
57
63
|
byebug (~> 10.0)
|
58
64
|
pry (~> 0.10)
|
65
|
+
pry-rescue (1.4.5)
|
66
|
+
interception (>= 0.5)
|
67
|
+
pry
|
68
|
+
pry-stack_explorer (0.4.9.2)
|
69
|
+
binding_of_caller (>= 0.7)
|
70
|
+
pry (>= 0.9.11)
|
59
71
|
public_suffix (3.0.2)
|
60
72
|
rack (2.0.5)
|
61
73
|
rack-protection (2.0.3)
|
62
74
|
rack
|
63
75
|
rack-test (1.0.0)
|
64
76
|
rack (>= 1.0, < 3)
|
65
|
-
rake (
|
77
|
+
rake (12.3.0)
|
66
78
|
rspec (3.7.0)
|
67
79
|
rspec-core (~> 3.7.0)
|
68
80
|
rspec-expectations (~> 3.7.0)
|
@@ -94,9 +106,7 @@ PLATFORMS
|
|
94
106
|
|
95
107
|
DEPENDENCIES
|
96
108
|
bundler (~> 1.15, >= 1.15.0)
|
97
|
-
|
98
|
-
rake (~> 10.0, >= 10.0.0)
|
99
|
-
rspec (~> 3.7, >= 3.7.0)
|
109
|
+
rake (~> 12.3, >= 12.3.0)
|
100
110
|
superbara!
|
101
111
|
|
102
112
|
BUNDLED WITH
|
data/lib/capybara_monkey.rb
CHANGED
@@ -3,18 +3,17 @@ class Capybara::Selenium::Node < Capybara::Driver::Node
|
|
3
3
|
path = find_xpath(XPath.ancestor_or_self).reverse
|
4
4
|
|
5
5
|
result = []
|
6
|
+
default_ns = path.last[:namespaceURI]
|
6
7
|
while (node = path.shift)
|
7
8
|
parent = path.first
|
8
9
|
selector = node.tag_name
|
10
|
+
if node[:namespaceURI] != default_ns
|
11
|
+
selector = XPath.child.where((XPath.local_name == selector) & (XPath.namespace_uri == node[:namespaceURI])).to_s
|
12
|
+
selector
|
13
|
+
end
|
14
|
+
|
9
15
|
if parent
|
10
16
|
siblings = parent.find_xpath(selector)
|
11
|
-
|
12
|
-
#MONKEY START https://github.com/teamcapybara/capybara/issues/2048
|
13
|
-
if selector == "svg" && siblings.size == 0
|
14
|
-
siblings = parent.find_xpath "//*[local-name() = 'svg']"
|
15
|
-
end
|
16
|
-
#MONKEY END
|
17
|
-
|
18
17
|
selector += "[#{siblings.index(node) + 1}]" unless siblings.size == 1
|
19
18
|
end
|
20
19
|
result.push selector
|
data/lib/superbara.rb
CHANGED
@@ -47,6 +47,7 @@ module Superbara
|
|
47
47
|
def self.visual?
|
48
48
|
return true if @@visual
|
49
49
|
return true if ENV["SUPERBARA_VISUAL"]
|
50
|
+
return false
|
50
51
|
end
|
51
52
|
|
52
53
|
def self.visual_disabled(&block)
|
@@ -68,6 +69,16 @@ module Superbara
|
|
68
69
|
value
|
69
70
|
end
|
70
71
|
|
72
|
+
def self.visual_enabled(&block)
|
73
|
+
visual_was_disabled = true unless Superbara.visual?
|
74
|
+
|
75
|
+
Superbara.visual_enable! if visual_was_disabled
|
76
|
+
value = block.call
|
77
|
+
Superbara.visual_disable! if visual_was_disabled
|
78
|
+
|
79
|
+
value
|
80
|
+
end
|
81
|
+
|
71
82
|
def self.visual_enable!
|
72
83
|
@@visual = true
|
73
84
|
end
|
@@ -127,6 +138,12 @@ module Superbara
|
|
127
138
|
path
|
128
139
|
end
|
129
140
|
|
141
|
+
def self.robot_path
|
142
|
+
path = File.join(File.expand_path('~'), ".superbara", "robot")
|
143
|
+
path << ".exe" if Superbara.platform == "win32"
|
144
|
+
path
|
145
|
+
end
|
146
|
+
|
130
147
|
def self.platform
|
131
148
|
require 'rbconfig'
|
132
149
|
cfg = RbConfig::CONFIG
|
data/lib/superbara/cli.rb
CHANGED
@@ -29,7 +29,7 @@ module Superbara; module CLI
|
|
29
29
|
exit 0
|
30
30
|
when "web", "shell"
|
31
31
|
#
|
32
|
-
when "init"
|
32
|
+
when "init", "init:robot"
|
33
33
|
project_name = ARGV[1]
|
34
34
|
unless project_name
|
35
35
|
puts "project name missing"
|
@@ -41,7 +41,9 @@ module Superbara; module CLI
|
|
41
41
|
exit 1
|
42
42
|
end
|
43
43
|
|
44
|
-
contents =
|
44
|
+
contents, file_name, start_cmd = case main_command
|
45
|
+
when "init"
|
46
|
+
["""visit 'example.com'
|
45
47
|
|
46
48
|
wait 3 do
|
47
49
|
has_text? 'Example Domain'
|
@@ -49,14 +51,46 @@ end
|
|
49
51
|
|
50
52
|
click 'a'
|
51
53
|
scroll 50
|
52
|
-
"""
|
54
|
+
""", "main.rb", "start"]
|
55
|
+
when "init:robot"
|
56
|
+
["""*** Settings ***
|
57
|
+
Library SeleniumLibrary
|
58
|
+
|
59
|
+
*** Test Cases ***
|
60
|
+
Google Robot Framework and Get Results
|
61
|
+
Open Browser To https://www.google.com
|
62
|
+
Google For Robot Framework
|
63
|
+
Result Should Contain Generic test automation
|
64
|
+
|
65
|
+
Visit example.com
|
66
|
+
Open Browser To https://www.example.com
|
67
|
+
Result Should Contain Example Domain
|
68
|
+
|
69
|
+
|
70
|
+
*** Keywords ***
|
71
|
+
Open Browser To
|
72
|
+
[arguments] ${url}
|
73
|
+
Open Browser ${url} browser=chrome
|
74
|
+
Maximize Browser Window
|
75
|
+
|
76
|
+
Google For
|
77
|
+
[arguments] ${search_term}
|
78
|
+
Input Text lst-ib ${search_term}
|
79
|
+
Press Key lst-ib \\\\13
|
80
|
+
|
81
|
+
Result Should Contain
|
82
|
+
[arguments] ${content}
|
83
|
+
Wait Until Page Contains ${content} 10 s
|
84
|
+
""", "main.robot", "start:robot"]
|
85
|
+
end
|
86
|
+
|
53
87
|
Dir.mkdir project_name
|
54
|
-
File.write File.join(project_name,
|
88
|
+
File.write File.join(project_name, file_name), contents
|
55
89
|
|
56
|
-
puts "Created directory #{project_name} with
|
90
|
+
puts "Created directory #{project_name} with #{file_name}"
|
57
91
|
puts "Start testing with:"
|
58
92
|
puts ""
|
59
|
-
puts " superbara
|
93
|
+
puts " superbara #{start_cmd} #{project_name}"
|
60
94
|
exit 0
|
61
95
|
else
|
62
96
|
unless ARGV[1]
|
@@ -87,6 +121,13 @@ scroll 50
|
|
87
121
|
FileUtils.mkdir_p target_path
|
88
122
|
FileUtils.cp from, target
|
89
123
|
|
124
|
+
if Superbara.platform == "mac64"
|
125
|
+
robot_from = File.join Superbara.path, "vendor", "robot", Superbara.platform, "robot"
|
126
|
+
robot_target = File.join target_path, "robot"
|
127
|
+
File.unlink robot_target if File.exist? robot_target
|
128
|
+
FileUtils.cp robot_from, robot_target
|
129
|
+
end
|
130
|
+
|
90
131
|
case main_command
|
91
132
|
when "start", "run"
|
92
133
|
project_path_or_file_expanded = File.expand_path(ARGV[1])
|
@@ -115,6 +156,64 @@ scroll 50
|
|
115
156
|
|
116
157
|
loop do
|
117
158
|
case main_command
|
159
|
+
when "start:robot"
|
160
|
+
require "kommando"
|
161
|
+
|
162
|
+
chromedriver_dirname = File.dirname(Superbara.chromedriver_path)
|
163
|
+
ENV["PATH"] = ENV["PATH"].split(":").push(chromedriver_dirname).join(":")
|
164
|
+
puts "#{Superbara.robot_path} -l NONE -r NONE #{Superbara.project_path}/#{project_entrypoint}"
|
165
|
+
|
166
|
+
k = Kommando.new "#{Superbara.robot_path} -l NONE -r NONE #{ARGV[1]}", {
|
167
|
+
output: true
|
168
|
+
}
|
169
|
+
k.run
|
170
|
+
puts ""
|
171
|
+
puts "-- [ [r]estart or [q]uit --"
|
172
|
+
input = $stdin.gets.chomp.downcase
|
173
|
+
case input
|
174
|
+
when "q"
|
175
|
+
exit 0
|
176
|
+
end
|
177
|
+
when "start:rspec"
|
178
|
+
|
179
|
+
|
180
|
+
require "rspec"
|
181
|
+
require "pry-rescue"
|
182
|
+
|
183
|
+
RSpec.configure do |config|
|
184
|
+
config.include Capybara::DSL
|
185
|
+
config.include Superbara::DSL
|
186
|
+
|
187
|
+
config.fail_fast = true
|
188
|
+
|
189
|
+
config.before(:each) do |example|
|
190
|
+
puts ""
|
191
|
+
puts " #{example.description} - #{example.location}"
|
192
|
+
puts "-"*IO.console.winsize.last
|
193
|
+
end
|
194
|
+
|
195
|
+
|
196
|
+
config.after(:each) do |example|
|
197
|
+
if example.exception
|
198
|
+
puts ("="*80).colorize(:yellow)
|
199
|
+
puts example.exception.message.colorize(:red)
|
200
|
+
puts ("="*80).colorize(:yellow)
|
201
|
+
|
202
|
+
Pry.commands.disabled_command "continue", "can not continue in this context"
|
203
|
+
Superbara.visual_enabled do
|
204
|
+
Pry::rescued(example.exception)
|
205
|
+
end
|
206
|
+
else
|
207
|
+
Pry.start
|
208
|
+
end
|
209
|
+
end
|
210
|
+
end
|
211
|
+
|
212
|
+
Pry::rescue do
|
213
|
+
RSpec::Core::Runner.run([ARGV[1]], $stderr, $stdout)
|
214
|
+
end
|
215
|
+
|
216
|
+
RSpec.reset
|
118
217
|
when "web"
|
119
218
|
webapp = Superbara::Web.new port: (ENV['SUPERBARA_WEB_PORT'] || 4567)
|
120
219
|
webapp.run!
|
data/lib/superbara/version.rb
CHANGED
data/superbara.gemspec
CHANGED
@@ -24,6 +24,9 @@ Gem::Specification.new do |spec|
|
|
24
24
|
spec.require_paths = ["lib"]
|
25
25
|
|
26
26
|
spec.add_dependency 'colorize', '~> 0.8', '>= 0.8.1'
|
27
|
+
spec.add_dependency 'pry'
|
28
|
+
spec.add_dependency 'pry-stack_explorer'
|
29
|
+
|
27
30
|
spec.add_dependency 'pry-byebug', '~> 3.6', '>= 3.6.0'
|
28
31
|
spec.add_dependency 'binding_of_caller', '~> 0.8', '>=0.8.0'
|
29
32
|
spec.add_dependency 'capybara', '~> 3.1', '>= 3.1.0'
|
@@ -31,9 +34,10 @@ Gem::Specification.new do |spec|
|
|
31
34
|
spec.add_dependency 'faker', '~> 1.8', '>= 1.8.7'
|
32
35
|
spec.add_dependency 'sinatra', '~> 2.0', '>= 2.0.1'
|
33
36
|
spec.add_dependency 'astrolabe', '~> 1.3', '>= 1.3.1'
|
37
|
+
spec.add_dependency 'rspec', '~> 3.7', '>= 3.7.0'
|
38
|
+
spec.add_dependency 'pry-rescue', '~> 1.4', '>= 1.4.4'
|
39
|
+
spec.add_dependency 'kommando', '~> 0.1', '>= 0.1.2'
|
34
40
|
|
35
41
|
spec.add_development_dependency 'bundler', '~> 1.15', '>= 1.15.0'
|
36
|
-
spec.add_development_dependency 'rake', '~>
|
37
|
-
spec.add_development_dependency 'rspec', '~> 3.7', '>= 3.7.0'
|
38
|
-
spec.add_development_dependency 'kommando', '~> 0.1', '>= 0.1.2'
|
42
|
+
spec.add_development_dependency 'rake', '~> 12.3', '>= 12.3.0'
|
39
43
|
end
|
data/tests/common/main.rb
CHANGED
data/tests/fail/main.rb
CHANGED
Binary file
|
@@ -0,0 +1,21 @@
|
|
1
|
+
<html xmlns="http://www.w3.org/1999/xhtml">
|
2
|
+
|
3
|
+
<head>
|
4
|
+
<title>Namespace</title>
|
5
|
+
</head>
|
6
|
+
|
7
|
+
<body id="body">
|
8
|
+
<div>
|
9
|
+
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 100 100" preserveAspectRatio="xMidYMid slice" style="width:100%; height:100%; position:absolute; top:0; left:0; z-index:-1;">
|
10
|
+
<linearGradient id="gradient">
|
11
|
+
<stop class="begin" offset="0%" />
|
12
|
+
<stop class="end" offset="100%" />
|
13
|
+
</linearGradient>
|
14
|
+
<rect x="0" y="0" width="100" height="100" style="fill:url(#gradient)" />
|
15
|
+
<rect x="150" y="150" width="25" height="25" style="fill:url(#gradient)" />
|
16
|
+
<circle cx="50" cy="50" r="30" style="fill:url(#gradient)" />
|
17
|
+
</svg>
|
18
|
+
<div>
|
19
|
+
</body>
|
20
|
+
|
21
|
+
</html>
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: superbara
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.14.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Matti Paksula
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-06-
|
11
|
+
date: 2018-06-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: colorize
|
@@ -30,6 +30,34 @@ dependencies:
|
|
30
30
|
- - ">="
|
31
31
|
- !ruby/object:Gem::Version
|
32
32
|
version: 0.8.1
|
33
|
+
- !ruby/object:Gem::Dependency
|
34
|
+
name: pry
|
35
|
+
requirement: !ruby/object:Gem::Requirement
|
36
|
+
requirements:
|
37
|
+
- - ">="
|
38
|
+
- !ruby/object:Gem::Version
|
39
|
+
version: '0'
|
40
|
+
type: :runtime
|
41
|
+
prerelease: false
|
42
|
+
version_requirements: !ruby/object:Gem::Requirement
|
43
|
+
requirements:
|
44
|
+
- - ">="
|
45
|
+
- !ruby/object:Gem::Version
|
46
|
+
version: '0'
|
47
|
+
- !ruby/object:Gem::Dependency
|
48
|
+
name: pry-stack_explorer
|
49
|
+
requirement: !ruby/object:Gem::Requirement
|
50
|
+
requirements:
|
51
|
+
- - ">="
|
52
|
+
- !ruby/object:Gem::Version
|
53
|
+
version: '0'
|
54
|
+
type: :runtime
|
55
|
+
prerelease: false
|
56
|
+
version_requirements: !ruby/object:Gem::Requirement
|
57
|
+
requirements:
|
58
|
+
- - ">="
|
59
|
+
- !ruby/object:Gem::Version
|
60
|
+
version: '0'
|
33
61
|
- !ruby/object:Gem::Dependency
|
34
62
|
name: pry-byebug
|
35
63
|
requirement: !ruby/object:Gem::Requirement
|
@@ -171,85 +199,105 @@ dependencies:
|
|
171
199
|
- !ruby/object:Gem::Version
|
172
200
|
version: 1.3.1
|
173
201
|
- !ruby/object:Gem::Dependency
|
174
|
-
name:
|
202
|
+
name: rspec
|
175
203
|
requirement: !ruby/object:Gem::Requirement
|
176
204
|
requirements:
|
177
205
|
- - "~>"
|
178
206
|
- !ruby/object:Gem::Version
|
179
|
-
version: '
|
207
|
+
version: '3.7'
|
180
208
|
- - ">="
|
181
209
|
- !ruby/object:Gem::Version
|
182
|
-
version:
|
183
|
-
type: :
|
210
|
+
version: 3.7.0
|
211
|
+
type: :runtime
|
184
212
|
prerelease: false
|
185
213
|
version_requirements: !ruby/object:Gem::Requirement
|
186
214
|
requirements:
|
187
215
|
- - "~>"
|
188
216
|
- !ruby/object:Gem::Version
|
189
|
-
version: '
|
217
|
+
version: '3.7'
|
190
218
|
- - ">="
|
191
219
|
- !ruby/object:Gem::Version
|
192
|
-
version:
|
220
|
+
version: 3.7.0
|
193
221
|
- !ruby/object:Gem::Dependency
|
194
|
-
name:
|
222
|
+
name: pry-rescue
|
195
223
|
requirement: !ruby/object:Gem::Requirement
|
196
224
|
requirements:
|
197
225
|
- - "~>"
|
198
226
|
- !ruby/object:Gem::Version
|
199
|
-
version: '
|
227
|
+
version: '1.4'
|
200
228
|
- - ">="
|
201
229
|
- !ruby/object:Gem::Version
|
202
|
-
version:
|
203
|
-
type: :
|
230
|
+
version: 1.4.4
|
231
|
+
type: :runtime
|
204
232
|
prerelease: false
|
205
233
|
version_requirements: !ruby/object:Gem::Requirement
|
206
234
|
requirements:
|
207
235
|
- - "~>"
|
208
236
|
- !ruby/object:Gem::Version
|
209
|
-
version: '
|
237
|
+
version: '1.4'
|
210
238
|
- - ">="
|
211
239
|
- !ruby/object:Gem::Version
|
212
|
-
version:
|
240
|
+
version: 1.4.4
|
213
241
|
- !ruby/object:Gem::Dependency
|
214
|
-
name:
|
242
|
+
name: kommando
|
215
243
|
requirement: !ruby/object:Gem::Requirement
|
216
244
|
requirements:
|
217
245
|
- - "~>"
|
218
246
|
- !ruby/object:Gem::Version
|
219
|
-
version: '
|
247
|
+
version: '0.1'
|
220
248
|
- - ">="
|
221
249
|
- !ruby/object:Gem::Version
|
222
|
-
version:
|
250
|
+
version: 0.1.2
|
251
|
+
type: :runtime
|
252
|
+
prerelease: false
|
253
|
+
version_requirements: !ruby/object:Gem::Requirement
|
254
|
+
requirements:
|
255
|
+
- - "~>"
|
256
|
+
- !ruby/object:Gem::Version
|
257
|
+
version: '0.1'
|
258
|
+
- - ">="
|
259
|
+
- !ruby/object:Gem::Version
|
260
|
+
version: 0.1.2
|
261
|
+
- !ruby/object:Gem::Dependency
|
262
|
+
name: bundler
|
263
|
+
requirement: !ruby/object:Gem::Requirement
|
264
|
+
requirements:
|
265
|
+
- - "~>"
|
266
|
+
- !ruby/object:Gem::Version
|
267
|
+
version: '1.15'
|
268
|
+
- - ">="
|
269
|
+
- !ruby/object:Gem::Version
|
270
|
+
version: 1.15.0
|
223
271
|
type: :development
|
224
272
|
prerelease: false
|
225
273
|
version_requirements: !ruby/object:Gem::Requirement
|
226
274
|
requirements:
|
227
275
|
- - "~>"
|
228
276
|
- !ruby/object:Gem::Version
|
229
|
-
version: '
|
277
|
+
version: '1.15'
|
230
278
|
- - ">="
|
231
279
|
- !ruby/object:Gem::Version
|
232
|
-
version:
|
280
|
+
version: 1.15.0
|
233
281
|
- !ruby/object:Gem::Dependency
|
234
|
-
name:
|
282
|
+
name: rake
|
235
283
|
requirement: !ruby/object:Gem::Requirement
|
236
284
|
requirements:
|
237
285
|
- - "~>"
|
238
286
|
- !ruby/object:Gem::Version
|
239
|
-
version: '
|
287
|
+
version: '12.3'
|
240
288
|
- - ">="
|
241
289
|
- !ruby/object:Gem::Version
|
242
|
-
version:
|
290
|
+
version: 12.3.0
|
243
291
|
type: :development
|
244
292
|
prerelease: false
|
245
293
|
version_requirements: !ruby/object:Gem::Requirement
|
246
294
|
requirements:
|
247
295
|
- - "~>"
|
248
296
|
- !ruby/object:Gem::Version
|
249
|
-
version: '
|
297
|
+
version: '12.3'
|
250
298
|
- - ">="
|
251
299
|
- !ruby/object:Gem::Version
|
252
|
-
version:
|
300
|
+
version: 12.3.0
|
253
301
|
description: Better way to build Capybara tests
|
254
302
|
email:
|
255
303
|
- matti.paksula@iki.fi
|
@@ -338,6 +386,7 @@ files:
|
|
338
386
|
- examples/login-and-logout/using-params/main.rb
|
339
387
|
- examples/sites/pharos.sh/main.rb
|
340
388
|
- examples/sites/vr.fi/helsinki-tampere/main.rb
|
389
|
+
- examples/spec/minimal_spec.rb
|
341
390
|
- exe/superbara
|
342
391
|
- lib/capybara_monkey.rb
|
343
392
|
- lib/pry_monkey.rb
|
@@ -358,7 +407,6 @@ files:
|
|
358
407
|
- lib/superbara/pcm.rb
|
359
408
|
- lib/superbara/pcom.rb
|
360
409
|
- lib/superbara/pom.rb
|
361
|
-
- lib/superbara/rspec.rb
|
362
410
|
- lib/superbara/version.rb
|
363
411
|
- lib/superbara/web.rb
|
364
412
|
- superbara.gemspec
|
@@ -401,10 +449,12 @@ files:
|
|
401
449
|
- vendor/chromedriver/mac64/chromedriver
|
402
450
|
- vendor/chromedriver/win32/.gitkeep
|
403
451
|
- vendor/chromedriver/win32/chromedriver.exe
|
452
|
+
- vendor/robot/mac64/robot
|
404
453
|
- web/public/1.html
|
405
454
|
- web/public/2.html
|
406
455
|
- web/public/3.html
|
407
456
|
- web/public/another.html
|
457
|
+
- web/public/capybara_svg_test.html
|
408
458
|
- web/public/highcharts.html
|
409
459
|
- web/public/index.html
|
410
460
|
- web/views/layout.erb
|
data/lib/superbara/rspec.rb
DELETED
@@ -1,35 +0,0 @@
|
|
1
|
-
require "superbara"
|
2
|
-
require "superbara/dsl"
|
3
|
-
require "rspec"
|
4
|
-
|
5
|
-
RSpec.configure do |config|
|
6
|
-
config.include Capybara::DSL
|
7
|
-
config.include Superbara::DSL
|
8
|
-
|
9
|
-
config.fail_fast = true
|
10
|
-
|
11
|
-
config.before(:each) do |example|
|
12
|
-
#TODO
|
13
|
-
#$superbara_current_file = example.metadata[:example_group][:file_path]
|
14
|
-
|
15
|
-
puts ""
|
16
|
-
class_path = example.example_group_instance.class.to_s.split("::")
|
17
|
-
class_path.shift
|
18
|
-
class_path.shift
|
19
|
-
print class_path.shift
|
20
|
-
for c in class_path do
|
21
|
-
print "/#{c}"
|
22
|
-
end
|
23
|
-
puts " #{example.description} - #{example.location}"
|
24
|
-
puts "-"*IO.console.winsize.last
|
25
|
-
end
|
26
|
-
|
27
|
-
config.after(:each) do |example|
|
28
|
-
if example.exception
|
29
|
-
puts ("="*80).colorize(:yellow)
|
30
|
-
puts example.exception.message.colorize(:red)
|
31
|
-
puts ("="*80).colorize(:yellow)
|
32
|
-
debug(exception_occurred: true)
|
33
|
-
end
|
34
|
-
end
|
35
|
-
end
|