robotlegs 1.3.0.4.pre → 1.3.0.5.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 CHANGED
@@ -1,3 +1,9 @@
1
- source :rubygems
1
+ source "http://rubygems.org"
2
+
3
+ gem 'flashsdk', '>= 1.0.13.pre'
4
+
5
+ group :development do
6
+ gem "shoulda"
7
+ gem "mocha"
8
+ end
2
9
 
3
- gemspec
data/Gemfile.lock CHANGED
@@ -1,20 +1,13 @@
1
- PATH
2
- remote: .
3
- specs:
4
- robotlegs (1.3.0.4.pre)
5
- flashsdk (>= 1.0.8.pre)
6
-
7
1
  GEM
8
2
  remote: http://rubygems.org/
9
3
  specs:
10
4
  archive-tar-minitar (0.5.2)
11
5
  flashsdk (1.0.13.pre)
12
6
  sprout (>= 1.0.31.pre)
13
- mocha (0.9.8)
7
+ mocha (0.9.10)
14
8
  rake
15
9
  open4 (1.0.1)
16
10
  rake (0.8.7)
17
- rcov (0.9.9)
18
11
  rdoc (2.5.11)
19
12
  rubyzip (0.9.4)
20
13
  shoulda (2.11.3)
@@ -30,9 +23,6 @@ PLATFORMS
30
23
  ruby
31
24
 
32
25
  DEPENDENCIES
33
- flashsdk (>= 1.0.8.pre)
26
+ flashsdk (>= 1.0.13.pre)
34
27
  mocha
35
- rake
36
- rcov
37
- robotlegs!
38
28
  shoulda
data/README.mkdn CHANGED
@@ -14,6 +14,7 @@ This bundle contains generators for creating:
14
14
  * Proxy
15
15
  * Mediator
16
16
  * Command
17
+ * Service
17
18
 
18
19
 
19
20
  ## Prerequisites
@@ -27,27 +28,34 @@ This bundle contains generators for creating:
27
28
 
28
29
  cd robotlegs
29
30
  gem build robotlegs.gemspec
30
- gem install robotlegs-1.0.pre.gem
31
- rl-project SomeProject
32
- rl-proxy SomeProxy
33
- rl-mediator SomeMediator
34
- rl-command SomeCommand
31
+ gem install robotlegs-1.3.0.5.pre.gem
32
+
33
+ ## Usage
34
+
35
+ Project Generator
36
+ rl-project SomeProject --package=com.foo or rl-project SomeProject --package=com.foo --shallow
37
+
38
+ Proxy Generator
39
+ rl-proxy SomeProxy --package=com.foo
35
40
 
36
- ## Available libraries
37
-
38
- library :robotlegs, :swc # (default) includes swc, docs
41
+ Mediator Generator
42
+ rl-mediator SomeMediator --package=com.foo
43
+
44
+ Command Generator
45
+ rl-command SomeCommand --package=com.foo
39
46
 
40
- library :robotlegs, :src # includes swc, docs, src
47
+ Service Generator
48
+ rl-service SomeService --package=com.foo
41
49
 
42
50
  ##TODO
43
51
 
44
- Generators
45
52
  * Event
46
53
  * VO
47
54
  * DTO
48
55
  * Signal
49
56
  * Signals Project
50
57
  * Signal Command
58
+ * as3 Only Project
51
59
 
52
60
  ## MIT License
53
61
 
data/Rakefile CHANGED
@@ -1,52 +1,23 @@
1
+ require 'rubygems'
1
2
  require 'bundler'
3
+
2
4
  Bundler.require
3
5
 
6
+ require 'rake'
4
7
  require 'rake/clean'
5
8
  require 'rake/testtask'
6
9
 
7
- # the filename used by the gem
8
- filename = "#{Robotlegs::NAME}-#{Robotlegs::VERSION}"
9
-
10
- CLOBBER.add('pkg')
11
- CLOBBER.add('vendor')
12
- CLOBBER.add('.bundle')
13
-
14
- #
15
- # Tasks
16
- #
10
+ require File.join(File.dirname(__FILE__), 'lib', 'robotlegs', 'module')
17
11
 
18
12
  namespace :test do
13
+
19
14
  Rake::TestTask.new(:units) do |t|
20
15
  t.libs << "test/unit"
21
16
  t.test_files = FileList["test/unit/*_test.rb"]
22
17
  t.verbose = true
23
18
  end
19
+
24
20
  end
25
21
 
26
22
  desc "Run tests"
