calabash-cucumber 0.18.2 → 0.19.0.pre1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/bin/calabash-ios +0 -16
- data/bin/calabash-ios-build.rb +0 -86
- data/bin/calabash-ios-helpers.rb +0 -65
- data/bin/calabash-ios-setup.rb +5 -119
- data/bin/calabash-ios-sim.rb +0 -37
- data/bin/frank-calabash +0 -1
- data/doc/calabash-ios-help.txt +0 -8
- data/dylibs/libCalabashDyn.dylib +0 -0
- data/dylibs/libCalabashDynSim.dylib +0 -0
- data/features-skeleton/support/01_launch.rb +3 -4
- data/features/step_definitions/calabash_steps.rb +1 -7
- data/lib/calabash-cucumber.rb +1 -2
- data/lib/calabash-cucumber/actions/instruments_actions.rb +2 -3
- data/lib/calabash-cucumber/core.rb +97 -101
- data/lib/calabash-cucumber/device.rb +5 -118
- data/lib/calabash-cucumber/environment.rb +109 -5
- data/lib/calabash-cucumber/environment_helpers.rb +4 -66
- data/lib/calabash-cucumber/http/http.rb +114 -0
- data/lib/calabash-cucumber/http_helpers.rb +3 -1
- data/lib/calabash-cucumber/ipad_1x_2x.rb +5 -7
- data/lib/calabash-cucumber/keyboard_helpers.rb +0 -44
- data/lib/calabash-cucumber/launcher.rb +425 -808
- data/lib/calabash-cucumber/logging.rb +2 -74
- data/lib/calabash-cucumber/operations.rb +0 -2
- data/lib/calabash-cucumber/rotation_helpers.rb +2 -82
- data/lib/calabash-cucumber/status_bar_helpers.rb +2 -8
- data/lib/calabash-cucumber/store/preferences.rb +2 -1
- data/lib/calabash-cucumber/uia.rb +4 -9
- data/lib/calabash-cucumber/version.rb +2 -2
- data/lib/calabash-cucumber/wait_helpers.rb +0 -2
- data/staticlib/calabash.framework.zip +0 -0
- data/staticlib/libFrankCalabash.a +0 -0
- metadata +13 -143
- data/lib/calabash-cucumber/actions/playback_actions.rb +0 -109
- data/lib/calabash-cucumber/deprecated.rb +0 -34
- data/lib/calabash-cucumber/launch/simulator_helper.rb +0 -62
- data/lib/calabash-cucumber/launch/simulator_launcher.rb +0 -617
- data/lib/calabash-cucumber/playback_helpers.rb +0 -225
- data/lib/calabash-cucumber/resources/cell_swipe_ios4_ipad.base64 +0 -51
- data/lib/calabash-cucumber/resources/cell_swipe_ios4_iphone.base64 +0 -51
- data/lib/calabash-cucumber/resources/cell_swipe_ios5_ipad.base64 +0 -74
- data/lib/calabash-cucumber/resources/cell_swipe_ios5_iphone.base64 +0 -74
- data/lib/calabash-cucumber/resources/double_tap_ios5_ipad.base64 +0 -15
- data/lib/calabash-cucumber/resources/double_tap_ios5_iphone.base64 +0 -15
- data/lib/calabash-cucumber/resources/double_tap_ios6_ipad.base64 +0 -22
- data/lib/calabash-cucumber/resources/double_tap_ios6_iphone.base64 +0 -22
- data/lib/calabash-cucumber/resources/pan_ios5_ipad.base64 +0 -199
- data/lib/calabash-cucumber/resources/pan_ios5_iphone.base64 +0 -199
- data/lib/calabash-cucumber/resources/pan_ios6_ipad.base64 +0 -206
- data/lib/calabash-cucumber/resources/pan_ios6_iphone.base64 +0 -206
- data/lib/calabash-cucumber/resources/pinch_in_ios4_ipad.base64 +0 -104
- data/lib/calabash-cucumber/resources/pinch_in_ios4_iphone.base64 +0 -104
- data/lib/calabash-cucumber/resources/pinch_in_ios5_ipad.base64 +0 -144
- data/lib/calabash-cucumber/resources/pinch_in_ios5_iphone.base64 +0 -144
- data/lib/calabash-cucumber/resources/pinch_in_ios6_ipad.base64 +0 -70
- data/lib/calabash-cucumber/resources/pinch_in_ios6_iphone.base64 +0 -70
- data/lib/calabash-cucumber/resources/pinch_out_ios5_ipad.base64 +0 -207
- data/lib/calabash-cucumber/resources/pinch_out_ios5_iphone.base64 +0 -207
- data/lib/calabash-cucumber/resources/pinch_out_ios6_ipad.base64 +0 -96
- data/lib/calabash-cucumber/resources/pinch_out_ios6_iphone.base64 +0 -96
- data/lib/calabash-cucumber/resources/rotate_left_home_down_ios4_ipad.base64 +0 -2
- data/lib/calabash-cucumber/resources/rotate_left_home_down_ios4_iphone.base64 +0 -2
- data/lib/calabash-cucumber/resources/rotate_left_home_down_ios5_ipad.base64 +0 -2
- data/lib/calabash-cucumber/resources/rotate_left_home_down_ios5_iphone.base64 +0 -2
- data/lib/calabash-cucumber/resources/rotate_left_home_left_ios4_ipad.base64 +0 -2
- data/lib/calabash-cucumber/resources/rotate_left_home_left_ios4_iphone.base64 +0 -2
- data/lib/calabash-cucumber/resources/rotate_left_home_left_ios5_ipad.base64 +0 -2
- data/lib/calabash-cucumber/resources/rotate_left_home_left_ios5_iphone.base64 +0 -2
- data/lib/calabash-cucumber/resources/rotate_left_home_right_ios4_ipad.base64 +0 -2
- data/lib/calabash-cucumber/resources/rotate_left_home_right_ios4_iphone.base64 +0 -2
- data/lib/calabash-cucumber/resources/rotate_left_home_right_ios5_ipad.base64 +0 -2
- data/lib/calabash-cucumber/resources/rotate_left_home_right_ios5_iphone.base64 +0 -2
- data/lib/calabash-cucumber/resources/rotate_left_home_up_ios4_ipad.base64 +0 -2
- data/lib/calabash-cucumber/resources/rotate_left_home_up_ios4_iphone.base64 +0 -2
- data/lib/calabash-cucumber/resources/rotate_left_home_up_ios5_ipad.base64 +0 -2
- data/lib/calabash-cucumber/resources/rotate_left_home_up_ios5_iphone.base64 +0 -2
- data/lib/calabash-cucumber/resources/rotate_right_home_down_ios4_ipad.base64 +0 -2
- data/lib/calabash-cucumber/resources/rotate_right_home_down_ios4_iphone.base64 +0 -2
- data/lib/calabash-cucumber/resources/rotate_right_home_down_ios5_ipad.base64 +0 -2
- data/lib/calabash-cucumber/resources/rotate_right_home_down_ios5_iphone.base64 +0 -2
- data/lib/calabash-cucumber/resources/rotate_right_home_left_ios4_ipad.base64 +0 -2
- data/lib/calabash-cucumber/resources/rotate_right_home_left_ios4_iphone.base64 +0 -2
- data/lib/calabash-cucumber/resources/rotate_right_home_left_ios5_ipad.base64 +0 -2
- data/lib/calabash-cucumber/resources/rotate_right_home_left_ios5_iphone.base64 +0 -2
- data/lib/calabash-cucumber/resources/rotate_right_home_right_ios4_ipad.base64 +0 -2
- data/lib/calabash-cucumber/resources/rotate_right_home_right_ios4_iphone.base64 +0 -2
- data/lib/calabash-cucumber/resources/rotate_right_home_right_ios5_ipad.base64 +0 -2
- data/lib/calabash-cucumber/resources/rotate_right_home_right_ios5_iphone.base64 +0 -2
- data/lib/calabash-cucumber/resources/rotate_right_home_up_ios4_ipad.base64 +0 -2
- data/lib/calabash-cucumber/resources/rotate_right_home_up_ios4_iphone.base64 +0 -2
- data/lib/calabash-cucumber/resources/rotate_right_home_up_ios5_ipad.base64 +0 -2
- data/lib/calabash-cucumber/resources/rotate_right_home_up_ios5_iphone.base64 +0 -2
- data/lib/calabash-cucumber/resources/swipe_down_ios5_ipad.base64 +0 -18
- data/lib/calabash-cucumber/resources/swipe_down_ios5_iphone.base64 +0 -31
- data/lib/calabash-cucumber/resources/swipe_down_ios6_ipad.base64 +0 -25
- data/lib/calabash-cucumber/resources/swipe_down_ios6_iphone.base64 +0 -25
- data/lib/calabash-cucumber/resources/swipe_left_hard_ios4_ipad.base64 +0 -15
- data/lib/calabash-cucumber/resources/swipe_left_hard_ios4_iphone.base64 +0 -15
- data/lib/calabash-cucumber/resources/swipe_left_ios4_ipad.base64 +0 -18
- data/lib/calabash-cucumber/resources/swipe_left_ios4_iphone.base64 +0 -18
- data/lib/calabash-cucumber/resources/swipe_left_ios5_ipad.base64 +0 -17
- data/lib/calabash-cucumber/resources/swipe_left_ios5_iphone.base64 +0 -34
- data/lib/calabash-cucumber/resources/swipe_left_ios6_ipad.base64 +0 -28
- data/lib/calabash-cucumber/resources/swipe_left_ios6_iphone.base64 +0 -28
- data/lib/calabash-cucumber/resources/swipe_right_hard_ios4_ipad.base64 +0 -17
- data/lib/calabash-cucumber/resources/swipe_right_hard_ios4_iphone.base64 +0 -17
- data/lib/calabash-cucumber/resources/swipe_right_ios4_ipad.base64 +0 -13
- data/lib/calabash-cucumber/resources/swipe_right_ios4_iphone.base64 +0 -13
- data/lib/calabash-cucumber/resources/swipe_right_ios5_ipad.base64 +0 -17
- data/lib/calabash-cucumber/resources/swipe_right_ios5_iphone.base64 +0 -17
- data/lib/calabash-cucumber/resources/swipe_right_ios6_ipad.base64 +0 -25
- data/lib/calabash-cucumber/resources/swipe_right_ios6_iphone.base64 +0 -25
- data/lib/calabash-cucumber/resources/swipe_up_ios5_ipad.base64 +0 -34
- data/lib/calabash-cucumber/resources/swipe_up_ios5_iphone.base64 +0 -28
- data/lib/calabash-cucumber/resources/swipe_up_ios6_ipad.base64 +0 -25
- data/lib/calabash-cucumber/resources/swipe_up_ios6_iphone.base64 +0 -25
- data/lib/calabash-cucumber/resources/touch_done_ios4_ipad.base64 +0 -7
- data/lib/calabash-cucumber/resources/touch_done_ios4_iphone.base64 +0 -9
- data/lib/calabash-cucumber/resources/touch_done_ios5_ipad.base64 +0 -7
- data/lib/calabash-cucumber/resources/touch_done_ios5_iphone.base64 +0 -9
- data/lib/calabash-cucumber/resources/touch_hold_ios5_ipad.base64 +0 -9
- data/lib/calabash-cucumber/resources/touch_hold_ios5_iphone.base64 +0 -9
- data/lib/calabash-cucumber/resources/touch_hold_ios6_ipad.base64 +0 -9
- data/lib/calabash-cucumber/resources/touch_hold_ios6_iphone.base64 +0 -9
- data/lib/calabash-cucumber/resources/touch_ios4_ipad.base64 +0 -9
- data/lib/calabash-cucumber/resources/touch_ios4_iphone.base64 +0 -9
- data/lib/calabash-cucumber/resources/touch_ios5_ipad.base64 +0 -9
- data/lib/calabash-cucumber/resources/touch_ios5_iphone.base64 +0 -9
- data/lib/calabash-cucumber/resources/touch_ios7_ipad.base64 +0 -9
- data/lib/calabash-cucumber/resources/touch_ios7_iphone.base64 +0 -9
- data/lib/calabash-cucumber/resources/wheel_down_ios4_ipad.base64 +0 -159
- data/lib/calabash-cucumber/resources/wheel_down_ios4_iphone.base64 +0 -159
- data/lib/calabash-cucumber/resources/wheel_down_ios5_ipad.base64 +0 -156
- data/lib/calabash-cucumber/resources/wheel_down_ios5_iphone.base64 +0 -156
- data/lib/calabash-cucumber/resources/wheel_up_ios4_ipad.base64 +0 -166
- data/lib/calabash-cucumber/resources/wheel_up_ios4_iphone.base64 +0 -166
- data/lib/calabash-cucumber/resources/wheel_up_ios5_ipad.base64 +0 -156
- data/lib/calabash-cucumber/resources/wheel_up_ios5_iphone.base64 +0 -156
- data/lib/calabash-cucumber/utils/logging.rb +0 -111
- data/lib/calabash-cucumber/utils/plist_buddy.rb +0 -45
- data/lib/calabash-cucumber/utils/simulator_accessibility.rb +0 -334
- data/lib/calabash-cucumber/utils/xctools.rb +0 -101
- data/scripts/.irbrc +0 -64
- data/scripts/launch.rb +0 -48
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: eee61874d45cf5a644357bbb94f66e192c7fbf21
|
4
|
+
data.tar.gz: f87c5f01be803264e51e31aa5d90ae24c10d6e90
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: fc75e8e97b33cad2d2169a58c62790e73b6a016d55fb41032fc216ed7b1d02443f09564f4a3b8bb2a3ce651d716dea7fbda845b5680d9f5ada6af2b4a49f34d2
|
7
|
+
data.tar.gz: 7febfab9502b7054478efa2bb54817d7dcf58e7a84fe0e6e7afa818a6565a83e70ef81190266465807f2b9f0b760fade9e23d5d1ccac753b06e8650c4f4578d4
|
data/bin/calabash-ios
CHANGED
@@ -31,15 +31,6 @@ elsif cmd == 'gen'
|
|
31
31
|
elsif cmd == 'console'
|
32
32
|
console
|
33
33
|
exit 0
|
34
|
-
elsif cmd == 'build'
|
35
|
-
build
|
36
|
-
exit 0
|
37
|
-
elsif cmd == 'update'
|
38
|
-
update(ARGV)
|
39
|
-
exit 0
|
40
|
-
elsif cmd == 'run'
|
41
|
-
run
|
42
|
-
exit 0
|
43
34
|
elsif cmd == 'download'
|
44
35
|
calabash_download(ARGV)
|
45
36
|
exit 0
|
@@ -49,9 +40,6 @@ elsif cmd == 'setup'
|
|
49
40
|
elsif cmd == 'check'
|
50
41
|
validate_setup(ARGV)
|
51
42
|
exit 0
|
52
|
-
elsif cmd == 'submit'
|
53
|
-
calabash_submit(ARGV)
|
54
|
-
exit 0
|
55
43
|
elsif cmd == 'version'
|
56
44
|
require 'calabash-cucumber'
|
57
45
|
puts Calabash::Cucumber::VERSION
|
@@ -71,13 +59,9 @@ elsif cmd == 'sim'
|
|
71
59
|
calabash_sim_location(ARGV)
|
72
60
|
elsif subcmd == 'locale'
|
73
61
|
calabash_sim_locale(ARGV)
|
74
|
-
elsif subcmd == 'device'
|
75
|
-
calabash_sim_device(ARGV)
|
76
62
|
else
|
77
63
|
print_usage
|
78
64
|
end
|
79
65
|
else
|
80
66
|
print_usage
|
81
67
|
end
|
82
|
-
|
83
|
-
|
data/bin/calabash-ios-build.rb
CHANGED
@@ -1,48 +1,3 @@
|
|
1
|
-
def ensure_build_dir(options={:build_dir => "Calabash"})
|
2
|
-
if !File.exist?(options[:build_dir])
|
3
|
-
FileUtils.mkdir_p options[:build_dir]
|
4
|
-
end
|
5
|
-
end
|
6
|
-
|
7
|
-
def build(options={:build_dir=>"Calabash",
|
8
|
-
:configuration => "Debug",
|
9
|
-
:sdk => "iphonesimulator",
|
10
|
-
:dstroot => "Calabash/build",
|
11
|
-
:wrapper_name => "Calabash.app"})
|
12
|
-
#Follow Pete's .xcconfig-based approach with zero-config
|
13
|
-
|
14
|
-
ensure_build_dir(options)
|
15
|
-
|
16
|
-
if !File.exists?("#{options[:build_dir]}/cal.xcconfig")
|
17
|
-
FileUtils.cp(File.join(File.dirname(__FILE__),"cal.xcconfig"),"#{options[:build_dir]}/cal.xcconfig")
|
18
|
-
end
|
19
|
-
|
20
|
-
cmd=["xcodebuild"]
|
21
|
-
cmd << %Q[-xcconfig "#{options[:build_dir]}/cal.xcconfig"]
|
22
|
-
cmd << "install"
|
23
|
-
|
24
|
-
(options[:target] || []).each do |tgt|
|
25
|
-
options << %Q[-target "#{tgt}"]
|
26
|
-
end
|
27
|
-
|
28
|
-
cmd << "-configuration"
|
29
|
-
cmd << %Q["#{options[:configuration]}"]
|
30
|
-
|
31
|
-
cmd << "-sdk"
|
32
|
-
cmd << %Q["#{options[:sdk]}"]
|
33
|
-
|
34
|
-
cmd << %Q[DSTROOT="#{options[:dstroot]}"]
|
35
|
-
|
36
|
-
cmd << %Q[WRAPPER_NAME="#{options[:wrapper_name]}"]
|
37
|
-
|
38
|
-
res =nil
|
39
|
-
msg("Calabash Build") do
|
40
|
-
cmd_s = cmd.join(" ")
|
41
|
-
puts cmd_s
|
42
|
-
res=system(cmd_s)
|
43
|
-
end
|
44
|
-
res
|
45
|
-
end
|
46
1
|
|
47
2
|
def console
|
48
3
|
path = ENV['CALABASH_IRBRC']
|
@@ -58,44 +13,3 @@ def console
|
|
58
13
|
puts "Running irb..."
|
59
14
|
exec("irb")
|
60
15
|
end
|
61
|
-
|
62
|
-
|
63
|
-
def run(options={:build_dir=>"Calabash",
|
64
|
-
:configuration => "Debug",
|
65
|
-
:sdk => "iphonesimulator",
|
66
|
-
:dstroot => "Calabash/build",
|
67
|
-
:wrapper_name => "Calabash.app"})
|
68
|
-
if ENV['NO_DOWNLOAD'] != "1"
|
69
|
-
if !File.directory?("calabash.framework")
|
70
|
-
calabash_download(ARGV)
|
71
|
-
end
|
72
|
-
end
|
73
|
-
|
74
|
-
if ENV['NO_BUILD'] != "1"
|
75
|
-
if !build(options)
|
76
|
-
msg("Error") do
|
77
|
-
puts "Build failed. Please consult logs. Aborting."
|
78
|
-
exit(false)
|
79
|
-
end
|
80
|
-
end
|
81
|
-
end
|
82
|
-
|
83
|
-
if ENV["NO_GEN"] != "1"
|
84
|
-
if !File.directory?("features")
|
85
|
-
calabash_scaffold
|
86
|
-
else
|
87
|
-
msg("Info") do
|
88
|
-
puts "Detected features folder, will not generate..."
|
89
|
-
end
|
90
|
-
end
|
91
|
-
end
|
92
|
-
|
93
|
-
default_path = "#{options[:dstroot]}/#{options[:wrapper_name]}"
|
94
|
-
cmd = %Q[APP_BUNDLE_PATH="#{ENV['APP_BUNDLE_PATH'] || default_path}" cucumber]
|
95
|
-
msg("Info") do
|
96
|
-
puts "Running command:"
|
97
|
-
puts cmd
|
98
|
-
end
|
99
|
-
system(cmd)
|
100
|
-
puts "Done..."
|
101
|
-
end
|
data/bin/calabash-ios-helpers.rb
CHANGED
@@ -22,8 +22,6 @@ def print_usage
|
|
22
22
|
starts an interactive console to interact with your app via Calabash
|
23
23
|
setup [<path>]
|
24
24
|
setup your XCode project for calabash-ios (EXPERIMENTAL)
|
25
|
-
update [target]
|
26
|
-
updates one of the following targets: hooks
|
27
25
|
download
|
28
26
|
install latest compatible version of calabash.framework
|
29
27
|
check [{<path to .ipa>|<path to .app>}]
|
@@ -36,8 +34,6 @@ def print_usage
|
|
36
34
|
reset content and settings in all iOS Simulators
|
37
35
|
sim acc
|
38
36
|
enable accessibility in all iOS Simulators
|
39
|
-
sim device {iPad|iPad_Retina|iPhone|iPhone_Retina|iPhone_Retina_4inch}
|
40
|
-
change the default iOS Simulator device.
|
41
37
|
EOF
|
42
38
|
end
|
43
39
|
|
@@ -72,64 +68,3 @@ def ensure_correct_path(args)
|
|
72
68
|
end
|
73
69
|
return dir_to_search,project_files
|
74
70
|
end
|
75
|
-
|
76
|
-
|
77
|
-
def is_json?(str)
|
78
|
-
str[0..0] == '{'
|
79
|
-
end
|
80
|
-
|
81
|
-
# @!visibility private
|
82
|
-
# @deprecated Replaced with test-cloud gem
|
83
|
-
def calabash_submit(args)
|
84
|
-
if args.size < 2
|
85
|
-
msg("Error") do
|
86
|
-
puts "You must supply at path to ipa and secret."
|
87
|
-
end
|
88
|
-
exit 1
|
89
|
-
end
|
90
|
-
|
91
|
-
ipa_file = args[0]
|
92
|
-
if not File.exists?(ipa_file)
|
93
|
-
msg("Error") do
|
94
|
-
puts "Unable to find .ipa at '#{ipa_file}'"
|
95
|
-
end
|
96
|
-
exit 1
|
97
|
-
end
|
98
|
-
|
99
|
-
secret = args[1]
|
100
|
-
|
101
|
-
archive_path = "#{Tempfile.new("archive").path}.zip"
|
102
|
-
|
103
|
-
feature_path = "features"
|
104
|
-
if args.length == 3
|
105
|
-
msg("Error") do
|
106
|
-
puts "Not implemented: You can't supply a path to features folder yet."
|
107
|
-
puts "You should cd into your project folder containing your features folder"
|
108
|
-
puts "and then run this command again"
|
109
|
-
end
|
110
|
-
exit 1
|
111
|
-
end
|
112
|
-
system ("zip -r -o #{archive_path} #{feature_path}")
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
url = ENV['SUBMIT_URL'] || "https://www.lesspainful.com/cmd_upload"
|
117
|
-
|
118
|
-
msg("Info") do
|
119
|
-
puts "Uploading ipa and features to #{url}"
|
120
|
-
end
|
121
|
-
result = `curl -F "secret=#{secret}" -F "app=@#{ipa_file}" -F "env=@#{archive_path}" #{url}`
|
122
|
-
|
123
|
-
if is_json? result
|
124
|
-
json_result = JSON.parse(result)
|
125
|
-
puts "Test status is '#{json_result['status']}"
|
126
|
-
puts "Test id is '#{json_result['id']}"
|
127
|
-
puts "You can see the test result here: #{json_result['url']}"
|
128
|
-
puts "You can pull the status by using this command:"
|
129
|
-
puts "curl -F \"secret=#{secret}\" -F \"id=#{json_result['id']}\" https://www.lesspainful.com/cmd_status"
|
130
|
-
else
|
131
|
-
puts result
|
132
|
-
end
|
133
|
-
|
134
|
-
end
|
135
|
-
|
data/bin/calabash-ios-setup.rb
CHANGED
@@ -79,16 +79,6 @@ def calabash_download(args)
|
|
79
79
|
download_calabash(File.expand_path("."))
|
80
80
|
end
|
81
81
|
|
82
|
-
# @todo eval for deprecation - has no callers.
|
83
|
-
def has_proxy?
|
84
|
-
ENV['http_proxy'] ? true : false
|
85
|
-
end
|
86
|
-
|
87
|
-
def proxy
|
88
|
-
url_parts = URI.split(ENV['http_proxy'])
|
89
|
-
[url_parts[2], url_parts[3]]
|
90
|
-
end
|
91
|
-
|
92
82
|
def download_calabash(project_path)
|
93
83
|
file = 'calabash.framework'
|
94
84
|
##Download calabash.framework
|
@@ -155,7 +145,6 @@ def setup_project(project_name, project_path, path)
|
|
155
145
|
|
156
146
|
end
|
157
147
|
|
158
|
-
require 'calabash-cucumber/launch/simulator_launcher'
|
159
148
|
def validate_setup(args)
|
160
149
|
if args.length > 0
|
161
150
|
if args[0].end_with?(".ipa")
|
@@ -169,63 +158,12 @@ def validate_setup(args)
|
|
169
158
|
exit 1
|
170
159
|
end
|
171
160
|
else
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
end
|
178
|
-
app_bundles = Dir.glob(File.join(dd_dir, "Build", "Products", "*", "*.app"))
|
179
|
-
sim_dirs = Dir.glob(File.join(dd_dir, "Build", "Products", "Debug-iphonesimulator", "*.app"))
|
180
|
-
sim_dirs = sim_dirs.concat(Dir.glob(File.join(dd_dir, "Build", "Products", "Calabash-iphonesimulator", "*.app")))
|
181
|
-
if sim_dirs.empty?
|
182
|
-
msg = ["Have you built your app for simulator?"]
|
183
|
-
msg << "You should build the -cal target and your normal target"
|
184
|
-
msg << "(with configuration Debug)."
|
185
|
-
msg << "Searched dir: #{dd_dir}/Build/Products"
|
186
|
-
msg("Error") do
|
187
|
-
puts msg.join("\n")
|
188
|
-
end
|
189
|
-
exit 1
|
190
|
-
elsif sim_dirs.count != 2
|
191
|
-
msg = ["Have you built your app for simulator?"]
|
192
|
-
msg << "You should build the -cal target and your normal target"
|
193
|
-
msg << "(with configuration Debug)."
|
194
|
-
msg << "Searched dir: #{dd_dir}/Build/Products"
|
195
|
-
msg("Error") do
|
196
|
-
puts msg.join("\n")
|
197
|
-
end
|
198
|
-
exit 1
|
199
|
-
end
|
200
|
-
out_debug = `otool "#{sim_dirs[0]}"/* -o 2> /dev/null | grep CalabashServer`
|
201
|
-
out_cal = `otool "#{sim_dirs[1]}"/* -o 2> /dev/null | grep CalabashServer 2> /dev/null`
|
202
|
-
ok = (not /CalabashServer/.match(out_debug)) and /CalabashServer/.match(out_cal)
|
203
|
-
if ok
|
204
|
-
msg("OK") do
|
205
|
-
puts "Your configuration seems ok."
|
206
|
-
puts "app in directory:"
|
207
|
-
puts sim_dirs[0]
|
208
|
-
puts "does not have calabash.framework linked in."
|
209
|
-
puts "directory:"
|
210
|
-
puts sim_dirs[1]
|
211
|
-
puts "does."
|
212
|
-
end
|
213
|
-
else
|
214
|
-
msg("Fail") do
|
215
|
-
puts "Your configuration looks bad."
|
216
|
-
if (not /CalabashServer/.match(out_debug))
|
217
|
-
puts "WARNING: You Debug build seems to be linking with Calabash."
|
218
|
-
puts "You should restore your xcodeproject file from backup."
|
219
|
-
else
|
220
|
-
puts "app in directory"
|
221
|
-
puts sim_dirs[1]
|
222
|
-
puts "does not have calabash.framework linked in."
|
223
|
-
end
|
224
|
-
end
|
225
|
-
end
|
161
|
+
$stderr.puts(
|
162
|
+
%Q["Please pass a .app or .ipa as an argument. Ad hoc validation of projects
|
163
|
+
is not yet supported])
|
164
|
+
$stderr.flush
|
165
|
+
exit 1
|
226
166
|
end
|
227
|
-
|
228
|
-
|
229
167
|
end
|
230
168
|
|
231
169
|
def validate_ipa(ipa)
|
@@ -263,55 +201,3 @@ def validate_app(app)
|
|
263
201
|
exit(1)
|
264
202
|
end
|
265
203
|
end
|
266
|
-
|
267
|
-
def update(args)
|
268
|
-
if args.length > 0
|
269
|
-
target = args[0]
|
270
|
-
unless UPDATE_TARGETS.include?(target)
|
271
|
-
msg('Error') do
|
272
|
-
puts "Invalid target #{target}. Must be one of: #{UPDATE_TARGETS.join(' ')}"
|
273
|
-
end
|
274
|
-
exit 1
|
275
|
-
end
|
276
|
-
|
277
|
-
|
278
|
-
|
279
|
-
target_file = 'features/support/launch.rb'
|
280
|
-
msg('Question') do
|
281
|
-
puts "I'm about to update the #{target_file} file."
|
282
|
-
puts "Please hit return to confirm that's what you want."
|
283
|
-
end
|
284
|
-
exit 2 unless STDIN.gets.chomp == ''
|
285
|
-
|
286
|
-
|
287
|
-
unless File.exist?(target_file)
|
288
|
-
msg('Error') do
|
289
|
-
puts "Unable to find file #{target_file}"
|
290
|
-
puts "Please change directory so that #{target_file} exists."
|
291
|
-
end
|
292
|
-
exit 1
|
293
|
-
end
|
294
|
-
new_launch_script = File.join(@script_dir, 'launch.rb')
|
295
|
-
|
296
|
-
FileUtils.cp(new_launch_script, 'features/support/01_launch.rb', :verbose => true)
|
297
|
-
FileUtils.rm(target_file, :force => true, :verbose => true)
|
298
|
-
|
299
|
-
hooks_file = 'features/support/hooks.rb'
|
300
|
-
if File.exist?(hooks_file)
|
301
|
-
FileUtils.mv(hooks_file, 'features/support/02_pre_stop_hooks.rb', :verbose => true)
|
302
|
-
end
|
303
|
-
|
304
|
-
msg('Info') do
|
305
|
-
puts "File copied.\n"
|
306
|
-
puts 'Launch on device using environment variable DEVICE_TARGET=device.'
|
307
|
-
puts 'Launch on simulator by default or using environment variable DEVICE_TARGET=simulator.'
|
308
|
-
end
|
309
|
-
else
|
310
|
-
msg('Error') do
|
311
|
-
puts "update must take one of the following targets: #{UPDATE_TARGETS.join(' ')}"
|
312
|
-
end
|
313
|
-
exit 1
|
314
|
-
|
315
|
-
end
|
316
|
-
|
317
|
-
end
|
data/bin/calabash-ios-sim.rb
CHANGED
@@ -1,11 +1,6 @@
|
|
1
|
-
require 'calabash-cucumber/utils/simulator_accessibility'
|
2
|
-
require 'calabash-cucumber/utils/logging'
|
3
1
|
require "calabash-cucumber/environment"
|
4
2
|
require 'run_loop'
|
5
3
|
|
6
|
-
include Calabash::Cucumber::Logging
|
7
|
-
include Calabash::Cucumber::SimulatorAccessibility
|
8
|
-
|
9
4
|
def quit_sim
|
10
5
|
RunLoop::SimControl.new.quit_sim
|
11
6
|
end
|
@@ -157,35 +152,3 @@ SUCCESS!
|
|
157
152
|
}
|
158
153
|
true
|
159
154
|
end
|
160
|
-
|
161
|
-
|
162
|
-
def calabash_sim_device(args)
|
163
|
-
quit_simulator
|
164
|
-
options = ["iPad", "iPad_Retina", "iPhone", "iPhone_Retina", "iPhone_Retina_4inch"]
|
165
|
-
if args.length != 1 or not options.find { |x| x == args[0] }
|
166
|
-
print_usage
|
167
|
-
puts "Unrecognized args: #{args}"
|
168
|
-
puts "should be one of #{options.inspect}"
|
169
|
-
exit(0)
|
170
|
-
end
|
171
|
-
path =File.join(File.expand_path("~/Library"), "Preferences", "com.apple.iphonesimulator.plist")
|
172
|
-
plist = CFPropertyList::List.new(:file => path)
|
173
|
-
hash = CFPropertyList.native_types(plist.value)
|
174
|
-
|
175
|
-
device = case args[0]
|
176
|
-
when "iPad_Retina"
|
177
|
-
"iPad (Retina)"
|
178
|
-
when "iPhone_Retina"
|
179
|
-
"iPhone (Retina 3.5-inch)"
|
180
|
-
when "iPhone_Retina_4inch"
|
181
|
-
"iPhone (Retina 4-inch)"
|
182
|
-
else
|
183
|
-
args[0]
|
184
|
-
end
|
185
|
-
if device
|
186
|
-
hash['SimulateDevice'] = device
|
187
|
-
plist.value = CFPropertyList.guess(hash)
|
188
|
-
plist.save(path, CFPropertyList::List::FORMAT_BINARY)
|
189
|
-
end
|
190
|
-
|
191
|
-
end
|
data/bin/frank-calabash
CHANGED
data/doc/calabash-ios-help.txt
CHANGED
@@ -8,11 +8,8 @@ Usage: calabash-ios <command-name> [parameters]
|
|
8
8
|
sim locale [lang] [regional]?
|
9
9
|
sim reset
|
10
10
|
sim acc
|
11
|
-
sim device {iPad,iPad_Retina,iPhone,iPhone_Retina,iPhone_Retina_4inch}
|
12
11
|
sim location {on|off} <bundleid>
|
13
12
|
|
14
|
-
|
15
|
-
|
16
13
|
Commands:
|
17
14
|
gen creates a skeleton features dir. This is usually used once when
|
18
15
|
setting up calabash to ensure that the features folder contains
|
@@ -44,9 +41,6 @@ Usage: calabash-ios <command-name> [parameters]
|
|
44
41
|
If something goes wrong. Close Xcode and copy project.pbxproj.bak
|
45
42
|
to project.pbxproj inside your .xcodeproj folder.
|
46
43
|
|
47
|
-
update [target]
|
48
|
-
updates one of the following targets: hooks
|
49
|
-
|
50
44
|
download [opt_path]?
|
51
45
|
copies current compatible version of calabash.framework to your project.
|
52
46
|
It should be run from a directory containing an Xcode project,
|
@@ -81,5 +75,3 @@ Usage: calabash-ios <command-name> [parameters]
|
|
81
75
|
sim reset (EXPERIMENTAL) Will select "Reset Content and Settings"
|
82
76
|
in the iOS Simulators using AppleScript.
|
83
77
|
|
84
|
-
sim device [device] Will set the default iOS Simulator device.
|
85
|
-
[device] can be one of iPad iPad_Retina iPhone iPhone_Retina iPhone_Retina_4inch
|