gator-as3 0.0.7.pre → 0.0.9.pre

Sign up to get free protection for your applications and to get access to all the features.
Files changed (69) hide show
  1. data/Gemfile +3 -2
  2. data/Rakefile +7 -4
  3. data/VERSION +1 -1
  4. data/gator-as3.gemspec +73 -28
  5. data/lib/gator/as3.rb +3 -0
  6. data/lib/gator/as3/as3_configuration.rb +38 -0
  7. data/lib/gator/as3/generators/{collection.rb → as3/collection.rb} +5 -1
  8. data/lib/gator/as3/generators/as3/event.rb +14 -0
  9. data/lib/gator/as3/generators/as3/generator.rb +95 -0
  10. data/lib/gator/as3/generators/as3/interface.rb +14 -0
  11. data/lib/gator/as3/generators/as3/klass.rb +15 -0
  12. data/lib/gator/as3/generators/as3/test/asunit3.rb +3 -0
  13. data/lib/gator/as3/generators/as3/test/asunit3/collection.rb +21 -0
  14. data/lib/gator/as3/generators/as3/test/asunit3/klass.rb +32 -0
  15. data/lib/gator/as3/generators/as3/test/asunit3/runner.rb +28 -0
  16. data/lib/gator/as3/generators/as3/test/asunit3/suite.rb +38 -0
  17. data/lib/gator/as3/generators/{test → as3/test}/asunit4.rb +0 -0
  18. data/lib/gator/as3/generators/{test → as3/test}/asunit4/collection.rb +5 -1
  19. data/lib/gator/as3/generators/as3/test/asunit4/klass.rb +31 -0
  20. data/lib/gator/as3/generators/as3/test/asunit4/runner.rb +29 -0
  21. data/lib/gator/as3/generators/as3/test/asunit4/suite.rb +39 -0
  22. data/lib/gator/as3/generators/{test → as3/test}/flexunit4.rb +0 -0
  23. data/lib/gator/as3/generators/{test → as3/test}/flexunit4/collection.rb +1 -1
  24. data/lib/gator/as3/generators/as3/test/flexunit4/klass.rb +34 -0
  25. data/lib/gator/as3/generators/mxml/application.rb +16 -0
  26. data/lib/gator/as3/generators/mxml/collection.rb +20 -0
  27. data/lib/gator/as3/generators/mxml/component.rb +16 -0
  28. data/lib/gator/as3/generators/mxml/generator.rb +20 -0
  29. data/lib/gator/as3/generators/mxml/skin.rb +21 -0
  30. data/lib/gator/as3/templates/as3/event.as.tt +12 -0
  31. data/lib/gator/as3/templates/as3/interface.as.tt +6 -0
  32. data/lib/gator/as3/{generators → templates/as3}/klass.as.tt +0 -0
  33. data/lib/gator/as3/templates/as3/test/asunit3/klass.as.tt +37 -0
  34. data/lib/gator/as3/templates/as3/test/asunit3/runner.as.tt +13 -0
  35. data/lib/gator/as3/templates/as3/test/asunit3/suite.as.tt +17 -0
  36. data/lib/gator/as3/{generators → templates/as3}/test/asunit4/klass.as.tt +0 -0
  37. data/lib/gator/as3/templates/as3/test/asunit4/runner.as.tt +17 -0
  38. data/lib/gator/as3/templates/as3/test/asunit4/suite.as.tt +14 -0
  39. data/lib/gator/as3/{generators → templates/as3}/test/flexunit4/klass.as.tt +0 -0
  40. data/lib/gator/as3/templates/mxml/application.mxml.tt +30 -0
  41. data/lib/gator/as3/templates/mxml/component.mxml.tt +13 -0
  42. data/lib/gator/as3/templates/mxml/skin.mxml.tt +53 -0
  43. data/lib/gator/mxml/generators.rb +5 -0
  44. data/lib/gator/utils/as3_util.rb +45 -0
  45. data/rake/jeweler.rb +17 -0
  46. data/rake/jeweler_prerelease_tasks.rb +50 -0
  47. data/rake/pre_release_gemspec.rb +80 -0
  48. data/rake/pre_release_to_git.rb +59 -0
  49. data/spec/as3/generators/collection_spec.rb +46 -0
  50. data/spec/as3/generators/event_spec.rb +40 -0
  51. data/spec/as3/generators/interface_spec.rb +40 -0
  52. data/spec/as3/generators/klass_spec.rb +40 -0
  53. data/spec/as3/generators/test/asunit3/klass_spec.rb +43 -0
  54. data/spec/as3/generators/test/asunit3/runner_spec.rb +43 -0
  55. data/spec/as3/generators/test/asunit3/suite_spec.rb +43 -0
  56. data/spec/as3/generators/test/asunit4/klass_spec.rb +43 -0
  57. data/spec/as3/generators/test/asunit4/runner_spec.rb +43 -0
  58. data/spec/as3/generators/test/asunit4/suite_spec.rb +43 -0
  59. data/spec/mxml/generators/application_spec.rb +42 -0
  60. data/spec/mxml/generators/component_spec.rb +42 -0
  61. data/spec/mxml/generators/skin_spec.rb +42 -0
  62. data/spec/spec_helper.rb +36 -3
  63. metadata +86 -35
  64. data/lib/gator/as3/generators.rb +0 -3
  65. data/lib/gator/as3/generators/klass.rb +0 -53
  66. data/lib/gator/as3/generators/test/asunit4/klass.rb +0 -61
  67. data/lib/gator/as3/generators/test/flexunit4/klass.rb +0 -57
  68. data/spec/generators/collection_spec.rb +0 -11
  69. data/spec/generators/klass_spec.rb +0 -5