27
- task :test => 'test:units'
28
-
29
-
30
- #
31
- # Gem tasks
32
- #
33
-
34
- namespace :gem do
35
- directory "pkg"
36
-
37
- desc 'Build the gem'
38
- task :build => 'pkg' do
39
- puts `gem build #{Robotlegs::NAME}.gemspec`
40
- puts `mv #{filename}.gem pkg/#{filename}.gem`
41
- end
42
-
43
- desc "Build and install #{filename}.gem"
44
- task :install => :build do
45
- puts `gem install pkg/#{filename}`
46
- end
47
-
48
- desc "Build and push #{filename}.gem to rubygems.org"
49
- task :push => :build do
50
- system "gem push pkg/#{filename}.gem"
51
- end
52
- end
23
+ task :test => 'test:units'
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 1.3.0.5.pre
data/lib/robotlegs.rb CHANGED
@@ -1,8 +1,6 @@
1
- $LOAD_PATH.unshift File.expand_path('../../lib', __FILE__)
2
- require 'sprout'
3
- require 'robotlegs/version'
1
+ require 'flashsdk'
4
2
 
5
- require 'robotlegs/generators/robotlegs_class_generator_base'
3
+ require 'robotlegs/module'
6
4
  require 'robotlegs/generators/project_generator'
7
5
  require 'robotlegs/generators/context_generator'
8
6
  require 'robotlegs/generators/proxy_generator'
@@ -10,19 +8,13 @@ require 'robotlegs/generators/mediator_generator'
10
8
  require 'robotlegs/generators/command_generator'
11
9
  require 'robotlegs/generators/service_generator'
12
10
 
13
- module Robotlegs
14
- # NAME and VERSION live in robotlegs/version
15
- end
16
-
17
11
  Sprout::Specification.new do |s|
18
12
  s.name = Robotlegs::NAME
19
13
  s.version = Robotlegs::VERSION
20
14
  s.add_remote_file_target do |f|
21
- f.platform = :universal
22
- f.url = "http://downloads.robotlegs.org/robotlegs-framework-v1.3.0.zip"
23
- f.md5 = '48ce7343e8d004c3bc9e335dc0c2f190'
15
+ f.url = "http://downloads.robotlegs.org/robotlegs-framework-v#{Robotlegs::ZIP_VERSION}.zip"
16
+ f.md5 = Robotlegs::ZIP_MD5
24
17
  f.archive_type = :zip
25
- f.add_library :swc, ['bin/', 'libs/', 'docs/']
26
- f.add_library :src, ['bin/', 'src', 'libs/', 'docs/']
18
+ f.add_library :swc, ['bin/']
27
19
  end
28
20
  end
@@ -1,51 +1,26 @@
1
1
  module Robotlegs
2
- class CommandGenerator < RobotlegsClassGeneratorBase
2
+ class CommandGenerator < FlashSDK::ClassGenerator
3
3
 
4
4
  def manifest
5
- directory input.snake_case do
6
- template "#{input.camel_case}.as", 'RobotlegsCommand.as'
7
- create_test_case
5
+ if(!input.match(/Test$/))
6
+ directory command_directory do
7
+ template "#{class_name}.as", 'RobotlegsCommand.as'
8
+ end
8
9
  end
9
10
 
10
- end
11
-
12
- def class_directory
13
- parts = input_in_parts
14
- if parts.size > 1
15
- parts.pop
16
- return File.join src, *parts
11
+ unless no_test
12
+ generator :test_class, :input => "#{fully_qualified_class_name}Test"
17
13
  end
18
- return src
19
14
  end
20
-
21
- def package_name
22
- parts = input_in_parts
23
- if parts.size > 1
24
- parts.pop
25
- return "#{parts.join('.')} "
26
- end
27
- return ""
15
+
16
+ def command_directory
17
+ [] << src << package_directory << "controller" << "commands"
28
18
  end
29
-
30
- def class_name
31
- parts = input_in_parts
32
- parts.pop.camel_case
19
+
20
+ def command_package
21
+ default_package_name << ".controller" << ".commands"
33
22
  end
34
-
35
- def input_in_parts
36
- provided_input = input
37
- if provided_input.include?('/')
38
- provided_input.gsub! /^#{src}\//, ''
39
- provided_input = provided_input.split('/').join('.')
40
- end
41
-
42
- provided_input.gsub!(/\.as$/, '')
43
- provided_input.gsub!(/\.mxml$/, '')
44
- provided_input.gsub!(/\.xml$/, '')
45
-
46
- provided_input.split('.')
47
- end
48
-
23
+
49
24
  end
50
25
  end
