superbara 0.6.1 → 0.7.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/Gemfile.lock +1 -8
- data/README.md +2 -0
- data/bin/release +16 -0
- data/demo.gif +0 -0
- data/lib/superbara/chrome.rb +5 -0
- data/lib/superbara/version.rb +1 -1
- data/lib/superbara.rb +25 -3
- data/superbara.gemspec +2 -1
- data/vendor/chromedriver/linux64/.gitkeep +0 -0
- data/vendor/chromedriver/linux64/chromedriver +0 -0
- data/vendor/chromedriver/mac64/.gitkeep +0 -0
- data/vendor/chromedriver/mac64/chromedriver +0 -0
- data/vendor/chromedriver/win32/.gitkeep +0 -0
- data/vendor/chromedriver/win32/chromedriver.exe +0 -0
- metadata +9 -22
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 49f34c9f04a1e0178758c7558c141a8642df3dfe4c235de547cd5630a8008ae7
|
4
|
+
data.tar.gz: 8fcc6ebedd95d64417472426c7c83e00c47d6a4f525984f675066e3198f8a758
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6a539b6844c99e3b558d9476d16c87277cb086fc44e2d91508e16023ef720324fed8fba5639d0e87d42b64e1fba90905786b7a2efc3094d55c1a5c3a3234363b
|
7
|
+
data.tar.gz: 76e4cfc3a2f7ac805971afbaa406cc1292b1ba0cd7e5164d29d62e404f9663c41bfcebff085e10747fc511ffaccdc0689fa62c65dfd01bb4df30efb4567f1ac8
|
data/.gitignore
CHANGED
data/Gemfile.lock
CHANGED
@@ -1,10 +1,9 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
superbara (0.
|
4
|
+
superbara (0.7.0)
|
5
5
|
binding_of_caller (~> 0.8, >= 0.8.0)
|
6
6
|
capybara (~> 3.1, >= 3.1.0)
|
7
|
-
chromedriver-helper (~> 1.2.0, >= 1.2.0)
|
8
7
|
colorize (~> 0.8, >= 0.8.1)
|
9
8
|
faker (~> 1.8, >= 1.8.7)
|
10
9
|
pry-byebug (~> 3.6, >= 3.6.0)
|
@@ -16,8 +15,6 @@ GEM
|
|
16
15
|
specs:
|
17
16
|
addressable (2.5.2)
|
18
17
|
public_suffix (>= 2.0.2, < 4.0)
|
19
|
-
archive-zip (0.11.0)
|
20
|
-
io-like (~> 0.3.0)
|
21
18
|
binding_of_caller (0.8.0)
|
22
19
|
debug_inspector (>= 0.0.1)
|
23
20
|
byebug (10.0.2)
|
@@ -30,9 +27,6 @@ GEM
|
|
30
27
|
xpath (~> 3.0)
|
31
28
|
childprocess (0.9.0)
|
32
29
|
ffi (~> 1.0, >= 1.0.11)
|
33
|
-
chromedriver-helper (1.2.0)
|
34
|
-
archive-zip (~> 0.10)
|
35
|
-
nokogiri (~> 1.8)
|
36
30
|
coderay (1.1.2)
|
37
31
|
colorize (0.8.1)
|
38
32
|
concurrent-ruby (1.0.5)
|
@@ -43,7 +37,6 @@ GEM
|
|
43
37
|
ffi (1.9.23)
|
44
38
|
i18n (1.0.1)
|
45
39
|
concurrent-ruby (~> 1.0)
|
46
|
-
io-like (0.3.0)
|
47
40
|
kommando (0.1.2)
|
48
41
|
method_source (0.9.0)
|
49
42
|
mini_mime (1.0.0)
|
data/README.md
CHANGED
@@ -2,6 +2,8 @@
|
|
2
2
|
|
3
3
|
Web app test scripting that does not hurt.
|
4
4
|
|
5
|
+
![Demo of Superbara](demo.gif)
|
6
|
+
|
5
7
|
- Stands on the shoulders of [Capybara](https://github.com/teamcapybara/capybara/)
|
6
8
|
- All batteries included: just start scripting, nothing extra required
|
7
9
|
- A powerful command line interface with interactive debugger
|
data/bin/release
CHANGED
@@ -1,9 +1,25 @@
|
|
1
1
|
#!/usr/bin/env sh
|
2
2
|
set -e
|
3
3
|
version=$(exe/superbara version)
|
4
|
+
chromedriver_version=2.38
|
5
|
+
|
6
|
+
gem uninstall -a superbara
|
7
|
+
|
8
|
+
cd vendor/chromedriver
|
9
|
+
for chromedriver_platform in mac64 win32 linux64; do
|
10
|
+
cd $chromedriver_platform
|
11
|
+
curl -O https://chromedriver.storage.googleapis.com/${chromedriver_version}/chromedriver_${chromedriver_platform}.zip
|
12
|
+
unzip -o chromedriver_${chromedriver_platform}.zip
|
13
|
+
rm chromedriver_${chromedriver_platform}.zip
|
14
|
+
cd ..
|
15
|
+
done
|
16
|
+
cd ../..
|
4
17
|
|
5
18
|
rake
|
6
19
|
|
7
20
|
gem build superbara.gemspec
|
8
21
|
KUNG_ENV=build VERSION=$version kung build
|
22
|
+
|
9
23
|
rake release
|
24
|
+
|
25
|
+
rubyc -c --gem=superbara --gem-version=${version} superbara
|
data/demo.gif
ADDED
Binary file
|
data/lib/superbara/chrome.rb
CHANGED
@@ -9,6 +9,9 @@ module Superbara; module Chrome
|
|
9
9
|
end
|
10
10
|
|
11
11
|
def self.register_drivers
|
12
|
+
chromedriver_path = File.join(Superbara.path, "vendor", "chromedriver", Superbara.platform, "chromedriver")
|
13
|
+
chromedriver_path = "#{chromedriver_path}.exe" if Superbara.platform == "win32"
|
14
|
+
|
12
15
|
options = ::Selenium::WebDriver::Chrome::Options.new
|
13
16
|
options.add_argument 'window-size=1680,1024'
|
14
17
|
options.add_argument 'disable-infobars'
|
@@ -22,6 +25,7 @@ module Superbara; module Chrome
|
|
22
25
|
|
23
26
|
Capybara.register_driver :chrome do
|
24
27
|
Capybara::Selenium::Driver.new(nil,
|
28
|
+
driver_path: chromedriver_path,
|
25
29
|
browser: :chrome,
|
26
30
|
http_client: client,
|
27
31
|
options: options,
|
@@ -44,6 +48,7 @@ module Superbara; module Chrome
|
|
44
48
|
options.add_argument 'disable-gpu'
|
45
49
|
|
46
50
|
Capybara::Selenium::Driver.new(nil,
|
51
|
+
driver_path: chromedriver_path,
|
47
52
|
browser: :chrome,
|
48
53
|
http_client: client,
|
49
54
|
desired_capabilities: capabilities,
|
data/lib/superbara/version.rb
CHANGED
data/lib/superbara.rb
CHANGED
@@ -101,6 +101,31 @@ module Superbara
|
|
101
101
|
File.basename(@@project_path)
|
102
102
|
end
|
103
103
|
|
104
|
+
def self.path
|
105
|
+
File.join(File.dirname(__FILE__), "..")
|
106
|
+
end
|
107
|
+
|
108
|
+
def self.platform
|
109
|
+
require 'rbconfig'
|
110
|
+
cfg = RbConfig::CONFIG
|
111
|
+
host_cpu = cfg["host_cpu"]
|
112
|
+
host_os = cfg["host_os"]
|
113
|
+
|
114
|
+
platform = case host_os
|
115
|
+
when /linux/ then
|
116
|
+
if host_cpu =~ /x86_64|amd64/
|
117
|
+
"linux64"
|
118
|
+
else
|
119
|
+
raise "32bit not supported"
|
120
|
+
end
|
121
|
+
when /darwin/ then "mac64"
|
122
|
+
when /mswin/ then "win32"
|
123
|
+
when /mingw/ then "win32"
|
124
|
+
else
|
125
|
+
raise "Unsupported host OS '#{host_os}'"
|
126
|
+
end
|
127
|
+
end
|
128
|
+
|
104
129
|
def self.toast(text, duration: 1, delay: 0)
|
105
130
|
return unless Superbara.visual?
|
106
131
|
|
@@ -177,9 +202,6 @@ end
|
|
177
202
|
|
178
203
|
Superbara::Chrome.register_drivers
|
179
204
|
|
180
|
-
require "chromedriver/helper"
|
181
|
-
Chromedriver.set_version "2.37"
|
182
|
-
|
183
205
|
Capybara.default_driver = if ENV["CHROME_URL"]
|
184
206
|
:chrome_remote
|
185
207
|
else
|
data/superbara.gemspec
CHANGED
@@ -17,6 +17,8 @@ Gem::Specification.new do |spec|
|
|
17
17
|
spec.files = `if [ -d '.git' ]; then git ls-files -z; fi`.split("\x0").reject do |f|
|
18
18
|
f.match(%r{^(test|spec|features)/})
|
19
19
|
end
|
20
|
+
spec.files += Dir['vendor/**/*']
|
21
|
+
|
20
22
|
spec.bindir = "exe"
|
21
23
|
spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
|
22
24
|
spec.require_paths = ["lib"]
|
@@ -26,7 +28,6 @@ Gem::Specification.new do |spec|
|
|
26
28
|
spec.add_dependency 'binding_of_caller', '~> 0.8', '>=0.8.0'
|
27
29
|
spec.add_dependency 'capybara', '~> 3.1', '>= 3.1.0'
|
28
30
|
spec.add_dependency 'selenium-webdriver', '~> 3.12', '>= 3.12.0'
|
29
|
-
spec.add_dependency 'chromedriver-helper', '~> 1.2.0', '>= 1.2.0'
|
30
31
|
spec.add_dependency 'faker', '~> 1.8', '>= 1.8.7'
|
31
32
|
spec.add_dependency 'sinatra', '~> 2.0', '>= 2.0.1'
|
32
33
|
spec.add_development_dependency 'bundler', '~> 1.15', '>= 1.15.0'
|
File without changes
|
Binary file
|
File without changes
|
Binary file
|
File without changes
|
Binary file
|
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.7.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-05-
|
11
|
+
date: 2018-05-23 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: colorize
|
@@ -110,26 +110,6 @@ dependencies:
|
|
110
110
|
- - ">="
|
111
111
|
- !ruby/object:Gem::Version
|
112
112
|
version: 3.12.0
|
113
|
-
- !ruby/object:Gem::Dependency
|
114
|
-
name: chromedriver-helper
|
115
|
-
requirement: !ruby/object:Gem::Requirement
|
116
|
-
requirements:
|
117
|
-
- - "~>"
|
118
|
-
- !ruby/object:Gem::Version
|
119
|
-
version: 1.2.0
|
120
|
-
- - ">="
|
121
|
-
- !ruby/object:Gem::Version
|
122
|
-
version: 1.2.0
|
123
|
-
type: :runtime
|
124
|
-
prerelease: false
|
125
|
-
version_requirements: !ruby/object:Gem::Requirement
|
126
|
-
requirements:
|
127
|
-
- - "~>"
|
128
|
-
- !ruby/object:Gem::Version
|
129
|
-
version: 1.2.0
|
130
|
-
- - ">="
|
131
|
-
- !ruby/object:Gem::Version
|
132
|
-
version: 1.2.0
|
133
113
|
- !ruby/object:Gem::Dependency
|
134
114
|
name: faker
|
135
115
|
requirement: !ruby/object:Gem::Requirement
|
@@ -273,6 +253,7 @@ files:
|
|
273
253
|
- bin/console
|
274
254
|
- bin/release
|
275
255
|
- bin/tests
|
256
|
+
- demo.gif
|
276
257
|
- docker-compose.build.yml
|
277
258
|
- docker-compose.test.yml
|
278
259
|
- docker-compose.yml
|
@@ -302,6 +283,12 @@ files:
|
|
302
283
|
- tests/features/type.rb
|
303
284
|
- tests/features/wait.rb
|
304
285
|
- tests/minimal/main.rb
|
286
|
+
- vendor/chromedriver/linux64/.gitkeep
|
287
|
+
- vendor/chromedriver/linux64/chromedriver
|
288
|
+
- vendor/chromedriver/mac64/.gitkeep
|
289
|
+
- vendor/chromedriver/mac64/chromedriver
|
290
|
+
- vendor/chromedriver/win32/.gitkeep
|
291
|
+
- vendor/chromedriver/win32/chromedriver.exe
|
305
292
|
- web/public/1.html
|
306
293
|
- web/public/2.html
|
307
294
|
- web/public/3.html
|