data/Gemfile CHANGED
@@ -3,7 +3,7 @@ source "http://rubygems.org"
3
3
  # Example:
4
4
  # gem "activesupport", ">= 2.3.5"
5
5
 
6
- gem "gator", "~> 0.0.20.pre"
6
+ gem "gator", "0.0.23.pre"
7
7
 
8
8
  # Add dependencies to develop your gem here.
9
9
  # Include everything needed to run rake, tests, features, etc.
@@ -12,5 +12,6 @@ group :development do
12
12
  gem "ci_reporter", "~> 1.6.5"
13
13
  gem "bundler", "~> 1.0.0"
14
14
  gem "jeweler", "~> 1.6.2"
15
- gem "rcov", ">= 0"
15
+ gem "simplecov", :require => false
16
+ gem "simplecov-rcov", :require => false
16
17
  end
data/Rakefile CHANGED
@@ -25,6 +25,9 @@ Jeweler::Tasks.new do |gem|
25
25
  end
26
26
  Jeweler::RubygemsDotOrgTasks.new
27
27
 
28
+ require File.dirname(__FILE__)+"/rake/jeweler_prerelease_tasks"
29
+ Jeweler::PrereleaseTasks.new
30
+
28
31
  require 'rspec/core'
29
32
  require 'rspec/core/rake_task'
30
33
  require 'ci/reporter/rake/rspec'
@@ -36,10 +39,10 @@ end
36
39
 
37
40
  task :spec => "ci:setup:rspec"
38
41
 
39
- RSpec::Core::RakeTask.new(:rcov) do |spec|
40
- spec.pattern = 'spec/**/*_spec.rb'
41
- spec.rcov = true
42
- end
42
+ #RSpec::Core::RakeTask.new(:rcov) do |spec|
43
+ # spec.pattern = 'spec/**/*_spec.rb'
44
+ # spec.rcov = true
45
+ #end
43
46
 
44
47
  task :test => :spec
45
48
  task :default => :spec
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.7.pre
1
+ 0.0.9.pre
@@ -4,14 +4,14 @@
4
4
  # -*- encoding: utf-8 -*-
5
5
 
6
6
  Gem::Specification.new do |s|