51
26
 
@@ -1,16 +1,21 @@
1
1
  module Robotlegs
2
- class ContextGenerator < RobotlegsClassGeneratorBase
3
-
4
- ##
5
- # This is how you add a parameter to your generator
6
- # add_param :fwee, String, { :default => "fwee" }
2
+ class ContextGenerator < FlashSDK::ClassGenerator
7
3
 
8
4
  def manifest
9
- directory input.snake_case do
10
- template input.camel_case
5
+ if(!input.match(/Test$/))
6
+ directory context_directory do
7
+ template "#{class_name}.as", 'RobotlegsContext.as'
8
+ end
11
9
  end
12
10
 
11
+ unless no_test
12
+ generator :test_class, :input => "#{fully_qualified_class_name}Test"
13
+ end
13
14
  end
14
-
15
+
16
+ def context_directory
17
+ [] << src << package_directory
18
+ end
19
+
15
20
  end
16
21
  end
@@ -1,11 +1,24 @@
1
1
  module Robotlegs
2
- class MediatorGenerator < RobotlegsClassGeneratorBase
2
+ class MediatorGenerator < FlashSDK::ClassGenerator
3
3
 
4
4
  def manifest
5
- directory input.snake_case do
6
- template input.camel_case
5
+ if(!input.match(/Test$/))
6
+ directory mediator_directory do
7
+ template "#{class_name}.as", 'RobotlegsMediator.as'
8
+ end
7
9
  end
8
10
 
11
+ unless no_test
12
+ generator :test_class, :input => "#{fully_qualified_class_name}Test"
13
+ end
14
+ end
15
+
16
+ def mediator_directory
17
+ [] << src << package_directory << "view" << "mediators"
18
+ end
19
+
20
+ def mediator_package
21
+ default_package_name << ".view" << ".mediators"
9
22
  end
10
23
 
11
24
  end
@@ -1,5 +1,3 @@
1
- require 'flashsdk'
2
-
3
1
  module Robotlegs
4
2
  class ProjectGenerator < FlashSDK::ProjectGenerator
5
3
 
@@ -13,7 +11,6 @@ module Robotlegs
13
11
  ##
14
12
  # Send flag shallow to prevent subdirectories vo, dto from being created
15
13
  add_param :shallow, Boolean
16
- add_param :package, String, { :default => ""}
17
14
  add_param :proxy, String, { :default => "proxy" }
18
15
  add_param :vo, String, { :default => "vo" }
19
16
  add_param :view, String, { :default => "view" }
@@ -69,57 +66,12 @@ module Robotlegs
69
66
 
70
67
  protected
71
68
 
72
- def project_name
73
- return input.camel_case
74
- end
75
-
76
- def package_directory
77
- split_parts package
78
- end
79
-
80
- def class_directory
81
- parts = input_in_parts
82
- if parts.size > 1
83
- parts.pop
84
- return File.join src, *parts
85
- end
86
- return src
87
- end
88
-
89
- def package_name
90
- parts = split_parts package
91
- return "#{parts.join('.')}"
92
- end
93
-
94
- def class_name
95
- parts = input_in_parts
96
- parts.pop.camel_case
97
- end
98
-
99
69
  def context_package
100
- if package_name != ""
101
- return package_name + ".*"
70
+ if default_package_name != ""
71
+ return default_package_name + ".*"
102
72
  end
103
73
  "*"
104
74
  end
105
-
106
- def input_in_parts
107
- split_parts input
108
- end
109
-
110
- def split_parts(value)
111
- provided_input = value
112
- if provided_input.include?('/')
113
- provided_input.gsub! /^#{src}\//, ''
114
- provided_input = provided_input.split('/').join('.')
115
- end
116
-
117
- provided_input.gsub!(/\.as$/, '')
118
- provided_input.gsub!(/\.mxml$/, '')
119
- provided_input.gsub!(/\.xml$/, '')
120
-
121
- provided_input.split('.')
122
- end
123
-
75
+
124
76
  end
125
77
  end
@@ -1,11 +1,24 @@
1
1
  module Robotlegs
2
- class ProxyGenerator < RobotlegsClassGeneratorBase
2
+ class ProxyGenerator < FlashSDK::ClassGenerator
3
3
 
4
4
  def manifest
5
- directory input.snake_case do
6
- template input.camel_case
5
+ if(!input.match(/Test$/))
6
+ directory proxy_directory do
7
+ template "#{class_name}.as", 'RobotlegsProxy.as'
8
+ end
7
9
  end
8
10
 
