cuesmash 0.1.1 → 0.1.2
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/Gemfile.lock +9 -1
- data/cuesmash.gemspec +2 -1
- data/lib/cuesmash/command.rb +9 -7
- data/lib/cuesmash/compiler.rb +6 -4
- data/lib/cuesmash/iosapp.rb +10 -2
- data/lib/cuesmash/start.rb +2 -8
- metadata +16 -3
- data/.cuesmash.yml +0 -12
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 114640d3f030cd5c0ea91110205740018e189014
|
4
|
+
data.tar.gz: 6ac499c5a8539f8cea140afab08c86a57db14b19
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a334824e690b218cf2f93268eef0adcbaf4b6242574b48ead7b3e890105faeb3d2549de29f696b681436a72080e76d4968514951632e5ed0f2ff8c1ddc61bfae
|
7
|
+
data.tar.gz: fe92bdc9e3ddeeb9133d21223413877137bfb8d45496b69a028557a902bd415ec7aedef4fe95ab1bab13dac42764e7db1923d36172e9b7773e8d311dd0f1a3cc
|
data/Gemfile.lock
CHANGED
@@ -1,15 +1,21 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
cuesmash (0.
|
4
|
+
cuesmash (0.1.1)
|
5
5
|
CFPropertyList
|
6
6
|
thor
|
7
|
+
xcpretty
|
7
8
|
|
8
9
|
GEM
|
9
10
|
remote: https://rubygems.org/
|
10
11
|
specs:
|
11
12
|
CFPropertyList (2.2.8)
|
13
|
+
byebug (3.2.0)
|
14
|
+
columnize (~> 0.8)
|
15
|
+
debugger-linecache (~> 1.2)
|
12
16
|
coderay (1.0.9)
|
17
|
+
columnize (0.8.9)
|
18
|
+
debugger-linecache (1.2.0)
|
13
19
|
diff-lcs (1.2.5)
|
14
20
|
ffi (1.9.0)
|
15
21
|
formatador (0.2.4)
|
@@ -48,12 +54,14 @@ GEM
|
|
48
54
|
rspec-mocks (2.14.4)
|
49
55
|
slop (3.4.4)
|
50
56
|
thor (0.18.1)
|
57
|
+
xcpretty (0.1.6)
|
51
58
|
|
52
59
|
PLATFORMS
|
53
60
|
ruby
|
54
61
|
|
55
62
|
DEPENDENCIES
|
56
63
|
bundler (~> 1.3)
|
64
|
+
byebug
|
57
65
|
cuesmash!
|
58
66
|
guard-rspec
|
59
67
|
pry
|
data/cuesmash.gemspec
CHANGED
@@ -4,7 +4,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
|
4
4
|
|
5
5
|
Gem::Specification.new do |spec|
|
6
6
|
spec.name = "cuesmash"
|
7
|
-
spec.version = "0.1.
|
7
|
+
spec.version = "0.1.2"
|
8
8
|
spec.authors = ["Alex Fish", "Jarod McBride"]
|
9
9
|
spec.email = ["fish@ustwo.co.uk", "jarod@ustwo.com"]
|
10
10
|
spec.description = "A gift for Juan"
|
@@ -28,6 +28,7 @@ Gem::Specification.new do |spec|
|
|
28
28
|
|
29
29
|
spec.add_runtime_dependency "CFPropertyList"
|
30
30
|
spec.add_runtime_dependency "thor"
|
31
|
+
spec.add_runtime_dependency "xcpretty"
|
31
32
|
|
32
33
|
spec.executables << "cuesmash"
|
33
34
|
end
|
data/lib/cuesmash/command.rb
CHANGED
@@ -21,7 +21,7 @@ module Cuesmash
|
|
21
21
|
# @param *args [Array] An Array of arguments to play with
|
22
22
|
#
|
23
23
|
# @return [type] [description]
|
24
|
-
def execute(device:, os:, server:, tags:, scheme:, debug: false, format: nil, output: nil)
|
24
|
+
def execute(device:, os:, server:, tags:, scheme:, debug: false, format: nil, output: nil, travis: nil)
|
25
25
|
|
26
26
|
if debug
|
27
27
|
Logger.level = ::Logger::DEBUG
|
@@ -31,7 +31,7 @@ module Cuesmash
|
|
31
31
|
end
|
32
32
|
|
33
33
|
# Create new IosApp object
|
34
|
-
app = IosApp.new(file_name: scheme)
|
34
|
+
app = IosApp.new(file_name: scheme, travis_build: travis)
|
35
35
|
app_server = AppiumServer.new
|
36
36
|
|
37
37
|
# Compile the project
|
@@ -46,12 +46,14 @@ module Cuesmash
|
|
46
46
|
run_tests(os, tags, format, output)
|
47
47
|
# Stop the Appium server
|
48
48
|
# app_server.stop_server
|
49
|
-
end
|
49
|
+
end # compile
|
50
50
|
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
51
|
+
unless travis
|
52
|
+
# clean up temp dir
|
53
|
+
Logger.info "Cleaning up tmp dir\n"
|
54
|
+
FileUtils.remove_entry app.tmp_dir
|
55
|
+
end
|
56
|
+
end # execute
|
55
57
|
|
56
58
|
#
|
57
59
|
# Kick off a compile
|
data/lib/cuesmash/compiler.rb
CHANGED
@@ -36,8 +36,8 @@ module Cuesmash
|
|
36
36
|
[out, err].each do |stream|
|
37
37
|
Thread.new do
|
38
38
|
until (line = stream.gets).nil? do
|
39
|
-
|
40
|
-
output << line
|
39
|
+
Logger.info line
|
40
|
+
# output << line
|
41
41
|
end
|
42
42
|
end
|
43
43
|
end
|
@@ -77,8 +77,10 @@ module Cuesmash
|
|
77
77
|
#
|
78
78
|
# @return [String] The full xcode build command with args
|
79
79
|
def command
|
80
|
-
xcode_command = "xcodebuild #{workspace} -scheme #{@scheme} -sdk iphonesimulator CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO -derivedDataPath #{@tmp_dir}"
|
81
|
-
|
80
|
+
# xcode_command = "xcodebuild #{workspace} -scheme #{@scheme} -sdk iphonesimulator CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED=NO -derivedDataPath #{@tmp_dir}"
|
81
|
+
xcode_command = "set -o pipefail && xcodebuild #{workspace} -scheme #{@scheme} -derivedDataPath #{@tmp_dir} -configuration Release OBJROOT=#{@tmp_dir} SYMROOT=#{@tmp_dir} -sdk iphonesimulator build | bundle exec xcpretty -c"
|
82
|
+
|
83
|
+
Logger.debug "xcode_command == #{xcode_command}"
|
82
84
|
xcode_command
|
83
85
|
end
|
84
86
|
|
data/lib/cuesmash/iosapp.rb
CHANGED
@@ -28,10 +28,18 @@ module Cuesmash
|
|
28
28
|
# @param file_name [String] The usually is the scheme of the xcode project
|
29
29
|
#
|
30
30
|
# @return [App] A app instance
|
31
|
-
def initialize(file_name:)
|
31
|
+
def initialize(file_name:, travis_build: false)
|
32
32
|
@app_name = "#{file_name}" << ".app"
|
33
33
|
@tmp_dir = Dir.mktmpdir(file_name)
|
34
|
-
|
34
|
+
|
35
|
+
# if we are running this on travis then we want to build inside the project
|
36
|
+
# dir (it's a VM so it gets cleaned up each run). Otherwise let's create
|
37
|
+
# our own tmp dir for each build.
|
38
|
+
if travis_build
|
39
|
+
@app_dir = "./build/Release-iphonesimulator/"
|
40
|
+
else
|
41
|
+
@app_dir = "#{@tmp_dir}" << "/Release-iphonesimulator/"
|
42
|
+
end
|
35
43
|
@app_path = "#{@app_dir}" << "#{@app_name}"
|
36
44
|
end
|
37
45
|
end
|
data/lib/cuesmash/start.rb
CHANGED
@@ -26,6 +26,7 @@ module Cuesmash
|
|
26
26
|
method_option :scheme, type: :string, aliases: "-s", desc: "the Xcode scheme to build"
|
27
27
|
method_option :tags, type: :array, aliases: "-t", desc: "the tags to pass to cucumber, for multiple tags pass one per tag"
|
28
28
|
method_option :debug, type: :boolean, default: false, aliases: "-d", desc: "turn on debug output."
|
29
|
+
method_option :travis_ci, type: :boolean, default: false, aliases: "-c", desc: "turn on settings for building on Travis CI"
|
29
30
|
# method_option :server, type: :string, aliases: "-r", desc: ""
|
30
31
|
def test
|
31
32
|
|
@@ -40,16 +41,9 @@ module Cuesmash
|
|
40
41
|
config['devices'].each do |device, oses|
|
41
42
|
oses.each do |os|
|
42
43
|
say "\n============================\ntesting iOS #{os} on #{device}", :green
|
43
|
-
Cuesmash::Command.execute(device: device, os: os, server: options[:server], tags: options[:tags], scheme: options[:scheme], debug: options[:debug])
|
44
|
+
Cuesmash::Command.execute(device: device, os: os, server: options[:server], tags: options[:tags], scheme: options[:scheme], travis: options[:travis_ci], debug: options[:debug])
|
44
45
|
end
|
45
46
|
end # device each
|
46
47
|
end # test
|
47
|
-
|
48
|
-
desc "demo FILE", "an example task"
|
49
|
-
method_option :delete, aliases: "-d", desc: "Delete the file after parsing it"
|
50
|
-
def demo
|
51
|
-
puts "options == #{options}"
|
52
|
-
end
|
53
|
-
|
54
48
|
end # Start class
|
55
49
|
end # module Cuesmash
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cuesmash
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Alex Fish
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2014-09-
|
12
|
+
date: 2014-09-29 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: bundler
|
@@ -123,6 +123,20 @@ dependencies:
|
|
123
123
|
- - ">="
|
124
124
|
- !ruby/object:Gem::Version
|
125
125
|
version: '0'
|
126
|
+
- !ruby/object:Gem::Dependency
|
127
|
+
name: xcpretty
|
128
|
+
requirement: !ruby/object:Gem::Requirement
|
129
|
+
requirements:
|
130
|
+
- - ">="
|
131
|
+
- !ruby/object:Gem::Version
|
132
|
+
version: '0'
|
133
|
+
type: :runtime
|
134
|
+
prerelease: false
|
135
|
+
version_requirements: !ruby/object:Gem::Requirement
|
136
|
+
requirements:
|
137
|
+
- - ">="
|
138
|
+
- !ruby/object:Gem::Version
|
139
|
+
version: '0'
|
126
140
|
description: A gift for Juan
|
127
141
|
email:
|
128
142
|
- fish@ustwo.co.uk
|
@@ -132,7 +146,6 @@ executables:
|
|
132
146
|
extensions: []
|
133
147
|
extra_rdoc_files: []
|
134
148
|
files:
|
135
|
-
- ".cuesmash.yml"
|
136
149
|
- ".gitignore"
|
137
150
|
- ".travis.yml"
|
138
151
|
- Gemfile
|