7
- s.name = %q{gator-as3}
8
- s.version = "0.0.7.pre"
7
+ s.name = "gator-as3"
8
+ s.version = "0.0.9.pre"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new("> 1.3.1") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Dominic Graefen"]
12
- s.date = %q{2011-08-16}
13
- s.description = %q{gator-as3 - ActionScript3 & MXML generators for gator}
14
- s.email = %q{dominic.graefen@gmail.com}
12
+ s.date = "2011-10-13"
13
+ s.description = "gator-as3 - ActionScript3 & MXML generators for gator"
14
+ s.email = "dominic.graefen@gmail.com"
15
15
  s.extra_rdoc_files = [
16
16
  "LICENSE.txt",
17
17
  "README.rdoc"
@@ -25,53 +25,98 @@ Gem::Specification.new do |s|
25
25
  "VERSION",
26
26
  "gator-as3.gemspec",
27
27
  "lib/gator/as3.rb",
28
- "lib/gator/as3/generators.rb",
29
- "lib/gator/as3/generators/collection.rb",
30
- "lib/gator/as3/generators/klass.as.tt",
31
- "lib/gator/as3/generators/klass.rb",
32
- "lib/gator/as3/generators/test/asunit4.rb",
33
- "lib/gator/as3/generators/test/asunit4/collection.rb",
34
- "lib/gator/as3/generators/test/asunit4/klass.as.tt",
35
- "lib/gator/as3/generators/test/asunit4/klass.rb",
36
- "lib/gator/as3/generators/test/flexunit4.rb",
37
- "lib/gator/as3/generators/test/flexunit4/collection.rb",
38
- "lib/gator/as3/generators/test/flexunit4/klass.as.tt",
39
- "lib/gator/as3/generators/test/flexunit4/klass.rb",
40
- "spec/generators/collection_spec.rb",
41
- "spec/generators/klass_spec.rb",
28
+ "lib/gator/as3/as3_configuration.rb",
29
+ "lib/gator/as3/generators/as3/collection.rb",
30
+ "lib/gator/as3/generators/as3/event.rb",
31
+ "lib/gator/as3/generators/as3/generator.rb",
32
+ "lib/gator/as3/generators/as3/interface.rb",
33
+ "lib/gator/as3/generators/as3/klass.rb",
34
+ "lib/gator/as3/generators/as3/test/asunit3.rb",
35
+ "lib/gator/as3/generators/as3/test/asunit3/collection.rb",
36
+ "lib/gator/as3/generators/as3/test/asunit3/klass.rb",
37
+ "lib/gator/as3/generators/as3/test/asunit3/runner.rb",
38
+ "lib/gator/as3/generators/as3/test/asunit3/suite.rb",
39
+ "lib/gator/as3/generators/as3/test/asunit4.rb",
40
+ "lib/gator/as3/generators/as3/test/asunit4/collection.rb",
41
+ "lib/gator/as3/generators/as3/test/asunit4/klass.rb",
42
+ "lib/gator/as3/generators/as3/test/asunit4/runner.rb",
43
+ "lib/gator/as3/generators/as3/test/asunit4/suite.rb",
44
+ "lib/gator/as3/generators/as3/test/flexunit4.rb",
45
+ "lib/gator/as3/generators/as3/test/flexunit4/collection.rb",
46
+ "lib/gator/as3/generators/as3/test/flexunit4/klass.rb",
47
+ "lib/gator/as3/generators/mxml/application.rb",
48
+ "lib/gator/as3/generators/mxml/collection.rb",
49
+ "lib/gator/as3/generators/mxml/component.rb",
50
+ "lib/gator/as3/generators/mxml/generator.rb",
51
+ "lib/gator/as3/generators/mxml/skin.rb",
52
+ "lib/gator/as3/templates/as3/event.as.tt",
53
+ "lib/gator/as3/templates/as3/interface.as.tt",
54
+ "lib/gator/as3/templates/as3/klass.as.tt",
55
+ "lib/gator/as3/templates/as3/test/asunit3/klass.as.tt",
56
+ "lib/gator/as3/templates/as3/test/asunit3/runner.as.tt",
57
+ "lib/gator/as3/templates/as3/test/asunit3/suite.as.tt",
58
+ "lib/gator/as3/templates/as3/test/asunit4/klass.as.tt",
59
+ "lib/gator/as3/templates/as3/test/asunit4/runner.as.tt",
60
+ "lib/gator/as3/templates/as3/test/asunit4/suite.as.tt",
61
+ "lib/gator/as3/templates/as3/test/flexunit4/klass.as.tt",
62
+ "lib/gator/as3/templates/mxml/application.mxml.tt",
63
+ "lib/gator/as3/templates/mxml/component.mxml.tt",
64
+ "lib/gator/as3/templates/mxml/skin.mxml.tt",
65
+ "lib/gator/mxml/generators.rb",
66
+ "lib/gator/utils/as3_util.rb",
67
+ "rake/jeweler.rb",
68
+ "rake/jeweler_prerelease_tasks.rb",
69
+ "rake/pre_release_gemspec.rb",
70
+ "rake/pre_release_to_git.rb",
71
+ "spec/as3/generators/collection_spec.rb",
72
+ "spec/as3/generators/event_spec.rb",
73
+ "spec/as3/generators/interface_spec.rb",
74
+ "spec/as3/generators/klass_spec.rb",
75
+ "spec/as3/generators/test/asunit3/klass_spec.rb",
76
+ "spec/as3/generators/test/asunit3/runner_spec.rb",
77
+ "spec/as3/generators/test/asunit3/suite_spec.rb",
78
+ "spec/as3/generators/test/asunit4/klass_spec.rb",
79
+ "spec/as3/generators/test/asunit4/runner_spec.rb",
80
+ "spec/as3/generators/test/asunit4/suite_spec.rb",
81
+ "spec/mxml/generators/application_spec.rb",
82
+ "spec/mxml/generators/component_spec.rb",
83
+ "spec/mxml/generators/skin_spec.rb",
42
84
  "spec/spec_helper.rb"
43
85
  ]