11
+ unless no_test
12
+ generator :test_class, :input => "#{fully_qualified_class_name}Test"
13
+ end
14
+ end
15
+
16
+ def proxy_directory
17
+ [] << src << package_directory << "model" << "proxy"
18
+ end
19
+
20
+ def proxy_package
21
+ default_package_name << ".model" << ".proxy"
9
22
  end
10
23
 
11
24
  end
@@ -1,24 +1,24 @@
1
1
  module Robotlegs
2
- class ServiceGenerator < RobotlegsClassGeneratorBase
3
-
4
- ##
5
- # This is how you add a parameter to your generator
6
- # add_param :fwee, String, { :default => "fwee" }
7
- add_param :package, String, { :default => "com.foo" }
2
+ class ServiceGenerator < FlashSDK::ClassGenerator
8
3
 
9
4
  def manifest
10
- directory input.snake_case do
11
- template "#{input.camel_case}Service.as", "RobotlegsService.as"
5
+ if(!input.match(/Test$/))
6
+ directory service_directory do
7
+ template "#{class_name}.as", 'RobotlegsService.as'
8
+ end
12
9
  end
13
10
 
11
+ unless no_test
12
+ generator :test_class, :input => "#{fully_qualified_class_name}Test"
13
+ end
14
14
  end
15
-
16
- def package_name
17
- package
15
+
16
+ def service_directory
17
+ [] << src << package_directory << 'service'
18
18
  end
19
-
20
- def class_name
21
- ""
19
+
20
+ def service_package
21
+ default_package_name << '.service'
22
22
  end
23
23
 
24
24
  end
