flashsdk 1.0.27.pre → 1.0.28.pre
Sign up to get free protection for your applications and to get access to all the features.
- data/Gemfile +1 -1
- data/Gemfile.lock +4 -5
- data/VERSION +1 -1
- data/lib/flashsdk.rb +1 -0
- data/lib/flashsdk/adl.rb +13 -2
- data/lib/flashsdk/adt.rb +36 -1
- data/lib/flashsdk/asdoc.rb +1 -1
- data/lib/flashsdk/compiler_base.rb +0 -2
- data/lib/flex4.rb +4 -3
- data/test/fixtures/air/simple/SomeProject.apk +1 -0
- data/test/fixtures/sdk/mxmlc +7 -4
- data/test/unit/adl_test.rb +5 -1
- data/test/unit/adt_test.rb +72 -1
- data/test/unit/fcsh_socket_test.rb +4 -0
- data/test/unit/flashplayer_task_test.rb +4 -4
- data/test/unit/mxmlc_test.rb +13 -19
- metadata +6 -5
data/Gemfile
CHANGED
data/Gemfile.lock
CHANGED
@@ -2,13 +2,12 @@ GEM
|
|
2
2
|
remote: http://rubygems.org/
|
3
3
|
specs:
|
4
4
|
archive-tar-minitar (0.5.2)
|
5
|
-
mocha (0.9.
|
6
|
-
rake
|
5
|
+
mocha (0.9.12)
|
7
6
|
open4 (1.0.1)
|
8
|
-
rake (0.
|
7
|
+
rake (0.9.0)
|
9
8
|
rubyzip (0.9.4)
|
10
9
|
shoulda (2.11.3)
|
11
|
-
sprout (1.1.
|
10
|
+
sprout (1.1.13.pre)
|
12
11
|
archive-tar-minitar (= 0.5.2)
|
13
12
|
bundler (>= 0.9.19)
|
14
13
|
open4 (>= 0.9.6)
|
@@ -21,4 +20,4 @@ PLATFORMS
|
|
21
20
|
DEPENDENCIES
|
22
21
|
mocha
|
23
22
|
shoulda
|
24
|
-
sprout (>= 1.1.
|
23
|
+
sprout (>= 1.1.13.pre)
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
1.0.
|
1
|
+
1.0.28.pre
|
data/lib/flashsdk.rb
CHANGED
data/lib/flashsdk/adl.rb
CHANGED
@@ -8,9 +8,9 @@ module FlashSDK
|
|
8
8
|
|
9
9
|
add_param :nodebug, Boolean
|
10
10
|
|
11
|
-
add_param :profile, String
|
11
|
+
add_param :profile, String, { :delimiter => ' ' }
|
12
12
|
|
13
|
-
add_param :screensize, String
|
13
|
+
add_param :screensize, String, { :delimiter => ' ' }
|
14
14
|
|
15
15
|
add_param :app_desc, String, { :hidden_name => true, :delimiter => ' ' }
|
16
16
|
|
@@ -37,9 +37,20 @@ module FlashSDK
|
|
37
37
|
# The default executable target.
|
38
38
|
#
|
39
39
|
set :executable, :adl
|
40
|
+
|
41
|
+
##
|
42
|
+
# The default prefix
|
43
|
+
#
|
44
|
+
set :default_prefix, '-'
|
40
45
|
end
|
41
46
|
end
|
42
47
|
|
48
|
+
def adl *args, &block
|
49
|
+
exe = FlashSDK::ADL.new
|
50
|
+
exe.to_rake(*args, &block)
|
51
|
+
exe
|
52
|
+
end
|
53
|
+
|
43
54
|
##
|
44
55
|
# TODO: This should NOT be here!
|
45
56
|
# This is preventing that method from working
|
data/lib/flashsdk/adt.rb
CHANGED
@@ -39,12 +39,42 @@ module FlashSDK
|
|
39
39
|
# Please do not alphabetize or rearrange unless you're
|
40
40
|
# fixing a bug related to how ADT actually expects
|
41
41
|
# the arguments...
|
42
|
-
|
42
|
+
|
43
|
+
##
|
44
|
+
# Install an app on a device
|
45
|
+
#
|
46
|
+
add_param :installApp, Boolean, { :hidden_value => true }
|
47
|
+
|
48
|
+
##
|
49
|
+
# Uninstall an app from a device
|
50
|
+
#
|
51
|
+
add_param :uninstallApp, Boolean, { :hidden_value => true }
|
52
|
+
|
53
|
+
##
|
54
|
+
# Launch an app on a device
|
55
|
+
#
|
56
|
+
add_param :launchApp, Boolean, { :hidden_value => true }
|
57
|
+
|
58
|
+
##
|
59
|
+
# The platform to use (ex: android)
|
60
|
+
#
|
61
|
+
add_param :platform, String, { :delimiter => ' ' }
|
62
|
+
|
63
|
+
##
|
64
|
+
# The appid of the app being installed/uninstalled (ex: com.foo.Bar)
|
65
|
+
#
|
66
|
+
add_param :appid, String, { :delimiter => ' ' }
|
67
|
+
|
43
68
|
##
|
44
69
|
# Create an AIR package.
|
45
70
|
#
|
46
71
|
add_param :package, Boolean, { :hidden_value => true }
|
47
72
|
|
73
|
+
##
|
74
|
+
# Use a specific target, like apk-debug for Android or ipa-debug for iOS
|
75
|
+
#
|
76
|
+
add_param :target, String, { :delimiter => ' ' }
|
77
|
+
|
48
78
|
##
|
49
79
|
# Set true to create a certificate.
|
50
80
|
#
|
@@ -102,6 +132,11 @@ module FlashSDK
|
|
102
132
|
#
|
103
133
|
add_param :checkstore, String
|
104
134
|
|
135
|
+
##
|
136
|
+
# Provisioning profile for iOS apps
|
137
|
+
#
|
138
|
+
add_param :provisioning_profile, String, { :delimiter => ' ' }
|
139
|
+
|
105
140
|
##
|
106
141
|
# Expects two files:
|
107
142
|
#
|
data/lib/flashsdk/asdoc.rb
CHANGED
@@ -735,8 +735,6 @@ module FlashSDK
|
|
735
735
|
# The {#mxmlc} Rake task uses a Rake::File task under the covers, and
|
736
736
|
# will automatically set this value with the string passed into the task name.
|
737
737
|
#
|
738
|
-
# This parameter should not be set directly within the task body.
|
739
|
-
#
|
740
738
|
add_param :output, File, { :file_task_name => true }
|
741
739
|
|
742
740
|
##
|
data/lib/flex4.rb
CHANGED
@@ -30,13 +30,14 @@ Sprout::Specification.new do |s|
|
|
30
30
|
# end
|
31
31
|
#
|
32
32
|
s.name = 'flex4'
|
33
|
-
s.version = '4.
|
33
|
+
s.version = '4.5.0.20967'
|
34
34
|
|
35
35
|
s.add_remote_file_target do |t|
|
36
36
|
t.platform = :universal
|
37
37
|
t.archive_type = :zip
|
38
|
-
|
39
|
-
t.
|
38
|
+
|
39
|
+
t.url = "http://fpdownload.adobe.com/pub/flex/sdk/builds/flex4.5/flex_sdk_4.5.0.20967.zip"
|
40
|
+
t.md5 = "c92b661eb7b00bb568262851885274dc"
|
40
41
|
|
41
42
|
# Executables: (add .exe suffix if it was passed in)
|
42
43
|
t.add_executable :aasdoc, "bin/aasdoc"
|
@@ -0,0 +1 @@
|
|
1
|
+
#dummy
|
data/test/fixtures/sdk/mxmlc
CHANGED
@@ -12,12 +12,15 @@ class FakeMXMLC
|
|
12
12
|
|
13
13
|
def initialize args
|
14
14
|
#puts ">> ARGS: #{args.inspect}"
|
15
|
-
if(args.size ==
|
16
|
-
args[0]
|
17
|
-
args[1]
|
15
|
+
if(args.size == 3 &&
|
16
|
+
args[0].include?('SomeFile.swf') &&
|
17
|
+
args[1].include?('-static-link-runtime-shared-libraries') &&
|
18
|
+
args[2].include?('SomeFile.as'))
|
18
19
|
compile_simple_swf args
|
19
20
|
elsif args == ["-output=test/fixtures/air/simple/bin/SomeProject.swf", "-static-link-runtime-shared-libraries", "test/fixtures/air/simple/SomeProject.as"]
|
20
21
|
compile_amxmlc_swf args
|
22
|
+
else
|
23
|
+
raise "Unexpected args sent to mxmlc stub #{args.join(', ')}"
|
21
24
|
end
|
22
25
|
end
|
23
26
|
|
@@ -33,7 +36,7 @@ class FakeMXMLC
|
|
33
36
|
# Loading configuration file /Users/lbayes/Library/Sprouts/1.0/cache/flex4/4.1.0.16076/frameworks/flex-config.xml
|
34
37
|
# /Users/lbayes/Projects/Sprouts/flashsdk/test/fixtures/mxmlc/simple/SomeFile.swf (558 bytes)
|
35
38
|
def compile_simple_swf args
|
36
|
-
path = File.expand_path(args[
|
39
|
+
path = File.expand_path(args[0].gsub(/-output=/, ''))
|
37
40
|
compile_swf path
|
38
41
|
end
|
39
42
|
|
data/test/unit/adl_test.rb
CHANGED
@@ -8,6 +8,8 @@ class ADLTest < Test::Unit::TestCase
|
|
8
8
|
setup do
|
9
9
|
@fixture = File.join 'test', 'fixtures', 'air', 'simple'
|
10
10
|
@app_desc = File.join @fixture, 'SomeProject.xml'
|
11
|
+
@profile = 'mobileDevice'
|
12
|
+
@screensize = 'NexusOne'
|
11
13
|
end
|
12
14
|
|
13
15
|
teardown do
|
@@ -17,7 +19,9 @@ class ADLTest < Test::Unit::TestCase
|
|
17
19
|
adl = FlashSDK::ADL.new
|
18
20
|
adl.app_desc = @app_desc
|
19
21
|
adl.root_dir = Dir.pwd
|
20
|
-
|
22
|
+
adl.screensize = @screensize
|
23
|
+
adl.profile = @profile
|
24
|
+
assert_equal "-profile #{@profile} -screensize #{@screensize} #{@app_desc} #{Dir.pwd}", adl.to_shell
|
21
25
|
# Uncomment to actually launch
|
22
26
|
# the AIR application:
|
23
27
|
#adl.execute
|
data/test/unit/adt_test.rb
CHANGED
@@ -9,10 +9,17 @@ class ADTTest < Test::Unit::TestCase
|
|
9
9
|
@fixture = File.join 'test', 'fixtures', 'air', 'simple'
|
10
10
|
@application_xml = File.join @fixture, 'SomeProject.xml'
|
11
11
|
@expected_output = File.join @fixture, 'SomeProject.air'
|
12
|
+
@apk_input = File.join @fixture, 'SomeProject.apk'
|
13
|
+
@ipa_output = File.join @fixture, 'SomeProject.ipa'
|
12
14
|
@swf_input = File.join @fixture, 'SomeProject.swf'
|
13
15
|
@swf_main = File.join @fixture, 'SomeProject.mxml'
|
14
16
|
|
15
17
|
@certificate = File.join @fixture, 'SomeProject.pfx'
|
18
|
+
@ipa_cert = File.join @fixture, 'SomeProject.p12'
|
19
|
+
@provisioning_profile = File.join @fixture, 'Profile.mobileprovision'
|
20
|
+
@platform = 'android'
|
21
|
+
@target = 'apk-debug'
|
22
|
+
@appid = 'com.foo.bar.SomeProject'
|
16
23
|
@cert_password = 'samplePassword'
|
17
24
|
end
|
18
25
|
|
@@ -25,6 +32,7 @@ class ADTTest < Test::Unit::TestCase
|
|
25
32
|
as_a_unix_system do
|
26
33
|
t = adt @expected_output do |t|
|
27
34
|
t.package = true
|
35
|
+
t.target = @target
|
28
36
|
t.package_input = @application_xml
|
29
37
|
t.package_output = @expected_output
|
30
38
|
t.storetype = 'PKCS12'
|
@@ -32,7 +40,70 @@ class ADTTest < Test::Unit::TestCase
|
|
32
40
|
t.storepass = @cert_password
|
33
41
|
t.included_files << @swf_input
|
34
42
|
end
|
35
|
-
assert_equal
|
43
|
+
assert_equal "-package -target #{@target} -storetype PKCS12 -keystore test/fixtures/air/simple/SomeProject.pfx -storepass samplePassword test/fixtures/air/simple/SomeProject.air test/fixtures/air/simple/SomeProject.xml test/fixtures/air/simple/SomeProject.swf", t.to_shell
|
44
|
+
|
45
|
+
#t.execute
|
46
|
+
#assert_file @expected_output
|
47
|
+
end
|
48
|
+
end
|
49
|
+
|
50
|
+
should "package an iOS swf with a provisioning profile" do
|
51
|
+
as_a_unix_system do
|
52
|
+
t = adt @ipa_output do |t|
|
53
|
+
t.package = true
|
54
|
+
t.target = 'ipa-test'
|
55
|
+
t.package_input = @application_xml
|
56
|
+
t.package_output = @ipa_output
|
57
|
+
t.storetype = 'PKCS12'
|
58
|
+
t.keystore = @ipa_cert
|
59
|
+
t.storepass = @cert_password
|
60
|
+
t.provisioning_profile = @provisioning_profile
|
61
|
+
t.included_files << @swf_input
|
62
|
+
end
|
63
|
+
assert_equal "-package -target ipa-test -storetype PKCS12 -keystore #{@ipa_cert} -storepass #{@cert_password} -provisioning-profile #{@provisioning_profile} #{@ipa_output} #{@application_xml} #{@swf_input}", t.to_shell
|
64
|
+
|
65
|
+
#t.execute
|
66
|
+
#assert_file @expected_output
|
67
|
+
end
|
68
|
+
end
|
69
|
+
|
70
|
+
should "install an APK" do
|
71
|
+
as_a_unix_system do
|
72
|
+
t = adt @expected_output do |t|
|
73
|
+
t.installApp = true
|
74
|
+
t.platform = @platform
|
75
|
+
t.package = true
|
76
|
+
t.package_input = @apk_input
|
77
|
+
end
|
78
|
+
assert_equal "-installApp -platform #{@platform} -package #{@apk_input}", t.to_shell
|
79
|
+
|
80
|
+
#t.execute
|
81
|
+
#assert_file @expected_output
|
82
|
+
end
|
83
|
+
end
|
84
|
+
|
85
|
+
should "uninstall an APK" do
|
86
|
+
as_a_unix_system do
|
87
|
+
t = adt @expected_output do |t|
|
88
|
+
t.uninstallApp = true
|
89
|
+
t.platform = @platform
|
90
|
+
t.appid = @appid
|
91
|
+
end
|
92
|
+
assert_equal "-uninstallApp -platform #{@platform} -appid #{@appid}", t.to_shell
|
93
|
+
|
94
|
+
#t.execute
|
95
|
+
#assert_file @expected_output
|
96
|
+
end
|
97
|
+
end
|
98
|
+
|
99
|
+
should "launch an app" do
|
100
|
+
as_a_unix_system do
|
101
|
+
t = adt @expected_output do |t|
|
102
|
+
t.launchApp = true
|
103
|
+
t.platform = @platform
|
104
|
+
t.appid = @appid
|
105
|
+
end
|
106
|
+
assert_equal "-launchApp -platform #{@platform} -appid #{@appid}", t.to_shell
|
36
107
|
|
37
108
|
#t.execute
|
38
109
|
#assert_file @expected_output
|
@@ -54,7 +54,7 @@ class TaskTest < Test::Unit::TestCase
|
|
54
54
|
t = flashplayer :run do |t|
|
55
55
|
t.input = @swf
|
56
56
|
end
|
57
|
-
|
57
|
+
Rake::FileTask.define_task @swf
|
58
58
|
configure_task t
|
59
59
|
t.invoke
|
60
60
|
assert_equal @swf, t.input
|
@@ -62,7 +62,7 @@ class TaskTest < Test::Unit::TestCase
|
|
62
62
|
|
63
63
|
should "work with swf as prerequisite" do
|
64
64
|
t = flashplayer :run => @swf
|
65
|
-
|
65
|
+
Rake::FileTask.define_task @swf
|
66
66
|
configure_task t
|
67
67
|
t.invoke
|
68
68
|
assert_equal @swf, t.input
|
@@ -70,9 +70,9 @@ class TaskTest < Test::Unit::TestCase
|
|
70
70
|
|
71
71
|
should "fire when declared as a dependency" do
|
72
72
|
t = flashplayer :run => @swf
|
73
|
-
|
73
|
+
Rake::FileTask.define_task @swf
|
74
74
|
configure_task t
|
75
|
-
other =
|
75
|
+
other = Rake::Task.define_task :parent => :run
|
76
76
|
other.invoke
|
77
77
|
end
|
78
78
|
end
|
data/test/unit/mxmlc_test.rb
CHANGED
@@ -9,7 +9,7 @@ class MXMLCTest < Test::Unit::TestCase
|
|
9
9
|
@original_use_fcsh_value = ENV['USE_FCSH']
|
10
10
|
@fixture = File.join fixtures, 'mxmlc', 'simple'
|
11
11
|
@input = File.join @fixture, 'SomeFile.as'
|
12
|
-
@expected_output = File.join @fixture,
|
12
|
+
@expected_output = File.join @fixture, "SomeFile.swf"
|
13
13
|
end
|
14
14
|
|
15
15
|
teardown do
|
@@ -17,6 +17,18 @@ class MXMLCTest < Test::Unit::TestCase
|
|
17
17
|
ENV['USE_FCSH'] = @original_use_fcsh_value
|
18
18
|
end
|
19
19
|
|
20
|
+
should "compile a swf" do
|
21
|
+
as_a_unix_system do
|
22
|
+
mxmlc = FlashSDK::MXMLC.new
|
23
|
+
# Comment out following line to use REAL Mxmlc:
|
24
|
+
mxmlc.binary_path = File.join fixtures, 'sdk', 'mxmlc'
|
25
|
+
mxmlc.input = @input
|
26
|
+
mxmlc.output = @expected_output
|
27
|
+
mxmlc.execute
|
28
|
+
assert_file @expected_output
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
20
32
|
should "accept input" do
|
21
33
|
as_a_unix_system do
|
22
34
|
mxmlc = FlashSDK::MXMLC.new
|
@@ -26,14 +38,6 @@ class MXMLCTest < Test::Unit::TestCase
|
|
26
38
|
end
|
27
39
|
end
|
28
40
|
|
29
|
-
should "compile a swf" do
|
30
|
-
mxmlc = FlashSDK::MXMLC.new
|
31
|
-
mxmlc.binary_path = File.join fixtures, 'sdk', 'mxmlc'
|
32
|
-
mxmlc.input = @input
|
33
|
-
mxmlc.execute
|
34
|
-
assert_file @expected_output
|
35
|
-
end
|
36
|
-
|
37
41
|
should "assign default-size" do
|
38
42
|
mxmlc = FlashSDK::MXMLC.new
|
39
43
|
mxmlc.default_size = '800,500'
|
@@ -59,15 +63,5 @@ class MXMLCTest < Test::Unit::TestCase
|
|
59
63
|
end
|
60
64
|
|
61
65
|
end
|
62
|
-
|
63
|
-
private
|
64
|
-
|
65
|
-
def configure_mxmlc_fake exe_name
|
66
|
-
# Comment the following and install the flashsdk
|
67
|
-
# to run test against actual mxmlc:
|
68
|
-
@fake = File.join(fixtures, 'mxmlc', exe_name)
|
69
|
-
path_response = OpenStruct.new(:path => @fake)
|
70
|
-
Sprout::Executable.expects(:load).with(:fdb, 'flex4', '>= 4.1.0.pre').returns path_response
|
71
|
-
end
|
72
66
|
end
|
73
67
|
|
metadata
CHANGED
@@ -5,9 +5,9 @@ version: !ruby/object:Gem::Version
|
|
5
5
|
segments:
|
6
6
|
- 1
|
7
7
|
- 0
|
8
|
-
-
|
8
|
+
- 28
|
9
9
|
- pre
|
10
|
-
version: 1.0.
|
10
|
+
version: 1.0.28.pre
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Luke Bayes
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2011-
|
18
|
+
date: 2011-06-12 00:00:00 -07:00
|
19
19
|
default_executable:
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|
@@ -28,9 +28,9 @@ dependencies:
|
|
28
28
|
segments:
|
29
29
|
- 1
|
30
30
|
- 1
|
31
|
-
-
|
31
|
+
- 13
|
32
32
|
- pre
|
33
|
-
version: 1.1.
|
33
|
+
version: 1.1.13.pre
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: *id001
|
@@ -124,6 +124,7 @@ files:
|
|
124
124
|
- POSTINSTALL.rdoc
|
125
125
|
- rakefile.rb
|
126
126
|
- README.textile
|
127
|
+
- test/fixtures/air/simple/SomeProject.apk
|
127
128
|
- test/fixtures/air/simple/SomeProject.as
|
128
129
|
- test/fixtures/air/simple/SomeProject.mxml
|
129
130
|
- test/fixtures/air/simple/SomeProject.pfx
|