44
- s.homepage = %q{http://github.com/devboy/gator-as3}
86
+ s.homepage = "http://github.com/devboy/gator-as3"
45
87
  s.licenses = ["MIT"]
46
88
  s.require_paths = ["lib"]
47
- s.rubygems_version = %q{1.6.2}
48
- s.summary = %q{gator-as3 - ActionScript3 & MXML generators for gator}
89
+ s.rubygems_version = "1.8.10"
90
+ s.summary = "gator-as3 - ActionScript3 & MXML generators for gator"
49
91
 
50
92
  if s.respond_to? :specification_version then
51
93
  s.specification_version = 3
52
94
 
53
95
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
54
- s.add_runtime_dependency(%q<gator>, ["~> 0.0.20.pre"])
96
+ s.add_runtime_dependency(%q<gator>, ["= 0.0.23.pre"])
55
97
  s.add_development_dependency(%q<rspec>, ["~> 2.3.0"])
56
98
  s.add_development_dependency(%q<ci_reporter>, ["~> 1.6.5"])
57
99
  s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
58
100
  s.add_development_dependency(%q<jeweler>, ["~> 1.6.2"])
59
- s.add_development_dependency(%q<rcov>, [">= 0"])
101
+ s.add_development_dependency(%q<simplecov>, [">= 0"])
102
+ s.add_development_dependency(%q<simplecov-rcov>, [">= 0"])
60
103
  else
61
- s.add_dependency(%q<gator>, ["~> 0.0.20.pre"])
104
+ s.add_dependency(%q<gator>, ["= 0.0.23.pre"])
62
105
  s.add_dependency(%q<rspec>, ["~> 2.3.0"])
63
106
  s.add_dependency(%q<ci_reporter>, ["~> 1.6.5"])
64
107
  s.add_dependency(%q<bundler>, ["~> 1.0.0"])
65
108
  s.add_dependency(%q<jeweler>, ["~> 1.6.2"])
66
- s.add_dependency(%q<rcov>, [">= 0"])
109
+ s.add_dependency(%q<simplecov>, [">= 0"])
110
+ s.add_dependency(%q<simplecov-rcov>, [">= 0"])
67
111
  end
68
112
  else
69
- s.add_dependency(%q<gator>, ["~> 0.0.20.pre"])
113
+ s.add_dependency(%q<gator>, ["= 0.0.23.pre"])
70
114
  s.add_dependency(%q<rspec>, ["~> 2.3.0"])
71
115
  s.add_dependency(%q<ci_reporter>, ["~> 1.6.5"])
72
116
  s.add_dependency(%q<bundler>, ["~> 1.0.0"])
73
117
  s.add_dependency(%q<jeweler>, ["~> 1.6.2"])
74
- s.add_dependency(%q<rcov>, [">= 0"])
118
+ s.add_dependency(%q<simplecov>, [">= 0"])
119
+ s.add_dependency(%q<simplecov-rcov>, [">= 0"])
75
120
  end
76
121
  end
77
122
 
@@ -0,0 +1,3 @@
1
+ require File.dirname(__FILE__) + '/as3/as3_configuration'
2
+
3
+ Gator::Sandbox.gator.add_configuration :as3, Gator::AS3Configuration.new
@@ -0,0 +1,38 @@
1
+ class Gator
2
+ class AS3Configuration < Gator::Configuration
3
+
4
+ def use *generators
5
+ require File.dirname(__FILE__) + '/../../gator/utils/as3_util'
6
+ generators.each do |generator|
7
+ case generator
8
+ when :as3
9
+ add_as3_collection
10
+ when :mxml
11
+ require File.dirname(__FILE__) + '/generators/mxml/generator'
12
+ require File.dirname(__FILE__) + '/generators/mxml/collection'
13
+ Gator::GenerateCommand << Gator::MXML::GeneratorCollection
14
+ when :asunit3
15
+ add_as3_collection
16
+ require File.dirname(__FILE__) + '/generators/as3/test/asunit3'
17
+ when :asunit4
18
+ add_as3_collection
19
+ require File.dirname(__FILE__) + '/generators/as3/test/asunit4'
20
+ when :flexunit4
21
+ add_as3_collection
22
+ require File.dirname(__FILE__) + '/generators/as3/test/flexunit4'
23
+ end
24
+ end
25
+ end
26
+
27
+ private
28
+
29
+ def add_as3_collection
30
+ unless @as3_collection_added
31
+ require File.dirname(__FILE__) + '/generators/as3/collection'
32
+ require File.dirname(__FILE__) + '/generators/as3/generator'
33
+ Gator::GenerateCommand << Gator::AS3::GeneratorCollection
34
+ @as3_collection_added = true
35
+ end
36
+ end
37
+ end
38
+ end
@@ -1,6 +1,8 @@
1
1
  require File.dirname(__FILE__) + '/klass'
2
+ require File.dirname(__FILE__) + '/event'
3
+ require File.dirname(__FILE__) + '/interface'
2
4
 
3
- module Gator
5
+ class Gator
4
6
  module AS3
5
7
 
6
8
  class GeneratorCollection < Gator::Command
@@ -9,6 +11,8 @@ module Gator
9
11
  :usage => "generate as3 GENERATOR", :description => "Generators for AS3."
10
12
 
11
13
  register_subcommand Gator::AS3::ClassGenerator
14
+ register_subcommand Gator::AS3::EventGenerator
15
+ register_subcommand Gator::AS3::InterfaceGenerator
12
16
 
13
17
  end
14
18
 
@@ -0,0 +1,14 @@
1
+ class Gator
2
+ module AS3
3
+ class EventGenerator < KlassGenerator
4
+
5
+ define :command => "event",
6
+ :usage => "generate as3 event CLASS_NAME", :description => "Creates AS3 event."
7
+
8
+ def template_file
9
+ "as3/event.as.tt"
10
+ end
11
+
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,95 @@
1
+ class Gator
2
+ module AS3
3
+ class AS3Generator < Gator::Generator
4
+ include Gator::ActAsTemplateGenerator
5
+
6
+ argument :package_and_class
7
+ attr_accessor :package_name, :class_name
8
+
9
+ def self.template_root
10
+ File.dirname(__FILE__) + "/../../templates"
11
+ end
12
+
13
+ def init
14
+ @package_name, @class_name = AS3Util.split_package_and_class(package_and_class)
15
+ end
16
+
17
+ def generate
18
+ template template_file, target
19
+ end
20
+
21
+ protected
22
+
23
+ def template_file
24
+ nil
25
+ end
26
+
27
+ def target
28
+ File.join(source, AS3Util.package_to_dir(@package_name), "#{@class_name}.as")
29
+ end
30
+
31
+ end
32
+
33
+ class KlassGenerator < AS3Generator
34
+
35
+ class_option :test, :default => false
36
+
37
+ def generate_test
38
+ return unless options[:test]
39
+ invoke resolve_subcommand( generate_test_command, generate_test_command_fallback )
40
+ end
41
+
42
+ protected
43
+
44
+ def source
45
+ Gator::Sandbox.gator.project.path(:source, :main, :as3)
46
+ end
47
+
48
+ def generate_test_command
49
+ ["test", definition[:command]]
50
+ end
51
+
52
+ def generate_test_command_fallback
53
+ ["as3", "test", "klass"]
54
+ end
55
+ end
56
+
57
+ class TestGenerator < AS3Generator
58
+
59
+ class_option :klass, :default => false
60
+
61
+ def generate_klass
62
+ return unless options[:klass]
63
+ invoke resolve_subcommand(generate_klass_command, generate_klass_command_fallback)
64
+ end
65
+
66
+ class_option :suite, :default => true
67
+
68
+ def update_suite
69
+ return unless options[:suite]
70
+ invoke resolve_subcommand(["test","suite"])
71
+ end
72
+
73
+ class_option :runner, :default => true
74
+
75
+ def update_runner
76
+ return unless options[:runner]
77
+ invoke resolve_subcommand(["test","runner"])
78
+ end
79
+
80
+ protected
81
+
82
+ def source
83
+ Gator::Sandbox.gator.project.path(:source, :test, :as3)
84
+ end
85
+
86
+ def generate_klass_command
87
+ ["as3", definition[:command]]
88
+ end
89
+
90
+ def generate_klass_command_fallback
91
+ ["as3", "klass"]
92
+ end
93
+ end
94
+ end
95
+ end
@@ -0,0 +1,14 @@
1
+ class Gator
2
+ module AS3
3
+ class InterfaceGenerator < KlassGenerator
4
+
5
+ define :command => "interface",
6
+ :usage => "generate as3 interface CLASS_NAME", :description => "Creates AS3 class."
7
+
8
+ def template_file
9
+ "as3/interface.as.tt"
10
+ end
11
+
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,15 @@
1
+ require File.dirname(__FILE__) + '/generator'
2
+ class Gator
3
+ module AS3
4
+ class ClassGenerator < KlassGenerator
5
+
6
+ define :command => "klass",
7
+ :usage => "generate as3 klass CLASS_NAME", :description => "Creates AS3 class."
8
+
9
+ def template_file
10
+ "as3/klass.as.tt"
11
+ end
12
+
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,3 @@
1
+ require File.dirname(__FILE__) + '/asunit3/collection'
2
+
3
+ Gator::AS3::GeneratorCollection.register_subcommand Gator::AS3::ASUnit3::TestGeneratorCollection
@@ -0,0 +1,21 @@
1
+ require File.dirname(__FILE__) + '/klass'
2
+ require File.dirname(__FILE__) + '/suite'
3
+ require File.dirname(__FILE__) + '/runner'
4
+
5
+ class Gator
6
+ module AS3
7
+ module ASUnit3
8
+
9
+ class TestGeneratorCollection < Gator::Command
10
+
11
+ define :command => "test",
12
+ :usage => "generate as3 test GENERATOR", :description => "TestGenerators for ASUnit3"
13
+
14
+ register_subcommand ClassTestGenerator
15
+ register_subcommand SuiteGenerator
16
+ register_subcommand RunnerGenerator
17
+
18
+ end
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,32 @@
1
+ class Gator
2
+ module AS3
3
+ module ASUnit3
4
+
5
+ class ClassTestGenerator < Gator::AS3::TestGenerator
6
+
7
+
8
+ define :command => "klass",
9
+ :usage => "generate as3 test klass CLASS_NAME", :description => "Creates ASUnit3 class test."
10
+
11
+ def template_file
12
+ "as3/test/asunit3/klass.as.tt"
13
+ end
14
+
15
+ def generate
16
+ @class_name = "#{@class_name}Test"
17
+ super
18
+ end
19
+
20
+ no_tasks {
21
+
22
+ def instance_name
23
+ @class_name.chomp("Test")
24
+ end
25
+
26
+ }
27
+
28
+ end
29
+
30
+ end
31
+ end
32
+ end