@@ -1,4 +1,4 @@
1
- package <%= package_name %>
1
+ package <%= command_package %>
2
2
  {
3
3
  import org.robotlegs.mvcs.Command;
4
4
 
@@ -1,17 +1,17 @@
1
- package <%= package_name %>
1
+ package <%= default_package_name %>
2
2
  {
3
3
  import flash.display.DisplayObjectContainer;
4
4
 
5
5
  import org.robotlegs.mvcs.Context;
6
6
  import org.robotlegs.base.ContextEvent;
7
7
 
8
- public class <%= class_name %>Context extends Context
8
+ public class <%= class_name %> extends Context
9
9
  {
10
10
  //---------------------------------------
11
11
  // CONSTRUCTOR
12
12
  //---------------------------------------
13
13
 
14
- public function <%= class_name %>Context(contextView:DisplayObjectContainer=null, autoStartup:Boolean=true)
14
+ public function <%= class_name %>(contextView:DisplayObjectContainer=null, autoStartup:Boolean=true)
15
15
  {
16
16
  super(contextView,autoStartup);
17
17
  }
@@ -1,5 +1,5 @@
1
1
  source 'http://rubygems.org'
2
2
 
3
- gem 'flashsdk', '>= 1.0.8.pre'
4
- gem 'robotlegs', '>= 1.1.1.pre'
3
+ gem 'flashsdk', '>= 1.0.13.pre'
4
+ gem 'robotlegs', '>= 1.3.0.4.pre'
5
5
  gem 'asunit4', '>= 4.2.2.pre'
@@ -1,4 +1,4 @@
1
- package <%= package_name %>
1
+ package <%= mediator_package %>
2
2
  {
3
3
  import org.robotlegs.mvcs.Mediator;
4
4
 
@@ -1,4 +1,4 @@
1
- package <%= package_name %>
1
+ package <%= proxy_package %>
2
2
  {
3
3
  import org.robotlegs.mvcs.Actor;
4
4
 
@@ -8,7 +8,7 @@ library :robotlegs, :swc
8
8
  # Configure
9
9
 
10
10
  def configure_mxmlc t
11
- t.library_path << 'lib/robotlegs/robotlegs-framework-v1.1.2.swc'
11
+ t.library_path << 'lib/robotlegs/robotlegs-framework-v<%= Robotlegs::ZIP_VERSION %>.swc'
12
12
  end
13
13
 
14
14
  ##############################
@@ -1,4 +1,4 @@
1
- package <%= package_name %>
1
+ package <%= service_package %>
2
2
  {
3
3
  import org.robotlegs.mvcs.Actor;
4
4
 
@@ -0,0 +1,9 @@
1
+ module Robotlegs
2
+ NAME = 'robotlegs'
3
+ ZIP_VERSION = '1.4.0'
4
+ ZIP_MD5 = '2c0962ea2f5e9665d1ac8951c7448b95'
5
+ # Version applies directly to Robotlegs official version. To release patches to
6
+ # the sprout or gem, increment the micro value, or the 4th number in the version sequence.
7
+ version_file = File.join(File.dirname(__FILE__), '..', '..', 'VERSION')
8
+ VERSION = File.read(version_file).strip
9
+ end
data/robotlegs.gemspec CHANGED
@@ -1,27 +1,24 @@
1
- $LOAD_PATH.unshift File.expand_path('../lib', __FILE__)
2
- require 'robotlegs/version'
1
+ # -*- encoding: utf-8 -*-
2
+ lib = File.expand_path("../lib", __FILE__)
3
+ $:.unshift lib unless $:.include?( lib )
4
+
5
+ require 'bundler'
6
+ require 'robotlegs'
3
7
 
4
8
  Gem::Specification.new do |s|
5
9
  s.name = Robotlegs::NAME
6
10
  s.version = Robotlegs::VERSION
7
- s.author = "Kristofer Joseph, Amos Lanka"
11
+ s.author = "Kristofer Joseph"
8
12
  s.email = ["projectsprouts@googlegroups.com"]
9
13
  s.homepage = "http://projectsprouts.org"
10
- s.summary = "Robotlegs Framework for AS3 wrapped in a Sprout::Specification for implementation into a sprout project."
11
- s.description = "Robotlegs Framework for AS3 wrapped in a Sprout::Specification for implementation into a sprout project. Robotlegs is a lightweight AS3 MVCS micro-architecture. Robotlegs was created to provide a small, loosely coupled application framework that is easy to test."
14
+ s.summary = "A library for developing Robotlegs projects with Project Sprouts"
15
+ s.description = "GO AND CODE"
12
16
  s.executables = ["rl-project","rl-context","rl-proxy","rl-mediator","rl-command","rl-service"]
17
+ s.rubyforge_project = "sprout-robotlegs"
18
+ s.required_rubygems_version = ">= 1.3.7"
19
+ s.files = FileList["**/*"].exclude /docs|.DS_Store|generated|.svn|.git|vendor/
13
20
 
14
- s.required_rubygems_version = ">= 1.3.6"
15
- # Remove gemspec dependency on rake
16
- # s.files = FileList["**/*"].exclude /docs|.DS_Store|generated|.svn|.git|vendor/
17
- s.files = Dir["{test,lib,bin}/**/*"]
18
- s.files.concat Dir["*.gemspec", "build*", "[A-Z]*[.a-z]*"]
19
-
20
- s.add_dependency "flashsdk", '>= 1.0.8.pre'
21
- s.add_development_dependency "shoulda"
22
- s.add_development_dependency "mocha"
23
- s.add_development_dependency "rcov"
24
- s.add_development_dependency "rake"
21
+ s.add_bundler_dependencies
25
22
 
26
23
  s.require_paths << 'lib'
27
24
  end
@@ -0,0 +1,37 @@
1
+ require 'test_helper'
2
+
3
+ class CommandGeneratorTest < Test::Unit::TestCase
4
+ include SproutTestCase
5
+
6
+ context "A new Command generator" do
7
+
8
+ setup do
9
+ @temp = File.join(fixtures, 'generators', 'tmp')
10
+ FileUtils.mkdir_p @temp
11
+ @generator = Robotlegs::CommandGenerator.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 Command" do
21
+ @generator.input = "PoodleCommand"
22
+ @generator.package = "com.foo.bar"
23
+ @generator.execute
24
+
25
+ input_dir = File.join(@temp, "src", "com", "foo", "bar", "controller", "commands")
26
+ assert_directory input_dir
27
+
28
+ input_file = File.join(input_dir, "PoodleCommand.as")
29
+ assert_file input_file do |content|
30
+ assert_match /com.foo.bar.controller.command/, content
31
+ assert_match /PoodleCommand/, content
32
+ end
33
+
34
+ end
35
+
36
+ end
37
+ end
@@ -0,0 +1,37 @@
1
+ require 'test_helper'
2
+
3
+ class ContextGeneratorTest < Test::Unit::TestCase
4
+ include SproutTestCase
5
+
6
+ context "A new Context generator" do
7
+
8
+ setup do
9
+ @temp = File.join(fixtures, 'generators', 'tmp')
10
+ FileUtils.mkdir_p @temp
11
+ @generator = Robotlegs::ContextGenerator.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 Context" do
21
+ @generator.input = "BrainwashContext"
22
+ @generator.package = "com.foo.bar"
23
+ @generator.execute
24
+
25
+ input_dir = File.join(@temp, "src", "com", "foo", "bar")
26
+ assert_directory input_dir
27
+
28
+ input_file = File.join(input_dir, "BrainwashContext.as")
29
+ assert_file input_file do |content|
30
+ assert_match /com.foo.bar/, content
31
+ assert_match /BrainwashContext/, content
32
+ end
33
+
34
+ end
35
+
36
+ end
37
+ end
@@ -0,0 +1,37 @@
1
+ require 'test_helper'
2
+
3
+ class MediatorGeneratorTest < Test::Unit::TestCase
4
+ include SproutTestCase
5
+
6
+ context "A new Mediator generator" do
7
+
8
+ setup do
9
+ @temp = File.join(fixtures, 'generators', 'tmp')
10
+ FileUtils.mkdir_p @temp
11
+ @generator = Robotlegs::MediatorGenerator.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 Mediator" do
21
+ @generator.input = "SasafrassMediator"
22
+ @generator.package = "com.foo.bar"
23
+ @generator.execute
24
+
25
+ input_dir = File.join(@temp, "src", "com", "foo", "bar", "view", "mediators")
26
+ assert_directory input_dir
27
+
28
+ input_file = File.join(input_dir, "SasafrassMediator.as")
29
+ assert_file input_file do |content|
30
+ assert_match /com.foo.bar.view.mediators/, content
31
+ assert_match /SasafrassMediator/, content
32
+ end
33
+
34
+ end
35
+
36
+ end
37
+ end
@@ -1,4 +1,4 @@
1
- require File.join(File.dirname(__FILE__), "test_helper")
1
+ require 'test_helper'
2
2
 
3
3
  class ProjectGeneratorTest < Test::Unit::TestCase
4
4
  include SproutTestCase
@@ -0,0 +1,37 @@
1
+ require 'test_helper'
2
+
3
+ class ProxyGeneratorTest < Test::Unit::TestCase
4
+ include SproutTestCase
5
+
6
+ context "A new Proxy generator" do
7
+
8
+ setup do
9
+ @temp = File.join(fixtures, 'generators', 'tmp')
10
+ FileUtils.mkdir_p @temp
11
+ @generator = Robotlegs::ProxyGenerator.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 Proxy" do
21
+ @generator.input = "UserProxy"
22
+ @generator.package = "com.foo.bar"
23
+ @generator.execute
24
+
25
+ input_dir = File.join(@temp, "src", "com", "foo", "bar", "model", "proxy")
26
+ assert_directory input_dir
27
+
28
+ input_file = File.join(input_dir, "UserProxy.as")
29
+ assert_file input_file do |content|
30
+ assert_match /com.foo.bar.model.proxy/, content
31
+ assert_match /UserProxy/, content
32
+ end
33
+
34
+ end
35
+
36
+ end
37
+ end
@@ -1,6 +1,4 @@
1
- require File.join(File.dirname(__FILE__), "test_helper")
2
-
3
- require 'robotlegs/generators/service_generator'
1
+ require 'test_helper'
4
2
 
5
3
  class ServiceGeneratorTest < Test::Unit::TestCase
6
4
  include SproutTestCase
@@ -20,16 +18,18 @@ class ServiceGeneratorTest < Test::Unit::TestCase
20
18
  end
21
19
 
22
20
  should "generate a new Service" do
23
- @generator.input = "Service"
21
+ @generator.input = "NoodleService"
22
+ @generator.package = "com.foo.bar"
24
23
  @generator.execute
25
- #
26
- # input_dir = File.join(@temp, "service")
27
- # assert_directory input_dir
28
- #
29
- # input_file = File.join(input_dir, "RobotlegsService.as")
30
- # assert_file input_file do |content|
31
- # assert_matches /Your content to assert here/, content
32
- # end
24
+
25
+ input_dir = File.join(@temp, "src", "com", "foo", "bar", "service")
26
+ assert_directory input_dir
27
+
28
+ input_file = File.join(input_dir, "NoodleService.as")
29
+ assert_file input_file do |content|
30
+ assert_match /com.foo.bar.service/, content
31
+ assert_match /NoodleService/, content
32
+ end
33
33
 
34
34
  end
35
35
 
@@ -1,11 +1,18 @@
1
1
  require "rubygems"
2
2
  require "bundler"
3
3
 
4
- Bundler.require :default, :development
4
+ Bundler.setup :default, :development
5
+
6
+ require 'sprout'
7
+ # These require statments *must* be in this order:
8
+ # http://bit.ly/bCC0Ew
9
+ # Somewhat surprised they're not being required by Bundler...
10
+ require 'shoulda'
11
+ require 'mocha'
5
12
 
6
13
  $:.unshift File.expand_path(File.join(File.dirname(__FILE__), '..', '..', 'lib'))
7
14
  $:.unshift File.expand_path(File.join(File.dirname(__FILE__), '..'))
8
15
 
9
16
  require 'robotlegs'
10
-
17
+ require 'flashsdk'
11
18
  require 'sprout/test/sprout_test_case'
metadata CHANGED
@@ -1,99 +1,67 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: robotlegs
3
3
  version: !ruby/object:Gem::Version
4
- hash: 961916084
5
4
  prerelease: true
6
5
  segments:
7
6
  - 1
8
7
  - 3
9
8
  - 0
10
- - 4
9
+ - 5
11
10
  - pre
12
- version: 1.3.0.4.pre
11
+ version: 1.3.0.5.pre
13
12
  platform: ruby
14
13
  authors:
15
- - Kristofer Joseph, Amos Lanka
14
+ - Kristofer Joseph
16
15
  autorequire:
17
16
  bindir: bin
18
17
  cert_chain: []
19
18
 
20
- date: 2010-10-25 00:00:00 -07:00
19
+ date: 2010-11-29 00:00:00 -08:00
21
20
  default_executable:
22
21
  dependencies:
23
22
  - !ruby/object:Gem::Dependency
24
- version_requirements: &id001 !ruby/object:Gem::Requirement
23
+ name: flashsdk
24
+ requirement: &id001 !ruby/object:Gem::Requirement
25
25
  none: false
26
26
  requirements:
27
27
  - - ">="
28
28
  - !ruby/object:Gem::Version
29
- hash: 961916020
30
29
  segments:
31
30
  - 1
32
31
  - 0
33
- - 8
32
+ - 13
34
33
  - pre
35
- version: 1.0.8.pre
36
- requirement: *id001
34
+ version: 1.0.13.pre
37
35
  type: :runtime
38
- name: flashsdk
39
36
  prerelease: false
37
+ version_requirements: *id001
40
38
  - !ruby/object:Gem::Dependency
41
- version_requirements: &id002 !ruby/object:Gem::Requirement
42
- none: false
43
- requirements:
44
- - - ">="
45
- - !ruby/object:Gem::Version
46
- hash: 3
47
- segments:
48
- - 0
49
- version: "0"
50
- requirement: *id002
51
- type: :development
52
39
  name: shoulda
53
- prerelease: false
54
- - !ruby/object:Gem::Dependency
55
- version_requirements: &id003 !ruby/object:Gem::Requirement
40
+ requirement: &id002 !ruby/object:Gem::Requirement
56
41
  none: false
57
42
  requirements:
58
43
  - - ">="
59
44
  - !ruby/object:Gem::Version
60
- hash: 3
61
45
  segments:
62
46
  - 0
63
47
  version: "0"
64
- requirement: *id003
65
48
  type: :development
66
- name: mocha
67
- prerelease: false
68
- - !ruby/object:Gem::Dependency
69
- version_requirements: &id004 !ruby/object:Gem::Requirement
70
- none: false
71
- requirements:
72
- - - ">="
73
- - !ruby/object:Gem::Version
74
- hash: 3
75
- segments:
76
- - 0
77
- version: "0"
78
- requirement: *id004
79
- type: :development
80
- name: rcov
81
49
  prerelease: false
50
+ version_requirements: *id002
82
51
  - !ruby/object:Gem::Dependency
83
- version_requirements: &id005 !ruby/object:Gem::Requirement
52
+ name: mocha
53
+ requirement: &id003 !ruby/object:Gem::Requirement
84
54
  none: false
85
55
  requirements:
86
56
  - - ">="
87
57
  - !ruby/object:Gem::Version
88
- hash: 3
89
58
  segments:
90
59
  - 0
91
60
  version: "0"
92
- requirement: *id005
93
61
  type: :development
94
- name: rake
95
62
  prerelease: false
96
- description: Robotlegs Framework for AS3 wrapped in a Sprout::Specification for implementation into a sprout project. Robotlegs is a lightweight AS3 MVCS micro-architecture. Robotlegs was created to provide a small, loosely coupled application framework that is easy to test.
63
+ version_requirements: *id003
64
+ description: GO AND CODE
97
65
  email:
98
66
  - projectsprouts@googlegroups.com
99
67
  executables:
@@ -108,15 +76,19 @@ extensions: []
108
76
  extra_rdoc_files: []
109
77
 
110
78
  files:
111
- - test/unit/project_generator_test.rb
112
- - test/unit/service_generator_test.rb
113
- - test/unit/test_helper.rb
79
+ - bin/rl-command
80
+ - bin/rl-context
81
+ - bin/rl-mediator
82
+ - bin/rl-project
83
+ - bin/rl-proxy
84
+ - bin/rl-service
85
+ - Gemfile
86
+ - Gemfile.lock
114
87
  - lib/robotlegs/generators/command_generator.rb
115
88
  - lib/robotlegs/generators/context_generator.rb
116
89
  - lib/robotlegs/generators/mediator_generator.rb
117
90
  - lib/robotlegs/generators/project_generator.rb
118
91
  - lib/robotlegs/generators/proxy_generator.rb
119
- - lib/robotlegs/generators/robotlegs_class_generator_base.rb
120
92
  - lib/robotlegs/generators/service_generator.rb
121
93
  - lib/robotlegs/generators/templates/Flex4TestRunner.mxml
122
94
  - lib/robotlegs/generators/templates/RobotlegsCommand.as
@@ -127,19 +99,20 @@ files:
127
99
  - lib/robotlegs/generators/templates/RobotlegsProxy.as
128
100
  - lib/robotlegs/generators/templates/RobotlegsRakefile.rb
129
101
  - lib/robotlegs/generators/templates/RobotlegsService.as
130
- - lib/robotlegs/version.rb
102
+ - lib/robotlegs/module.rb
131
103
  - lib/robotlegs.rb
132
- - bin/rl-command
133
- - bin/rl-context
134
- - bin/rl-mediator
135
- - bin/rl-project
136
- - bin/rl-proxy
137
- - bin/rl-service
138
- - robotlegs.gemspec
139
- - Gemfile
140
- - Gemfile.lock
141
104
  - Rakefile
142
105
  - README.mkdn
106
+ - robotlegs-1.3.0.5.pre.gem
107
+ - robotlegs.gemspec
108
+ - test/unit/command_generator_test.rb
109
+ - test/unit/context_generator_test.rb
110
+ - test/unit/mediator_generator_test.rb
111
+ - test/unit/project_generator_test.rb
112
+ - test/unit/proxy_generator_test.rb
113
+ - test/unit/service_generator_test.rb
114
+ - test/unit/test_helper.rb
115
+ - VERSION
143
116
  has_rdoc: true
144
117
  homepage: http://projectsprouts.org
145
118
  licenses: []
@@ -155,7 +128,6 @@ required_ruby_version: !ruby/object:Gem::Requirement
155
128
  requirements:
156
129
  - - ">="
157
130
  - !ruby/object:Gem::Version
158
- hash: 3
159
131
  segments:
160
132
  - 0
161
133
  version: "0"
@@ -164,18 +136,17 @@ required_rubygems_version: !ruby/object:Gem::Requirement
164
136
  requirements:
165
137
  - - ">="
166
138
  - !ruby/object:Gem::Version
167
- hash: 23
168
139
  segments:
169
140
  - 1
170
141
  - 3
171
- - 6
172
- version: 1.3.6
142
+ - 7
143
+ version: 1.3.7
173
144
  requirements: []
174
145
 
175
- rubyforge_project:
146
+ rubyforge_project: sprout-robotlegs
176
147
  rubygems_version: 1.3.7
177
148
  signing_key:
178
149
  specification_version: 3
179
- summary: Robotlegs Framework for AS3 wrapped in a Sprout::Specification for implementation into a sprout project.
150
+ summary: A library for developing Robotlegs projects with Project Sprouts
180
151
  test_files: []
181
152
 
@@ -1,24 +0,0 @@
1
- module Robotlegs
2
-
3
- class RobotlegsClassGeneratorBase < Sprout::Generator::Base
4
- ##
5
- # The path where source files should be created.
6
- add_param :src, String, { :default => 'src' }
7
- add_param :test, String, { :default => 'test' }
8
- ##
9
- # Do not create a test case for this class.
10
- add_param :no_test, Boolean
11
-
12
- def fully_qualified_class_name
13
- input
14
- end
15
-
16
- def create_test_case
17
- unless no_test
18
- generator :test_class, :input => "#{fully_qualified_class_name}Test"
19
- end
20
- end
21
-
22
- end
23
-
24
- end
@@ -1,8 +0,0 @@
1
- module Robotlegs
2
- NAME = 'robotlegs'
3
- #
4
- # Version applies directly to Robotlegs official version. To release patches to
5
- # the sprout or gem, increment the 4th number in the version sequence.
6
- VERSION = '1.3.0.4.pre'
7
- #
8
- end