flexunit 0.0.5.pre → 0.0.6.pre
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.
- data/POSTINSTALL.rdoc +3 -0
- data/README.md +2 -2
- data/bin/fu-air +8 -0
- data/lib/flexunit.rb +2 -1
- data/lib/flexunit4/generators/air_project_generator.rb +31 -0
- data/lib/flexunit4/generators/templates/AIRApplication-app.xml +138 -0
- data/lib/flexunit4/generators/templates/AIRApplication.mxml +11 -0
- data/lib/flexunit4/generators/templates/AIRRakefile.rb +35 -0
- data/lib/flexunit4/generators/templates/ActionScript3RunnerClass.as +2 -2
- data/lib/flexunit4/generators/templates/Flex4Rakefile.rb +2 -2
- data/lib/flexunit4/generators/templates/Gemfile +1 -1
- data/lib/flexunit4/generators/templates/Rakefile +2 -2
- data/test/unit/air_project_generator_test.rb +46 -0
- data/test/unit/flex_project_generator_test.rb +54 -0
- data/test/unit/project_generator_test.rb +54 -0
- data/test/unit/runner_generator_test.rb +33 -0
- metadata +23 -14
- data/test/unit/test_project_generator_test.rb +0 -12
data/POSTINSTALL.rdoc
CHANGED
@@ -9,6 +9,9 @@ Example usage:
|
|
9
9
|
# Generate a Flex project named 'SomeFlexProject'
|
10
10
|
fu-flex SomeFlexProject
|
11
11
|
|
12
|
+
# Generate a AIR project named 'SomeAirProject'
|
13
|
+
fu-air SomeAirProject
|
14
|
+
|
12
15
|
# Generate a new class, test case and test suite:
|
13
16
|
sprout-class utils.MathUtil
|
14
17
|
|
data/README.md
CHANGED
@@ -26,7 +26,7 @@ Generate a project with
|
|
26
26
|
|
27
27
|
Or edit your Gemfile to include
|
28
28
|
|
29
|
-
gem "flexunit", ">= 0.0.
|
29
|
+
gem "flexunit", ">= 0.0.6.pre"
|
30
30
|
|
31
31
|
This will mean that when you generate a class using:
|
32
32
|
|
@@ -51,7 +51,7 @@ needed:
|
|
51
51
|
## Credit
|
52
52
|
|
53
53
|
To [Luke Bayes](http://github.com/lukebayes/) and [Kristopher Joseph](http://github.com/kristoferjoseph/) as similarity to the [FlashSDK](https://github.com/lukebayes/sprout-flashsdk) and [Robotlegs](http://github.com/kristoferjoseph/sprout-robotlegs)
|
54
|
-
sprout gems are
|
54
|
+
sprout gems are _not_ purely coincidental.
|
55
55
|
|
56
56
|
## MIT License
|
57
57
|
|
data/bin/fu-air
ADDED
data/lib/flexunit.rb
CHANGED
@@ -2,9 +2,10 @@ require 'flashsdk'
|
|
2
2
|
|
3
3
|
module FlexUnit
|
4
4
|
NAME = 'flexunit'
|
5
|
-
VERSION = '0.0.
|
5
|
+
VERSION = '0.0.6.pre'
|
6
6
|
end
|
7
7
|
|
8
|
+
require 'flexunit4/generators/air_project_generator'
|
8
9
|
require 'flexunit4/generators/flex_project_generator'
|
9
10
|
require 'flexunit4/generators/project_generator'
|
10
11
|
require 'flexunit4/generators/runner_generator'
|
@@ -0,0 +1,31 @@
|
|
1
|
+
module FlexUnit4
|
2
|
+
class AIRProjectGenerator < FlashSDK::FlexProjectGenerator
|
3
|
+
|
4
|
+
def manifest
|
5
|
+
directory input do
|
6
|
+
template 'Rakefile', 'AIRRakefile.rb'
|
7
|
+
template 'Gemfile'
|
8
|
+
|
9
|
+
directory src do
|
10
|
+
template "#{input.camel_case}.mxml", 'AIRApplication.mxml'
|
11
|
+
template "#{test_runner_name}.mxml", 'AIRRunner.mxml'
|
12
|
+
template "#{input.camel_case}-app.xml", 'AIRApplication-app.xml'
|
13
|
+
|
14
|
+
directory assets do
|
15
|
+
directory css do
|
16
|
+
file 'Main.css', 'Flex4Main.css'
|
17
|
+
end
|
18
|
+
directory images
|
19
|
+
directory fonts
|
20
|
+
end
|
21
|
+
|
22
|
+
end
|
23
|
+
|
24
|
+
# Create empty directories:
|
25
|
+
directory lib
|
26
|
+
directory bin
|
27
|
+
end
|
28
|
+
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
@@ -0,0 +1,138 @@
|
|
1
|
+
<?xml version="1.0" encoding="utf-8" standalone="no"?>
|
2
|
+
<application xmlns="http://ns.adobe.com/air/application/1.5.3">
|
3
|
+
|
4
|
+
<!-- Adobe AIR Application Descriptor File Template.
|
5
|
+
|
6
|
+
Specifies parameters for identifying, installing, and launching AIR applications.
|
7
|
+
|
8
|
+
xmlns - The Adobe AIR namespace: http://ns.adobe.com/air/application/1.5.3
|
9
|
+
The last segment of the namespace specifies the version
|
10
|
+
of the AIR runtime required for this application to run.
|
11
|
+
|
12
|
+
minimumPatchLevel - The minimum patch level of the AIR runtime required to run
|
13
|
+
the application. Optional.
|
14
|
+
-->
|
15
|
+
|
16
|
+
<!-- The application identifier string, unique to this application. Required. -->
|
17
|
+
<id><%= package_name %>.<%= class_name %></id>
|
18
|
+
|
19
|
+
<!-- Used as the filename for the application. Required. -->
|
20
|
+
<filename><%= project_name %></filename>
|
21
|
+
|
22
|
+
<!-- The name that is displayed in the AIR application installer.
|
23
|
+
May have multiple values for each language. See samples or xsd schema file. Optional. -->
|
24
|
+
<name><%= project_name %></name>
|
25
|
+
|
26
|
+
<!-- An application version designator (such as "v1", "2.5", or "Alpha 1"). Required. -->
|
27
|
+
<version>0.0.1</version>
|
28
|
+
|
29
|
+
<!-- Description, displayed in the AIR application installer.
|
30
|
+
May have multiple values for each language. See samples or xsd schema file. Optional. -->
|
31
|
+
<!-- <description></description> -->
|
32
|
+
|
33
|
+
<!-- Copyright information. Optional -->
|
34
|
+
<!-- <copyright></copyright> -->
|
35
|
+
|
36
|
+
<!-- Publisher ID. Used if you're updating an application created prior to 1.5.3 -->
|
37
|
+
<!-- <publisherID></publisherID> -->
|
38
|
+
|
39
|
+
<!-- Settings for the application's initial window. Required. -->
|
40
|
+
<initialWindow>
|
41
|
+
<!-- The main SWF or HTML file of the application. Required. -->
|
42
|
+
<!-- Note: In Flash Builder, the SWF reference is set automatically. -->
|
43
|
+
<content>[This value will be overwritten by Flash Builder in the output app.xml]</content>
|
44
|
+
|
45
|
+
<!-- The title of the main window. Optional. -->
|
46
|
+
<!-- <title></title> -->
|
47
|
+
|
48
|
+
<!-- The type of system chrome to use (either "standard" or "none"). Optional. Default standard. -->
|
49
|
+
<!-- <systemChrome></systemChrome> -->
|
50
|
+
|
51
|
+
<!-- Whether the window is transparent. Only applicable when systemChrome is none. Optional. Default false. -->
|
52
|
+
<!-- <transparent></transparent> -->
|
53
|
+
|
54
|
+
<!-- Whether the window is initially visible. Optional. Default false. -->
|
55
|
+
<!-- <visible></visible> -->
|
56
|
+
|
57
|
+
<!-- Whether the user can minimize the window. Optional. Default true. -->
|
58
|
+
<!-- <minimizable></minimizable> -->
|
59
|
+
|
60
|
+
<!-- Whether the user can maximize the window. Optional. Default true. -->
|
61
|
+
<!-- <maximizable></maximizable> -->
|
62
|
+
|
63
|
+
<!-- Whether the user can resize the window. Optional. Default true. -->
|
64
|
+
<!-- <resizable></resizable> -->
|
65
|
+
|
66
|
+
<!-- The window's initial width. Optional. -->
|
67
|
+
<!-- <width></width> -->
|
68
|
+
|
69
|
+
<!-- The window's initial height. Optional. -->
|
70
|
+
<!-- <height></height> -->
|
71
|
+
|
72
|
+
<!-- The window's initial x position. Optional. -->
|
73
|
+
<!-- <x></x> -->
|
74
|
+
|
75
|
+
<!-- The window's initial y position. Optional. -->
|
76
|
+
<!-- <y></y> -->
|
77
|
+
|
78
|
+
<!-- The window's minimum size, specified as a width/height pair, such as "400 200". Optional. -->
|
79
|
+
<!-- <minSize></minSize> -->
|
80
|
+
|
81
|
+
<!-- The window's initial maximum size, specified as a width/height pair, such as "1600 1200". Optional. -->
|
82
|
+
<!-- <maxSize></maxSize> -->
|
83
|
+
</initialWindow>
|
84
|
+
|
85
|
+
<!-- The subpath of the standard default installation location to use. Optional. -->
|
86
|
+
<!-- <installFolder></installFolder> -->
|
87
|
+
|
88
|
+
<!-- The subpath of the Programs menu to use. (Ignored on operating systems without a Programs menu.) Optional. -->
|
89
|
+
<!-- <programMenuFolder></programMenuFolder> -->
|
90
|
+
|
91
|
+
<!-- The icon the system uses for the application. For at least one resolution,
|
92
|
+
specify the path to a PNG file included in the AIR package. Optional. -->
|
93
|
+
<!-- <icon>
|
94
|
+
<image16x16></image16x16>
|
95
|
+
<image32x32></image32x32>
|
96
|
+
<image48x48></image48x48>
|
97
|
+
<image128x128></image128x128>
|
98
|
+
</icon> -->
|
99
|
+
|
100
|
+
<!-- Whether the application handles the update when a user double-clicks an update version
|
101
|
+
of the AIR file (true), or the default AIR application installer handles the update (false).
|
102
|
+
Optional. Default false. -->
|
103
|
+
<!-- <customUpdateUI></customUpdateUI> -->
|
104
|
+
|
105
|
+
<!-- Whether the application can be launched when the user clicks a link in a web browser.
|
106
|
+
Optional. Default false. -->
|
107
|
+
<!-- <allowBrowserInvocation></allowBrowserInvocation> -->
|
108
|
+
|
109
|
+
<!-- Listing of file types for which the application can register. Optional. -->
|
110
|
+
<!-- <fileTypes> -->
|
111
|
+
|
112
|
+
<!-- Defines one file type. Optional. -->
|
113
|
+
<!-- <fileType> -->
|
114
|
+
|
115
|
+
<!-- The name that the system displays for the registered file type. Required. -->
|
116
|
+
<!-- <name></name> -->
|
117
|
+
|
118
|
+
<!-- The extension to register. Required. -->
|
119
|
+
<!-- <extension></extension> -->
|
120
|
+
|
121
|
+
<!-- The description of the file type. Optional. -->
|
122
|
+
<!-- <description></description> -->
|
123
|
+
|
124
|
+
<!-- The MIME content type. -->
|
125
|
+
<!-- <contentType></contentType> -->
|
126
|
+
|
127
|
+
<!-- The icon to display for the file type. Optional. -->
|
128
|
+
<!-- <icon>
|
129
|
+
<image16x16></image16x16>
|
130
|
+
<image32x32></image32x32>
|
131
|
+
<image48x48></image48x48>
|
132
|
+
<image128x128></image128x128>
|
133
|
+
</icon> -->
|
134
|
+
|
135
|
+
<!-- </fileType> -->
|
136
|
+
<!-- </fileTypes> -->
|
137
|
+
|
138
|
+
</application>
|
@@ -0,0 +1,11 @@
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
2
|
+
<s:WindowedApplication xmlns:fx="http://ns.adobe.com/mxml/2009"
|
3
|
+
xmlns:s="library://ns.adobe.com/flex/spark"
|
4
|
+
xmlns:mx="library://ns.adobe.com/flex/mx">
|
5
|
+
<fx:Declarations>
|
6
|
+
<!-- Place non-visual elements (e.g., services, value objects) here -->
|
7
|
+
</fx:Declarations>
|
8
|
+
|
9
|
+
<s:Label text="<%= project_name %>" fontSize="100"/>
|
10
|
+
|
11
|
+
</s:WindowedApplication>
|
@@ -0,0 +1,35 @@
|
|
1
|
+
require 'rubygems'
|
2
|
+
require 'bundler'
|
3
|
+
Bundler.require
|
4
|
+
|
5
|
+
##############################
|
6
|
+
# Debug
|
7
|
+
|
8
|
+
# Compile the debug swf
|
9
|
+
mxmlc "<%= bin %>/<%= debug_swf_name %>" do |t|
|
10
|
+
t.input = "<%= src %>/<%= class_name %>.mxml"
|
11
|
+
t.debug = true
|
12
|
+
end
|
13
|
+
|
14
|
+
desc "Compile and run the debug swf"
|
15
|
+
flashplayer :debug => "<%= bin %>/<%= debug_swf_name %>"
|
16
|
+
|
17
|
+
##############################
|
18
|
+
# Test
|
19
|
+
|
20
|
+
library :flexunit_flex
|
21
|
+
library :flexunit_aircilistener
|
22
|
+
|
23
|
+
# Compile the test swf
|
24
|
+
mxmlc "<%= bin %>/<%= test_swf_name %>" => [:flexunit_flex,
|
25
|
+
:flexunit_aircilistener] do |t|
|
26
|
+
t.input = "<%= src %>/<%= test_runner_name %>.mxml"
|
27
|
+
t.source_path << "test"
|
28
|
+
t.debug = true
|
29
|
+
end
|
30
|
+
|
31
|
+
desc "Compile and run the test swf"
|
32
|
+
flashplayer :test => "<%= bin %>/<%= test_swf_name %>"
|
33
|
+
|
34
|
+
task :default => :debug
|
35
|
+
|
@@ -13,8 +13,8 @@ public class <%= test_runner_name %> extends Sprite
|
|
13
13
|
public function <%= test_runner_name %>()
|
14
14
|
{
|
15
15
|
core = new FlexUnitCore();
|
16
|
-
core.addListener(
|
17
|
-
core.run(
|
16
|
+
core.addListener(new TraceListener());
|
17
|
+
core.run(AllTests);
|
18
18
|
}
|
19
19
|
|
20
20
|
}
|
@@ -17,10 +17,10 @@ flashplayer :debug => "<%= bin %>/<%= debug_swf_name %>"
|
|
17
17
|
##############################
|
18
18
|
# Test
|
19
19
|
|
20
|
-
library :
|
20
|
+
library :flexunit_flex
|
21
21
|
|
22
22
|
# Compile the test swf
|
23
|
-
mxmlc "<%= bin %>/<%= test_swf_name %>" => :
|
23
|
+
mxmlc "<%= bin %>/<%= test_swf_name %>" => :flexunit_flex do |t|
|
24
24
|
t.input = "<%= src %>/<%= test_runner_name %>.mxml"
|
25
25
|
t.source_path << "test"
|
26
26
|
t.debug = true
|
@@ -38,10 +38,10 @@ flashplayer :run => "<%= bin %>/<%= debug_swf_name %>"
|
|
38
38
|
##############################
|
39
39
|
# Test
|
40
40
|
|
41
|
-
library :
|
41
|
+
library :flexunit_as3
|
42
42
|
|
43
43
|
# Compile the test swf
|
44
|
-
mxmlc "<%= bin %>/<%= test_swf_name %>" => :
|
44
|
+
mxmlc "<%= bin %>/<%= test_swf_name %>" => :flexunit_as3 do |t|
|
45
45
|
t.input = "<%= src %>/<%= test_runner_name %>.as"
|
46
46
|
t.source_path << 'test'
|
47
47
|
t.debug = true
|
@@ -0,0 +1,46 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
class AIRProjectGeneratorTest < Test::Unit::TestCase
|
4
|
+
include Sprout::TestHelper
|
5
|
+
|
6
|
+
context "A new AIR project generator" do
|
7
|
+
|
8
|
+
setup do
|
9
|
+
@temp = File.join(fixtures, 'generators', 'tmp')
|
10
|
+
FileUtils.mkdir_p @temp
|
11
|
+
@generator = FlexUnit4::AIRProjectGenerator.new
|
12
|
+
@generator.path = @temp
|
13
|
+
@generator.logger = StringIO.new
|
14
|
+
end
|
15
|
+
|
16
|
+
teardown do
|
17
|
+
remove_file @temp
|
18
|
+
end
|
19
|
+
|
20
|
+
should "generate a new AIR application" do
|
21
|
+
@generator.input = 'SomeProject'
|
22
|
+
@generator.execute
|
23
|
+
project = File.join(@temp, 'SomeProject')
|
24
|
+
assert_directory project
|
25
|
+
assert_file File.join(project, 'Gemfile') do |content|
|
26
|
+
assert_matches /flexunit/, content
|
27
|
+
end
|
28
|
+
assert_file File.join(project, 'Rakefile') do |content|
|
29
|
+
assert_matches /bin\/SomeProject-debug.swf\b/, content
|
30
|
+
assert_matches /src\/SomeProject.mxml/, content
|
31
|
+
end
|
32
|
+
assert_file File.join(project, 'src', 'SomeProject.mxml') do |content|
|
33
|
+
assert_matches /<s:WindowedApplication/, content
|
34
|
+
assert_matches '<s:Label text="SomeProject"', content
|
35
|
+
end
|
36
|
+
assert_file File.join(project, 'src', 'SomeProject-app.xml') do |content|
|
37
|
+
assert_matches '<application xmlns="http://ns.adobe.com/air/application/1.5.3">', content
|
38
|
+
end
|
39
|
+
assert_file File.join(project, 'src', 'SomeProjectRunner.mxml') do |content|
|
40
|
+
assert_matches /org.flexunit.runner.FlexUnitCore\b/, content
|
41
|
+
end
|
42
|
+
assert_directory File.join(project, 'lib')
|
43
|
+
assert_directory File.join(project, 'bin')
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
@@ -0,0 +1,54 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
class FlexProjectGeneratorTest < Test::Unit::TestCase
|
4
|
+
include Sprout::TestHelper
|
5
|
+
|
6
|
+
context "A new flex project generator" do
|
7
|
+
|
8
|
+
setup do
|
9
|
+
@temp = File.join(fixtures, 'generators', 'tmp')
|
10
|
+
FileUtils.mkdir_p @temp
|
11
|
+
@generator = FlexUnit4::FlexProjectGenerator.new
|
12
|
+
@generator.path = @temp
|
13
|
+
@generator.logger = StringIO.new
|
14
|
+
end
|
15
|
+
|
16
|
+
teardown do
|
17
|
+
remove_file @temp
|
18
|
+
end
|
19
|
+
|
20
|
+
should "generate a new flex application" do
|
21
|
+
@generator.input = 'SomeProject'
|
22
|
+
@generator.execute
|
23
|
+
project = File.join(@temp, 'SomeProject')
|
24
|
+
assert_directory project
|
25
|
+
assert_file File.join(project, 'Gemfile') do |content|
|
26
|
+
assert_matches /flexunit/, content
|
27
|
+
end
|
28
|
+
assert_file File.join(project, 'Rakefile') do |content|
|
29
|
+
assert_matches /bin\/SomeProject-debug.swf\b/, content
|
30
|
+
assert_matches /src\/SomeProject.mxml/, content
|
31
|
+
end
|
32
|
+
assert_file File.join(project, 'src', 'SomeProject.mxml') do |content|
|
33
|
+
assert_matches /<s:Application xmlns:fx=/, content
|
34
|
+
end
|
35
|
+
assert_file File.join(project, 'src', 'SomeProjectRunner.mxml') do |content|
|
36
|
+
assert_matches /org.flexunit.runner.FlexUnitCore\b/, content
|
37
|
+
end
|
38
|
+
assert_directory File.join(project, 'lib')
|
39
|
+
assert_directory File.join(project, 'bin')
|
40
|
+
end
|
41
|
+
|
42
|
+
should "accept alternate bin dir" do
|
43
|
+
@generator.bin = 'other'
|
44
|
+
@generator.input = 'OtherProject'
|
45
|
+
@generator.execute
|
46
|
+
project = File.join(@temp, 'OtherProject')
|
47
|
+
assert_directory project
|
48
|
+
assert_directory File.join(project, 'other')
|
49
|
+
assert_file File.join(project, 'Rakefile') do |content|
|
50
|
+
assert_matches /other\/OtherProject-debug.swf/, content
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
@@ -0,0 +1,54 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
class ProjectGeneratorTest < Test::Unit::TestCase
|
4
|
+
include Sprout::TestHelper
|
5
|
+
|
6
|
+
context "A new project generator" do
|
7
|
+
|
8
|
+
setup do
|
9
|
+
@temp = File.join(fixtures, 'generators', 'tmp')
|
10
|
+
FileUtils.mkdir_p @temp
|
11
|
+
@generator = FlexUnit4::ProjectGenerator.new
|
12
|
+
@generator.path = @temp
|
13
|
+
@generator.logger = StringIO.new
|
14
|
+
end
|
15
|
+
|
16
|
+
teardown do
|
17
|
+
remove_file @temp
|
18
|
+
end
|
19
|
+
|
20
|
+
should "generate a new application" do
|
21
|
+
@generator.input = 'SomeProject'
|
22
|
+
@generator.execute
|
23
|
+
project = File.join(@temp, 'SomeProject')
|
24
|
+
assert_directory project
|
25
|
+
assert_file File.join(project, 'Gemfile') do |content|
|
26
|
+
assert_matches /flexunit/, content
|
27
|
+
end
|
28
|
+
assert_file File.join(project, 'Rakefile') do |content|
|
29
|
+
assert_matches /bin\/SomeProject-debug.swf\b/, content
|
30
|
+
assert_matches /src\/SomeProject.as/, content
|
31
|
+
end
|
32
|
+
assert_file File.join(project, 'src', 'SomeProject.as') do |content|
|
33
|
+
assert_matches /flash.display.Sprite\b/, content
|
34
|
+
end
|
35
|
+
assert_file File.join(project, 'src', 'SomeProjectRunner.as') do |content|
|
36
|
+
assert_matches /org.flexunit.runner.FlexUnitCore\b/, content
|
37
|
+
end
|
38
|
+
assert_directory File.join(project, 'lib')
|
39
|
+
assert_directory File.join(project, 'bin')
|
40
|
+
end
|
41
|
+
|
42
|
+
should "accept alternate bin dir" do
|
43
|
+
@generator.bin = 'other'
|
44
|
+
@generator.input = 'OtherProject'
|
45
|
+
@generator.execute
|
46
|
+
project = File.join(@temp, 'OtherProject')
|
47
|
+
assert_directory project
|
48
|
+
assert_directory File.join(project, 'other')
|
49
|
+
assert_file File.join(project, 'Rakefile') do |content|
|
50
|
+
assert_matches /other\/OtherProject-debug.swf/, content
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
|
3
|
+
class TestClassGeneratorTest < Test::Unit::TestCase
|
4
|
+
include Sprout::TestHelper
|
5
|
+
|
6
|
+
context "A new test class generator" do
|
7
|
+
|
8
|
+
setup do
|
9
|
+
@temp = File.join(fixtures, 'generators', 'tmp')
|
10
|
+
FileUtils.mkdir_p @temp
|
11
|
+
@generator = FlexUnit4::RunnerGenerator.new
|
12
|
+
@generator.path = @temp
|
13
|
+
@generator.logger = StringIO.new
|
14
|
+
end
|
15
|
+
|
16
|
+
teardown do
|
17
|
+
remove_file @temp
|
18
|
+
end
|
19
|
+
|
20
|
+
should "generate test runner" do
|
21
|
+
@generator.input = "FastFeet"
|
22
|
+
@generator.execute
|
23
|
+
|
24
|
+
runner_file = File.join(@temp, "FastFeet.mxml")
|
25
|
+
|
26
|
+
assert_file runner_file do |content|
|
27
|
+
assert_matches /private var core:FlexUnitCore\b/, content
|
28
|
+
assert_matches /core\.run\(AllTests\)/, content
|
29
|
+
end
|
30
|
+
end
|
31
|
+
|
32
|
+
end
|
33
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: flexunit
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.6.pre
|
5
5
|
prerelease: 6
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,12 +9,12 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2011-05-
|
12
|
+
date: 2011-05-15 00:00:00.000000000 +01:00
|
13
13
|
default_executable:
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: flashsdk
|
17
|
-
requirement: &
|
17
|
+
requirement: &2155321700 !ruby/object:Gem::Requirement
|
18
18
|
none: false
|
19
19
|
requirements:
|
20
20
|
- - ! '>='
|
@@ -22,10 +22,10 @@ dependencies:
|
|
22
22
|
version: 1.0.2.pre
|
23
23
|
type: :runtime
|
24
24
|
prerelease: false
|
25
|
-
version_requirements: *
|
25
|
+
version_requirements: *2155321700
|
26
26
|
- !ruby/object:Gem::Dependency
|
27
27
|
name: shoulda
|
28
|
-
requirement: &
|
28
|
+
requirement: &2155321000 !ruby/object:Gem::Requirement
|
29
29
|
none: false
|
30
30
|
requirements:
|
31
31
|
- - ! '>='
|
@@ -33,10 +33,10 @@ dependencies:
|
|
33
33
|
version: '0'
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
|
-
version_requirements: *
|
36
|
+
version_requirements: *2155321000
|
37
37
|
- !ruby/object:Gem::Dependency
|
38
38
|
name: mocha
|
39
|
-
requirement: &
|
39
|
+
requirement: &2155320320 !ruby/object:Gem::Requirement
|
40
40
|
none: false
|
41
41
|
requirements:
|
42
42
|
- - ! '>='
|
@@ -44,23 +44,26 @@ dependencies:
|
|
44
44
|
version: '0'
|
45
45
|
type: :development
|
46
46
|
prerelease: false
|
47
|
-
version_requirements: *
|
47
|
+
version_requirements: *2155320320
|
48
48
|
description: Project Sprouts support for the FlexUnit unit testing framework.
|
49
49
|
email:
|
50
50
|
- projectsprouts@googlegroups.com
|
51
51
|
executables:
|
52
52
|
- fu-flex
|
53
53
|
- fu-as3
|
54
|
+
- fu-air
|
54
55
|
- fu-runner
|
55
56
|
extensions: []
|
56
57
|
extra_rdoc_files: []
|
57
58
|
files:
|
59
|
+
- bin/fu-air
|
58
60
|
- bin/fu-as3
|
59
61
|
- bin/fu-flex
|
60
62
|
- bin/fu-runner
|
61
63
|
- Gemfile
|
62
64
|
- Gemfile.lock
|
63
65
|
- lib/flexunit.rb
|
66
|
+
- lib/flexunit4/generators/air_project_generator.rb
|
64
67
|
- lib/flexunit4/generators/flex_project_generator.rb
|
65
68
|
- lib/flexunit4/generators/project_generator.rb
|
66
69
|
- lib/flexunit4/generators/runner_generator.rb
|
@@ -68,6 +71,9 @@ files:
|
|
68
71
|
- lib/flexunit4/generators/templates/ActionScript3Class.as
|
69
72
|
- lib/flexunit4/generators/templates/ActionScript3MainClass.as
|
70
73
|
- lib/flexunit4/generators/templates/ActionScript3RunnerClass.as
|
74
|
+
- lib/flexunit4/generators/templates/AIRApplication-app.xml
|
75
|
+
- lib/flexunit4/generators/templates/AIRApplication.mxml
|
76
|
+
- lib/flexunit4/generators/templates/AIRRakefile.rb
|
71
77
|
- lib/flexunit4/generators/templates/AIRRunner.mxml
|
72
78
|
- lib/flexunit4/generators/templates/Flex4Application.mxml
|
73
79
|
- lib/flexunit4/generators/templates/Flex4Main.css
|
@@ -81,20 +87,23 @@ files:
|
|
81
87
|
- POSTINSTALL.rdoc
|
82
88
|
- Rakefile
|
83
89
|
- README.md
|
90
|
+
- test/unit/air_project_generator_test.rb
|
91
|
+
- test/unit/flex_project_generator_test.rb
|
92
|
+
- test/unit/project_generator_test.rb
|
93
|
+
- test/unit/runner_generator_test.rb
|
84
94
|
- test/unit/test_class_generator_test.rb
|
85
95
|
- test/unit/test_helper.rb
|
86
|
-
- test/unit/test_project_generator_test.rb
|
87
96
|
has_rdoc: true
|
88
97
|
homepage: http://flexunit.org
|
89
98
|
licenses: []
|
90
99
|
post_install_message: ! "++++++++++++++++++++++++++++++++\nYou have successfully installed
|
91
100
|
Project Sprouts support for FlexUnit!\n\nExample usage:\n\n # Generate a ActionScript
|
92
101
|
3 project named 'SomeProject'\n fu-as3 SomeProject\n\n # Generate a Flex project
|
93
|
-
named 'SomeFlexProject'\n fu-flex SomeFlexProject\n\n # Generate a
|
94
|
-
|
95
|
-
|
96
|
-
\
|
97
|
-
key)\n\n"
|
102
|
+
named 'SomeFlexProject'\n fu-flex SomeFlexProject\n\n # Generate a AIR project
|
103
|
+
named 'SomeAirProject'\n fu-air SomeAirProject\n\n # Generate a new class, test
|
104
|
+
case and test suite:\n sprout-class utils.MathUtil\n\n # Compile and run the test
|
105
|
+
harness:\n rake test\n\n # List available rake tasks:\n rake -T\n\n # List available
|
106
|
+
generators:\n sprout-\n # or:\n fu-\n (followed by the TAB key)\n\n"
|
98
107
|
rdoc_options: []
|
99
108
|
require_paths:
|
100
109
|
- lib
|