skeleton-ui 0.1.2 → 0.1.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 +4 -4
- data/README.md +1 -0
- data/bin/skeleton +3 -2
- data/html/server.rb +3 -2
- data/lib/skeleton.rb +3 -3
- data/lib/skeleton/ios.rb +16 -4
- data/lib/skeleton/root.rb +5 -3
- data/lib/skeleton/version.rb +1 -1
- data/skeleton.gemspec +1 -0
- metadata +16 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5257b8d04043400f487c2b9a77bbf8047de5b21374283add68698b1785a6224a
|
4
|
+
data.tar.gz: 32556ec05afce6349e8404780158349c6b97eb15591f723ba820e9f926fa055c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 701ae03bf7beb1e3a8384c8685050cf62cc70c3fb624a6f97d3246054cd06d5407e9986a8b91721648848ad71d5ec10bb583281ffeff0b7ab9c99ec021454f67
|
7
|
+
data.tar.gz: ef0aecdff8b5aebda6744c51deb2b872352511989b0731cfd481692bed34270d064930bc3f29a27523e9d9261f26299fef17969b6b161f1998a1bc06ad2dba98
|
data/README.md
CHANGED
@@ -16,6 +16,7 @@ Prerequisites:
|
|
16
16
|
#### iOS
|
17
17
|
- Install [Xcode](https://developer.apple.com/xcode/download/).
|
18
18
|
- Install [Xcode Command Line Tools](http://railsapps.github.io/xcode-command-line-tools.html).
|
19
|
+
- Install [ideviceinstaller](http://brewformulas.org/Ideviceinstaller)
|
19
20
|
|
20
21
|
Installation:
|
21
22
|
------
|
data/bin/skeleton
CHANGED
@@ -2,6 +2,7 @@
|
|
2
2
|
|
3
3
|
require 'commander/import'
|
4
4
|
require_relative '../lib/skeleton'
|
5
|
+
require_relative '../lib/skeleton/root'
|
5
6
|
|
6
7
|
module Skeleton
|
7
8
|
program :version, VERSION
|
@@ -37,7 +38,7 @@ module Skeleton
|
|
37
38
|
c.option '-p', '--port PORT', String, 'Set web-server port'
|
38
39
|
c.action do |_args, options|
|
39
40
|
options.default(port: 4567)
|
40
|
-
system("
|
41
|
+
system("ruby #{Base::ROOT_DIR}/html/server.rb #{options.port}")
|
41
42
|
end
|
42
43
|
end
|
43
|
-
end
|
44
|
+
end
|
data/html/server.rb
CHANGED
@@ -1,11 +1,12 @@
|
|
1
1
|
require 'sinatra'
|
2
|
+
require_relative '../lib/skeleton/root'
|
2
3
|
|
3
4
|
set :port, ARGV[0]
|
4
5
|
|
5
6
|
get '/:file' do
|
6
|
-
send_file params[:file]
|
7
|
+
send_file "#{Base::ROOT_DIR}/html/#{params[:file]}"
|
7
8
|
end
|
8
9
|
|
9
10
|
post '/:file' do
|
10
|
-
send_file params[:file]
|
11
|
+
send_file "#{Base::ROOT_DIR}/html/#{params[:file]}"
|
11
12
|
end
|
data/lib/skeleton.rb
CHANGED
@@ -61,9 +61,9 @@ module Skeleton
|
|
61
61
|
@elements_tree.gsub!('<', '<')
|
62
62
|
@elements_tree.gsub!('>', '>')
|
63
63
|
end
|
64
|
-
template = File.read(
|
64
|
+
template = File.read("#{Base::ROOT_DIR}/html/template.html.erb")
|
65
65
|
result = ERB.new(template).result(binding)
|
66
|
-
File.open("
|
66
|
+
File.open("#{Base::ROOT_DIR}/html/#{lang}.html", 'w+') { |f| f.write(result) }
|
67
67
|
end
|
68
68
|
end
|
69
69
|
|
@@ -71,7 +71,7 @@ module Skeleton
|
|
71
71
|
screenshot = Dir["#{Base::ATTACHMENTS_FOLDER}/*.png"].first
|
72
72
|
image = MiniMagick::Image.new(screenshot)
|
73
73
|
image.rotate(90) if image.width > image.height
|
74
|
-
FileUtils.cp_r(screenshot,
|
74
|
+
FileUtils.cp_r(screenshot, "#{Base::ROOT_DIR}/html/screenshot.png")
|
75
75
|
rescue MiniMagick::Error => e
|
76
76
|
@driver.log.error(e)
|
77
77
|
end
|
data/lib/skeleton/ios.rb
CHANGED
@@ -28,6 +28,7 @@ class IOS < Base
|
|
28
28
|
def skeletoner
|
29
29
|
log.info('We starting to skeleton your screen 🚀')
|
30
30
|
check_udid
|
31
|
+
check_bundle
|
31
32
|
page_source
|
32
33
|
create_page_objects
|
33
34
|
save_screenshot
|
@@ -123,10 +124,9 @@ class IOS < Base
|
|
123
124
|
@page_source.slice!(start_grep)
|
124
125
|
@page_source.slice!(end_grep)
|
125
126
|
if @page_source.empty?
|
126
|
-
log.fatal("
|
127
|
-
|
128
|
-
|
129
|
-
'3. Check your app bundle_id')
|
127
|
+
log.fatal("Try to sign Skeleton in #{XCODEPROJ_FOLDER}.\n" \
|
128
|
+
'For more info read: https://github.com/forqa/skeleton/' \
|
129
|
+
'blob/master/docs/real-ios-device-config.md')
|
130
130
|
raise
|
131
131
|
end
|
132
132
|
log.info('Successfully getting Screen Source Tree 🔥')
|
@@ -144,6 +144,18 @@ class IOS < Base
|
|
144
144
|
raise
|
145
145
|
end
|
146
146
|
|
147
|
+
def check_bundle
|
148
|
+
if @simulator
|
149
|
+
return if `xcrun simctl appinfo #{@udid} #{@bundle_id}`
|
150
|
+
.include?("CFBundleName")
|
151
|
+
else
|
152
|
+
return if `ideviceinstaller -u #{@udid} -l`
|
153
|
+
.include?(@bundle_id)
|
154
|
+
end
|
155
|
+
log.fatal("No such apps with bundle_id: #{@bundle_id}")
|
156
|
+
raise
|
157
|
+
end
|
158
|
+
|
147
159
|
def save_screenshot
|
148
160
|
log.info('Saving screenshot 📷')
|
149
161
|
png_path = "#{XCRESULTS_FOLDER}/Attachments/*.png"
|
data/lib/skeleton/root.rb
CHANGED
@@ -1,5 +1,7 @@
|
|
1
|
+
require_relative 'version'
|
2
|
+
|
1
3
|
class Base
|
2
|
-
ROOT_DIR = File.expand_path('..', Dir.pwd)
|
3
|
-
|
4
|
-
|
4
|
+
# ROOT_DIR = File.expand_path('..', Dir.pwd)
|
5
|
+
ROOT_DIR = "#{`gem environment gemdir`.strip}" \
|
6
|
+
"/gems/#{Skeleton::GEM_NAME}-#{Skeleton::VERSION}"
|
5
7
|
end
|
data/lib/skeleton/version.rb
CHANGED
data/skeleton.gemspec
CHANGED
@@ -30,6 +30,7 @@ Gem::Specification.new do |spec|
|
|
30
30
|
spec.add_dependency "colorize", "~> 0.8.1"
|
31
31
|
spec.add_dependency "mini_magick", "~> 4.8.0"
|
32
32
|
spec.add_dependency "nokogiri", "~> 1.8.2"
|
33
|
+
spec.add_dependency "sinatra", "~> 2.0.3"
|
33
34
|
spec.add_dependency "fileutils"
|
34
35
|
spec.add_dependency "commander"
|
35
36
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: skeleton-ui
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- a.alterpesotskiy
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2018-07-
|
11
|
+
date: 2018-07-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -94,6 +94,20 @@ dependencies:
|
|
94
94
|
- - "~>"
|
95
95
|
- !ruby/object:Gem::Version
|
96
96
|
version: 1.8.2
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: sinatra
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - "~>"
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: 2.0.3
|
104
|
+
type: :runtime
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - "~>"
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: 2.0.3
|
97
111
|
- !ruby/object:Gem::Dependency
|
98
112
|
name: fileutils
|
99
113
|
requirement: !ruby/object:Gem::Requirement
|