gator-as3 0.0.7.pre → 0.0.9.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/Gemfile +3 -2
- data/Rakefile +7 -4
- data/VERSION +1 -1
- data/gator-as3.gemspec +73 -28
- data/lib/gator/as3.rb +3 -0
- data/lib/gator/as3/as3_configuration.rb +38 -0
- data/lib/gator/as3/generators/{collection.rb → as3/collection.rb} +5 -1
- data/lib/gator/as3/generators/as3/event.rb +14 -0
- data/lib/gator/as3/generators/as3/generator.rb +95 -0
- data/lib/gator/as3/generators/as3/interface.rb +14 -0
- data/lib/gator/as3/generators/as3/klass.rb +15 -0
- data/lib/gator/as3/generators/as3/test/asunit3.rb +3 -0
- data/lib/gator/as3/generators/as3/test/asunit3/collection.rb +21 -0
- data/lib/gator/as3/generators/as3/test/asunit3/klass.rb +32 -0
- data/lib/gator/as3/generators/as3/test/asunit3/runner.rb +28 -0
- data/lib/gator/as3/generators/as3/test/asunit3/suite.rb +38 -0
- data/lib/gator/as3/generators/{test → as3/test}/asunit4.rb +0 -0
- data/lib/gator/as3/generators/{test → as3/test}/asunit4/collection.rb +5 -1
- data/lib/gator/as3/generators/as3/test/asunit4/klass.rb +31 -0
- data/lib/gator/as3/generators/as3/test/asunit4/runner.rb +29 -0
- data/lib/gator/as3/generators/as3/test/asunit4/suite.rb +39 -0
- data/lib/gator/as3/generators/{test → as3/test}/flexunit4.rb +0 -0
- data/lib/gator/as3/generators/{test → as3/test}/flexunit4/collection.rb +1 -1
- data/lib/gator/as3/generators/as3/test/flexunit4/klass.rb +34 -0
- data/lib/gator/as3/generators/mxml/application.rb +16 -0
- data/lib/gator/as3/generators/mxml/collection.rb +20 -0
- data/lib/gator/as3/generators/mxml/component.rb +16 -0
- data/lib/gator/as3/generators/mxml/generator.rb +20 -0
- data/lib/gator/as3/generators/mxml/skin.rb +21 -0
- data/lib/gator/as3/templates/as3/event.as.tt +12 -0
- data/lib/gator/as3/templates/as3/interface.as.tt +6 -0
- data/lib/gator/as3/{generators → templates/as3}/klass.as.tt +0 -0
- data/lib/gator/as3/templates/as3/test/asunit3/klass.as.tt +37 -0
- data/lib/gator/as3/templates/as3/test/asunit3/runner.as.tt +13 -0
- data/lib/gator/as3/templates/as3/test/asunit3/suite.as.tt +17 -0
- data/lib/gator/as3/{generators → templates/as3}/test/asunit4/klass.as.tt +0 -0
- data/lib/gator/as3/templates/as3/test/asunit4/runner.as.tt +17 -0
- data/lib/gator/as3/templates/as3/test/asunit4/suite.as.tt +14 -0
- data/lib/gator/as3/{generators → templates/as3}/test/flexunit4/klass.as.tt +0 -0
- data/lib/gator/as3/templates/mxml/application.mxml.tt +30 -0
- data/lib/gator/as3/templates/mxml/component.mxml.tt +13 -0
- data/lib/gator/as3/templates/mxml/skin.mxml.tt +53 -0
- data/lib/gator/mxml/generators.rb +5 -0
- data/lib/gator/utils/as3_util.rb +45 -0
- data/rake/jeweler.rb +17 -0
- data/rake/jeweler_prerelease_tasks.rb +50 -0
- data/rake/pre_release_gemspec.rb +80 -0
- data/rake/pre_release_to_git.rb +59 -0
- data/spec/as3/generators/collection_spec.rb +46 -0
- data/spec/as3/generators/event_spec.rb +40 -0
- data/spec/as3/generators/interface_spec.rb +40 -0
- data/spec/as3/generators/klass_spec.rb +40 -0
- data/spec/as3/generators/test/asunit3/klass_spec.rb +43 -0
- data/spec/as3/generators/test/asunit3/runner_spec.rb +43 -0
- data/spec/as3/generators/test/asunit3/suite_spec.rb +43 -0
- data/spec/as3/generators/test/asunit4/klass_spec.rb +43 -0
- data/spec/as3/generators/test/asunit4/runner_spec.rb +43 -0
- data/spec/as3/generators/test/asunit4/suite_spec.rb +43 -0
- data/spec/mxml/generators/application_spec.rb +42 -0
- data/spec/mxml/generators/component_spec.rb +42 -0
- data/spec/mxml/generators/skin_spec.rb +42 -0
- data/spec/spec_helper.rb +36 -3
- metadata +86 -35
- data/lib/gator/as3/generators.rb +0 -3
- data/lib/gator/as3/generators/klass.rb +0 -53
- data/lib/gator/as3/generators/test/asunit4/klass.rb +0 -61
- data/lib/gator/as3/generators/test/flexunit4/klass.rb +0 -57
- data/spec/generators/collection_spec.rb +0 -11
- data/spec/generators/klass_spec.rb +0 -5
@@ -0,0 +1,28 @@
|
|
1
|
+
class Gator
|
2
|
+
module AS3
|
3
|
+
module ASUnit3
|
4
|
+
|
5
|
+
class RunnerGenerator < Gator::AS3::AS3Generator
|
6
|
+
|
7
|
+
|
8
|
+
define :command => "runner",
|
9
|
+
:usage => "generate as3 asunit3 test runner CLASS_NAME", :description => "Creates ASUnit3 runner."
|
10
|
+
|
11
|
+
def source
|
12
|
+
project.path(:source, :test, :as3)
|
13
|
+
end
|
14
|
+
|
15
|
+
def template_file
|
16
|
+
"as3/test/asunit3/runner.as.tt"
|
17
|
+
end
|
18
|
+
|
19
|
+
def generate
|
20
|
+
@package_name = ""
|
21
|
+
@class_name = "ASUnit3Runner"
|
22
|
+
super
|
23
|
+
end
|
24
|
+
|
25
|
+
end
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
@@ -0,0 +1,38 @@
|
|
1
|
+
class Gator
|
2
|
+
module AS3
|
3
|
+
module ASUnit3
|
4
|
+
|
5
|
+
class SuiteGenerator < Gator::AS3::AS3Generator
|
6
|
+
|
7
|
+
|
8
|
+
define :command => "suite",
|
9
|
+
:usage => "generate as3 asunit3 test suite CLASS_NAME", :description => "Creates ASUnit3 suite."
|
10
|
+
|
11
|
+
def source
|
12
|
+
project.path(:source, :test, :as3)
|
13
|
+
end
|
14
|
+
|
15
|
+
def template_file
|
16
|
+
"as3/test/asunit3/suite.as.tt"
|
17
|
+
end
|
18
|
+
|
19
|
+
def generate
|
20
|
+
@package_name = ""
|
21
|
+
@class_name = "AllTests"
|
22
|
+
super
|
23
|
+
end
|
24
|
+
|
25
|
+
no_tasks {
|
26
|
+
|
27
|
+
def all_tests
|
28
|
+
@all_test ||= AS3Util.find_test_files(source, "").collect do |file|
|
29
|
+
AS3Util.file_to_package_and_class(file, source)
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
}
|
34
|
+
|
35
|
+
end
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
File without changes
|
@@ -1,6 +1,8 @@
|
|
1
1
|
require File.dirname(__FILE__) + '/klass'
|
2
|
+
require File.dirname(__FILE__) + '/suite'
|
3
|
+
require File.dirname(__FILE__) + '/runner'
|
2
4
|
|
3
|
-
|
5
|
+
class Gator
|
4
6
|
module AS3
|
5
7
|
module ASUnit4
|
6
8
|
|
@@ -10,6 +12,8 @@ module Gator
|
|
10
12
|
:usage => "generate as3 test GENERATOR", :description => "TestGenerators for ASUnit4"
|
11
13
|
|
12
14
|
register_subcommand ClassTestGenerator
|
15
|
+
register_subcommand SuiteGenerator
|
16
|
+
register_subcommand RunnerGenerator
|
13
17
|
|
14
18
|
end
|
15
19
|
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
class Gator
|
2
|
+
module AS3
|
3
|
+
module ASUnit4
|
4
|
+
|
5
|
+
class ClassTestGenerator < Gator::AS3::TestGenerator
|
6
|
+
|
7
|
+
define :command => "klass",
|
8
|
+
:usage => "generate as3 test klass CLASS_NAME", :description => "Creates ASUnit4 class test."
|
9
|
+
|
10
|
+
def template_file
|
11
|
+
"as3/test/asunit4/klass.as.tt"
|
12
|
+
end
|
13
|
+
|
14
|
+
def generate
|
15
|
+
@class_name = "#{@class_name}Test"
|
16
|
+
super
|
17
|
+
end
|
18
|
+
|
19
|
+
no_tasks {
|
20
|
+
|
21
|
+
def instance_name
|
22
|
+
@class_name.chomp("Test")
|
23
|
+
end
|
24
|
+
|
25
|
+
}
|
26
|
+
|
27
|
+
end
|
28
|
+
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
@@ -0,0 +1,29 @@
|
|
1
|
+
class Gator
|
2
|
+
module AS3
|
3
|
+
module ASUnit4
|
4
|
+
|
5
|
+
class RunnerGenerator < Gator::AS3::AS3Generator
|
6
|
+
|
7
|
+
define :command => "runner",
|
8
|
+
:usage => "generate as3 test runner CLASS_NAME", :description => "Creates ASUnit4 runner."
|
9
|
+
|
10
|
+
class_option :force, :default => true
|
11
|
+
|
12
|
+
def source
|
13
|
+
Gator::Sandbox.gator.project.path(:source, :test, :as3)
|
14
|
+
end
|
15
|
+
|
16
|
+
def template_file
|
17
|
+
"as3/test/asunit4/runner.as.tt"
|
18
|
+
end
|
19
|
+
|
20
|
+
def generate
|
21
|
+
@package_name = ""
|
22
|
+
@class_name = "ASUnit4Runner"
|
23
|
+
super
|
24
|
+
end
|
25
|
+
|
26
|
+
end
|
27
|
+
end
|
28
|
+
end
|
29
|
+
end
|
@@ -0,0 +1,39 @@
|
|
1
|
+
class Gator
|
2
|
+
module AS3
|
3
|
+
module ASUnit4
|
4
|
+
|
5
|
+
class SuiteGenerator < Gator::AS3::AS3Generator
|
6
|
+
|
7
|
+
define :command => "suite",
|
8
|
+
:usage => "generate as3 asunit4 test suite CLASS_NAME", :description => "Creates ASUnit4 suite."
|
9
|
+
|
10
|
+
class_option :force, :default => true
|
11
|
+
|
12
|
+
def source
|
13
|
+
Gator::Sandbox.gator.project.path(:source, :test, :as3)
|
14
|
+
end
|
15
|
+
|
16
|
+
def template_file
|
17
|
+
"as3/test/asunit4/suite.as.tt"
|
18
|
+
end
|
19
|
+
|
20
|
+
def generate
|
21
|
+
@package_name = ""
|
22
|
+
@class_name = "AllTests"
|
23
|
+
super
|
24
|
+
end
|
25
|
+
|
26
|
+
no_tasks {
|
27
|
+
|
28
|
+
def all_tests
|
29
|
+
@all_test ||= AS3Util.find_test_files(source, "").collect do |file|
|
30
|
+
AS3Util.file_to_package_and_class(file, source)
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
}
|
35
|
+
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
39
|
+
end
|
File without changes
|
@@ -0,0 +1,34 @@
|
|
1
|
+
class Gator
|
2
|
+
module AS3
|
3
|
+
module FlexUnit4
|
4
|
+
|
5
|
+
class ClassTestGenerator < Gator::AS3::AS3TestFileGenerator
|
6
|
+
|
7
|
+
|
8
|
+
define :command => "klass",
|
9
|
+
:usage => "generate as3 test klass CLASS_NAME", :description => "Creates FlexUnit4 class test."
|
10
|
+
|
11
|
+
def self.source_root
|
12
|
+
File.dirname __FILE__
|
13
|
+
end
|
14
|
+
|
15
|
+
def generate
|
16
|
+
src = project.path(:source, :test, :as3)
|
17
|
+
class_name = "#{class_name()}Test"
|
18
|
+
src = File.join(src, package_name.split(".").join(File::SEPARATOR)) unless package_name == ""
|
19
|
+
template "klass.as.tt", File.join(src, "#{class_name}.as")
|
20
|
+
end
|
21
|
+
|
22
|
+
no_tasks {
|
23
|
+
|
24
|
+
def instance_name
|
25
|
+
class_name.chomp("Test")
|
26
|
+
end
|
27
|
+
|
28
|
+
}
|
29
|
+
|
30
|
+
end
|
31
|
+
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
class Gator
|
2
|
+
module MXML
|
3
|
+
class ApplicationGenerator < Gator::AS3::KlassGenerator
|
4
|
+
include WithMXMLTemplates
|
5
|
+
include ActAsMXMLKlassGenerator
|
6
|
+
|
7
|
+
define :command => "application", :short => "app",
|
8
|
+
:usage => "generate mxml application CLASS_NAME", :description => "Creates mxml application."
|
9
|
+
|
10
|
+
def template_file
|
11
|
+
"mxml/application.mxml.tt"
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/component'
|
2
|
+
require File.dirname(__FILE__) + '/application'
|
3
|
+
require File.dirname(__FILE__) + '/skin'
|
4
|
+
|
5
|
+
class Gator
|
6
|
+
module MXML
|
7
|
+
|
8
|
+
class GeneratorCollection < Gator::Command
|
9
|
+
|
10
|
+
define :command => "mxml",
|
11
|
+
:usage => "generate mxml GENERATOR", :description => "Generators for MXML."
|
12
|
+
|
13
|
+
register_subcommand Gator::MXML::ComponentGenerator
|
14
|
+
register_subcommand Gator::MXML::ApplicationGenerator
|
15
|
+
register_subcommand Gator::MXML::SkinGenerator
|
16
|
+
|
17
|
+
end
|
18
|
+
|
19
|
+
end
|
20
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
class Gator
|
2
|
+
module MXML
|
3
|
+
class ComponentGenerator < Gator::AS3::KlassGenerator
|
4
|
+
include WithMXMLTemplates
|
5
|
+
include ActAsMXMLKlassGenerator
|
6
|
+
|
7
|
+
define :command => "component", :short => "comp",
|
8
|
+
:usage => "generate mxml component CLASS_NAME", :description => "Creates mxml component based on group."
|
9
|
+
|
10
|
+
def template_file
|
11
|
+
"mxml/component.mxml.tt"
|
12
|
+
end
|
13
|
+
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
@@ -0,0 +1,20 @@
|
|
1
|
+
class Gator
|
2
|
+
module MXML
|
3
|
+
module WithMXMLTemplates
|
4
|
+
def self.included(base)
|
5
|
+
base.extend(ClassMethods)
|
6
|
+
end
|
7
|
+
|
8
|
+
module ClassMethods
|
9
|
+
def template_root
|
10
|
+
File.dirname(__FILE__) + "/../templates"
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
14
|
+
module ActAsMXMLKlassGenerator
|
15
|
+
def target
|
16
|
+
File.join(source, Gator::AS3::AS3Util.package_to_dir(@package_name), "#{@class_name}.mxml")
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
20
|
+
end
|
@@ -0,0 +1,21 @@
|
|
1
|
+
class Gator
|
2
|
+
module MXML
|
3
|
+
class SkinGenerator < Gator::AS3::KlassGenerator
|
4
|
+
include WithMXMLTemplates
|
5
|
+
include ActAsMXMLKlassGenerator
|
6
|
+
|
7
|
+
define :command => "skin",
|
8
|
+
:usage => "generate spark skin CLASS_NAME", :description => "Creates spark skin."
|
9
|
+
|
10
|
+
def template_file
|
11
|
+
"mxml/skin.mxml.tt"
|
12
|
+
end
|
13
|
+
|
14
|
+
def generate
|
15
|
+
@class_name = "#{@class_name}Skin"
|
16
|
+
super
|
17
|
+
end
|
18
|
+
|
19
|
+
end
|
20
|
+
end
|
21
|
+
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
package <%= package_name %>
|
2
|
+
{
|
3
|
+
import flash.events.Event;
|
4
|
+
|
5
|
+
public class <%= class_name %> extends Event
|
6
|
+
{
|
7
|
+
public function <%= class_name %>(type:String,bubbles:Boolean=false,cancelable:Boolean=false)
|
8
|
+
{
|
9
|
+
super(type, bubbles, cancelable)
|
10
|
+
}
|
11
|
+
}
|
12
|
+
}
|
File without changes
|
@@ -0,0 +1,37 @@
|
|
1
|
+
package <%= package_name %> {
|
2
|
+
|
3
|
+
import asunit.framework.TestCase;
|
4
|
+
|
5
|
+
public class <%= class_name %> extends TestCase
|
6
|
+
{
|
7
|
+
private var instance:<%= instance_name %>;
|
8
|
+
|
9
|
+
public function <%= class_name %>(methodName:String=null)
|
10
|
+
{
|
11
|
+
super(methodName)
|
12
|
+
}
|
13
|
+
|
14
|
+
override protected function setUp():void
|
15
|
+
{
|
16
|
+
super.setUp();
|
17
|
+
instance = new <%= instance_name %>();
|
18
|
+
}
|
19
|
+
|
20
|
+
override protected function tearDown():void
|
21
|
+
{
|
22
|
+
super.tearDown();
|
23
|
+
instance = null;
|
24
|
+
}
|
25
|
+
|
26
|
+
public function testInstantiated():void
|
27
|
+
{
|
28
|
+
assertTrue("instance is <%= instance_name %>",instance is <%= instance_name %>);
|
29
|
+
}
|
30
|
+
|
31
|
+
public function testFailure():void
|
32
|
+
{
|
33
|
+
assertTrue("Failing test", false);
|
34
|
+
}
|
35
|
+
|
36
|
+
}
|
37
|
+
}
|
@@ -0,0 +1,17 @@
|
|
1
|
+
package
|
2
|
+
{
|
3
|
+
<% all_tests.each do |test| %>
|
4
|
+
<%= "import #{test[:package_name]}.#{test[:class_name]}" %>
|
5
|
+
<% end %>
|
6
|
+
import asunit.framework.TestSuite;
|
7
|
+
|
8
|
+
public class AllTests
|
9
|
+
{
|
10
|
+
public function AllTests()
|
11
|
+
{
|
12
|
+
<% all_tests.each do |test| %>
|
13
|
+
<%= "addTest( new #{test[:package_name]}.#{test[:class_name]}());" %>
|
14
|
+
<% end %>
|
15
|
+
}
|
16
|
+
}
|
17
|
+
}
|
File without changes
|
@@ -0,0 +1,17 @@
|
|
1
|
+
package
|
2
|
+
{
|
3
|
+
import asunit.core.TextCore;
|
4
|
+
import flash.display.MovieClip;
|
5
|
+
|
6
|
+
public class <%= class_name %> extends MovieClip
|
7
|
+
{
|
8
|
+
protected var core:TextCore;
|
9
|
+
|
10
|
+
public function <%= class_name %>()
|
11
|
+
{
|
12
|
+
core = new TextCore();
|
13
|
+
core.start(AllTests, null, this);
|
14
|
+
}
|
15
|
+
}
|
16
|
+
}
|
17
|
+
|