|
From: <luk...@us...> - 2006-09-05 04:45:42
|
Revision: 72
http://svn.sourceforge.net/asunit/?rev=72&view=rev
Author: lukebayes
Date: 2006-09-04 21:45:37 -0700 (Mon, 04 Sep 2006)
Log Message:
-----------
working on project creation tool
Modified Paths:
--------------
trunk/ruby/src/project.rb
trunk/ruby/src/project_test.rb
trunk/ruby/src/settings.rb
Modified: trunk/ruby/src/project.rb
===================================================================
--- trunk/ruby/src/project.rb 2006-09-05 04:19:18 UTC (rev 71)
+++ trunk/ruby/src/project.rb 2006-09-05 04:45:37 UTC (rev 72)
@@ -17,37 +17,44 @@
# -bin [binary dir name]
class Project
- attr_reader :name, :settings
-
+ attr_reader :name, :settings
+
def initialize(name, dir=nil)
@name = name;
- @settings = AsUnit::Settings.new
if(!dir.nil?)
- @dir = dir
+ puts 'changing working directory to : ' + dir
+ Dir.chdir dir
end
- content = create_dirs
- create_project_file('.asunit_' + name.downcase, content)
+
+ dirs = AsUnit::Settings.new.directories
+ content = create_dirs(dirs)
+ create_project_file('.asunit', content)
end
- def create_dirs
- create_dir(@settings.src)
- create_dir(@settings.test)
- create_dir(@settings.lib)
-
- contents = ['src=\'' + File.expand_path(@settings.src) + '\'']
- contents.push('test=\'' + File.expand_path(@settings.test) + '\'')
- contents.push('lib=\'' + File.expand_path(@settings.lib) + '\'')
+ def create_dirs(dirs)
+ contents = Array.new
+ dirs.each do |dir|
+ create_dir(dir)
+ contents.push("#{dir}=\'#{File.expand_path(dir)}\'")
+ end
+ contents
end
def create_project_file(name, contents)
open(name, 'w') do |f|
+ f.puts 'project=\'' + @name + '\''
contents.each { |i|
f.puts i
}
+ f.puts 'classpath=' + get_classpath
f.flush
end
end
+ def get_classpath
+ return '\'\''
+ end
+
def dir
if(@dir.nil?)
@dir = Dir.pwd
@@ -60,7 +67,7 @@
if(!File.exists? name)
Dir.mkdir name
end
- return File.new name
+ return File.new(name)
end
end
Modified: trunk/ruby/src/project_test.rb
===================================================================
--- trunk/ruby/src/project_test.rb 2006-09-05 04:19:18 UTC (rev 71)
+++ trunk/ruby/src/project_test.rb 2006-09-05 04:45:37 UTC (rev 72)
@@ -18,4 +18,8 @@
def test_name
assert_equal(@instance.name, @default_name)
end
+
+# def test_different_dir
+# other = AsUnit::Project.new(@default_name, Dir.getwd + '/src')
+# end
end
Modified: trunk/ruby/src/settings.rb
===================================================================
--- trunk/ruby/src/settings.rb 2006-09-05 04:19:18 UTC (rev 71)
+++ trunk/ruby/src/settings.rb 2006-09-05 04:45:37 UTC (rev 72)
@@ -1,12 +1,13 @@
module AsUnit
class Settings
- attr_accessor :src, :test, :lib
+ attr_accessor :src, :test, :template, :directories
def initialize()
+ @directories = ['src', 'test', 'templates']
@src = 'src'
@test = 'test'
- @lib = 'lib'
+ @template = 'template'
end
end
end
\ No newline at end of file
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <luk...@us...> - 2006-09-05 06:03:00
|
Revision: 73
http://svn.sourceforge.net/asunit/?rev=73&view=rev
Author: lukebayes
Date: 2006-09-04 23:02:53 -0700 (Mon, 04 Sep 2006)
Log Message:
-----------
working on erb integration
Modified Paths:
--------------
trunk/ruby/src/createclass.rb
trunk/ruby/src/createclass_test.rb
trunk/ruby/src/settings.rb
Modified: trunk/ruby/src/createclass.rb
===================================================================
--- trunk/ruby/src/createclass.rb 2006-09-05 04:45:37 UTC (rev 72)
+++ trunk/ruby/src/createclass.rb 2006-09-05 06:02:53 UTC (rev 73)
@@ -1,12 +1,58 @@
+require 'settings'
+
module AsUnit
class CreateClass
- def initialize name
+ attr_reader :classname
+ attr_accessor :extends, :visual
+
+ def initialize(name, template)
@classname = name;
+ @template = template
+ @package = nil
+ @parsed = nil
+ @extends = nil
+ @implements = nil
+ @visual = nil
end
- def full_class_name
- return @classname
+ def parsed
+ if(@parsed.nil?)
+ @parsed = ERB.new(@template).result(binding)
+ end
+ @parsed
end
+
+ def package
+ if(@package.nil?)
+ arr = classname.split('.')
+ arr.pop
+ @package = arr.join('.')
+ end
+ return @package
+ end
+
+ def extends?
+ return @extends.nil?
+ end
+
+ def implements?
+ return @implements.nil?
+ end
+
+ def implements=(interface)
+ if(@implements.nil?)
+ @implements = Array.new
+ end
+ @implements.push(interface)
+ end
+
+ def implements
+ @implements
+ end
+
+ def visual?
+ return @visual.nil?
+ end
end
end
Modified: trunk/ruby/src/createclass_test.rb
===================================================================
--- trunk/ruby/src/createclass_test.rb 2006-09-05 04:45:37 UTC (rev 72)
+++ trunk/ruby/src/createclass_test.rb 2006-09-05 06:02:53 UTC (rev 73)
@@ -1,20 +1,41 @@
require 'test/unit'
require 'createclass.rb'
+require 'erb'
class CreateClassTest < Test::Unit::TestCase
def setup
- @full_class_name = "org.asunit.SomeClass"
- @instance = AsUnit::CreateClass.new @full_class_name
+ @full_class_name = "org.somepackage.SomeClass"
+ @instance = AsUnit::CreateClass.new(@full_class_name, get_erb)
+ @instance2 = AsUnit::CreateClass.new('SomeClass', get_erb)
+ end
+
+ def teardown
+ @instance = nil
end
-
+
+ def get_erb
+ template = %q{
+ package <%= package %> {
+ class <%= @classname %><% %> {
+ import asunit.framework.TestCase
+ }
+ }
+ }
+ end
+
def test_instantiated
assert_not_nil(@instance)
end
def test_class_name
- assert(@instance.full_class_name == @full_class_name)
+ assert_equal(@instance.classname, @full_class_name)
end
+ def test_package
+ assert_equal(@instance.package, 'org.somepackage')
+ assert_equal(@instance2.package, '')
+ end
+
end
\ No newline at end of file
Modified: trunk/ruby/src/settings.rb
===================================================================
--- trunk/ruby/src/settings.rb 2006-09-05 04:45:37 UTC (rev 72)
+++ trunk/ruby/src/settings.rb 2006-09-05 06:02:53 UTC (rev 73)
@@ -4,7 +4,7 @@
attr_accessor :src, :test, :template, :directories
def initialize()
- @directories = ['src', 'test', 'templates']
+ @directories = ['src', 'test', 'templates', 'css', 'xml']
@src = 'src'
@test = 'test'
@template = 'template'
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <luk...@us...> - 2006-09-06 02:40:29
|
Revision: 77
http://svn.sourceforge.net/asunit/?rev=77&view=rev
Author: lukebayes
Date: 2006-09-05 19:40:22 -0700 (Tue, 05 Sep 2006)
Log Message:
-----------
added create class back into repository
Added Paths:
-----------
trunk/ruby/src/create_class.rb
trunk/ruby/src/create_class_test.rb
Added: trunk/ruby/src/create_class.rb
===================================================================
--- trunk/ruby/src/create_class.rb (rev 0)
+++ trunk/ruby/src/create_class.rb 2006-09-06 02:40:22 UTC (rev 77)
@@ -0,0 +1,9 @@
+
+module AsUnit
+ class CreateClass
+
+ def initialize
+ puts 'create class instantiated'
+ end
+ end
+end
\ No newline at end of file
Added: trunk/ruby/src/create_class_test.rb
===================================================================
--- trunk/ruby/src/create_class_test.rb (rev 0)
+++ trunk/ruby/src/create_class_test.rb 2006-09-06 02:40:22 UTC (rev 77)
@@ -0,0 +1,18 @@
+
+require 'test/unit'
+require 'create_class.rb'
+
+class CreateClassTest < Test::Unit::TestCase
+
+ def setup
+ @instance = AsUnit::CreateClass.new
+ end
+
+ def teardown
+ @instance = nil
+ end
+
+ def test_instantiated
+ assert(!@instance.nil?)
+ end
+end
\ No newline at end of file
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <luk...@us...> - 2006-09-06 02:46:56
|
Revision: 75
http://svn.sourceforge.net/asunit/?rev=75&view=rev
Author: lukebayes
Date: 2006-09-05 19:26:50 -0700 (Tue, 05 Sep 2006)
Log Message:
-----------
working on template system
Added Paths:
-----------
trunk/ruby/src/template_resolver.rb
trunk/ruby/src/template_resolver_test.rb
Removed Paths:
-------------
trunk/ruby/src/createclass.rb
trunk/ruby/src/createclass_test.rb
Deleted: trunk/ruby/src/createclass.rb
===================================================================
--- trunk/ruby/src/createclass.rb 2006-09-05 14:56:29 UTC (rev 74)
+++ trunk/ruby/src/createclass.rb 2006-09-06 02:26:50 UTC (rev 75)
@@ -1,58 +0,0 @@
-
-require 'settings'
-
-module AsUnit
- class CreateClass
- attr_reader :classname
- attr_accessor :extends, :visual
-
- def initialize(name, template)
- @classname = name;
- @template = template
- @package = nil
- @parsed = nil
- @extends = nil
- @implements = nil
- @visual = nil
- end
-
- def parsed
- if(@parsed.nil?)
- @parsed = ERB.new(@template).result(binding)
- end
- @parsed
- end
-
- def package
- if(@package.nil?)
- arr = classname.split('.')
- arr.pop
- @package = arr.join('.')
- end
- return @package
- end
-
- def extends?
- return @extends.nil?
- end
-
- def implements?
- return @implements.nil?
- end
-
- def implements=(interface)
- if(@implements.nil?)
- @implements = Array.new
- end
- @implements.push(interface)
- end
-
- def implements
- @implements
- end
-
- def visual?
- return @visual.nil?
- end
- end
-end
Deleted: trunk/ruby/src/createclass_test.rb
===================================================================
--- trunk/ruby/src/createclass_test.rb 2006-09-05 14:56:29 UTC (rev 74)
+++ trunk/ruby/src/createclass_test.rb 2006-09-06 02:26:50 UTC (rev 75)
@@ -1,41 +0,0 @@
-
-require 'test/unit'
-require 'createclass.rb'
-require 'erb'
-
-class CreateClassTest < Test::Unit::TestCase
-
- def setup
- @full_class_name = "org.somepackage.SomeClass"
- @instance = AsUnit::CreateClass.new(@full_class_name, get_erb)
- @instance2 = AsUnit::CreateClass.new('SomeClass', get_erb)
- end
-
- def teardown
- @instance = nil
- end
-
- def get_erb
- template = %q{
- package <%= package %> {
- class <%= @classname %><% %> {
- import asunit.framework.TestCase
- }
- }
- }
- end
-
- def test_instantiated
- assert_not_nil(@instance)
- end
-
- def test_class_name
- assert_equal(@instance.classname, @full_class_name)
- end
-
- def test_package
- assert_equal(@instance.package, 'org.somepackage')
- assert_equal(@instance2.package, '')
- end
-
-end
\ No newline at end of file
Added: trunk/ruby/src/template_resolver.rb
===================================================================
--- trunk/ruby/src/template_resolver.rb (rev 0)
+++ trunk/ruby/src/template_resolver.rb 2006-09-06 02:26:50 UTC (rev 75)
@@ -0,0 +1,61 @@
+
+require 'settings'
+require 'erb'
+
+module AsUnit
+ class TemplateResolver
+ attr_reader :template, :classname, :interfaces, :test_cases
+ attr_accessor :superclass, :visual
+
+ def initialize(name)
+ @classname = name;
+ @template = template
+ @package = nil
+ @parsed = nil
+ @superclass = nil
+ @visual = nil
+ @interfaces = Array.new
+ @test_cases = Array.new
+ end
+
+ def template=(template)
+ @template = template
+ @parsed = nil
+ end
+
+ def parse
+ return ERB.new(@template).result(binding)
+ end
+
+ def package
+ if(@package.nil?)
+ arr = classname.split('.')
+ arr.pop
+ @package = arr.join('.')
+ end
+ return @package
+ end
+
+ def add_test_case(test_case)
+ @test_cases.push(test_case)
+ @test_cases.sort!
+ end
+
+ def superclass?
+ return !@superclass.nil?
+ end
+
+ def interfaces?
+ return (@interfaces.length > 0)
+ end
+
+ def add_interface(interface)
+ @interfaces.push(interface)
+ @interfaces.sort!
+ end
+
+ def visual?
+ return @visual.nil?
+ end
+ end
+end
Added: trunk/ruby/src/template_resolver_test.rb
===================================================================
--- trunk/ruby/src/template_resolver_test.rb (rev 0)
+++ trunk/ruby/src/template_resolver_test.rb 2006-09-06 02:26:50 UTC (rev 75)
@@ -0,0 +1,89 @@
+
+require 'test/unit'
+require 'template_resolver.rb'
+
+class TemplateResolverTest < Test::Unit::TestCase
+
+ def setup
+ @full_class_name = "org.somepackage.SomeClass"
+ @instance = AsUnit::TemplateResolver.new(@full_class_name)
+ end
+
+ def teardown
+ @instance = nil
+ end
+
+ def test_instantiated
+ assert_not_nil(@instance)
+ end
+
+ def test_class_name
+ assert_equal(@instance.classname, @full_class_name)
+ end
+
+ def test_package
+ assert_equal(@instance.package, 'org.somepackage')
+ end
+
+ def test_template
+ @instance.template = 'foo'
+ result = @instance.parse
+ assert_equal(result, 'foo')
+ end
+
+ def test_parse_superclass
+ @instance.superclass = 'SomeClass'
+ @instance.template = 'foo <%= superclass %>'
+ assert_equal('foo SomeClass', @instance.parse)
+ end
+
+ def test_parse_interfaces
+ @instance.add_interface 'b-one'
+ @instance.add_interface 'a-two' # auto-sorted
+ @instance.template = 'foo <%= interfaces[0] %>'
+ assert_equal('foo a-two', @instance.parse)
+ end
+
+ def test_parse_test_case
+ @instance.add_test_case 'b-one'
+ @instance.add_test_case 'a-two' # auto-sorted
+ @instance.template = 'foo <%= test_cases[0] %>'
+ assert_equal('foo a-two', @instance.parse)
+ end
+
+ def test_visual
+ assert(!@instance.visual)
+ @instance.visual = true
+ assert(@instance.visual)
+ end
+
+ def test_add_test_case
+ assert_equal(@instance.test_cases.length, 0);
+ tc = 'asunit.framework.TestCaseTest'
+ @instance.add_test_case tc
+ assert_equal(tc, @instance.test_cases[0]);
+ tc2 = 'asunit.framework.AssertTest'
+ @instance.add_test_case tc2
+ assert_equal(tc2, @instance.test_cases[0]);
+ assert_equal(tc, @instance.test_cases[1]);
+ end
+
+ def test_interfaces
+ impl = 'asunit.framework.IControl'
+ assert(!@instance.interfaces?)
+ @instance.add_interface impl
+ assert_equal(impl, @instance.interfaces[0])
+ assert(@instance.interfaces?)
+ impl2 = 'asunit.framework.Layoutable'
+ @instance.add_interface impl2
+ assert_equal(impl, @instance.interfaces[0])
+ assert_equal(impl2, @instance.interfaces[1])
+ end
+
+ def test_superclass
+ assert(!@instance.superclass?)
+ sc = 'flash.display.DisplayObject'
+ @instance.superclass = sc
+ assert_equal(sc, @instance.superclass)
+ end
+end
\ No newline at end of file
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <luk...@us...> - 2006-09-06 03:45:22
|
Revision: 78
http://svn.sourceforge.net/asunit/?rev=78&view=rev
Author: lukebayes
Date: 2006-09-05 20:45:13 -0700 (Tue, 05 Sep 2006)
Log Message:
-----------
working on class creation, basic erb template is being resolved
Modified Paths:
--------------
trunk/ruby/src/create_class.rb
trunk/ruby/src/create_class_test.rb
trunk/ruby/src/settings.rb
trunk/ruby/src/settings_test.rb
trunk/ruby/src/template_resolver.rb
trunk/ruby/src/templates/Class.erb
Modified: trunk/ruby/src/create_class.rb
===================================================================
--- trunk/ruby/src/create_class.rb 2006-09-06 02:40:22 UTC (rev 77)
+++ trunk/ruby/src/create_class.rb 2006-09-06 03:45:13 UTC (rev 78)
@@ -1,9 +1,25 @@
+require 'template_resolver'
+
module AsUnit
- class CreateClass
+ class CreateClass
+ attr_accessor :settings, :classname, :template_name
- def initialize
- puts 'create class instantiated'
+ def initialize(name, settings, template)
+ @classname = name
+ @settings = settings
+ @template_name = template
+ @resolver = AsUnit::TemplateResolver.new @classname
end
+
+ def run
+ src = Dir.pwd + File::SEPARATOR + settings.templates + File::SEPARATOR + template_name
+ puts 'opening: ' + src
+ template = IO.read(src)
+ @resolver.template = template
+
+ puts @resolver.parse
+# file = File.new(src)
+ end
end
end
\ No newline at end of file
Modified: trunk/ruby/src/create_class_test.rb
===================================================================
--- trunk/ruby/src/create_class_test.rb 2006-09-06 02:40:22 UTC (rev 77)
+++ trunk/ruby/src/create_class_test.rb 2006-09-06 03:45:13 UTC (rev 78)
@@ -1,11 +1,15 @@
require 'test/unit'
-require 'create_class.rb'
+require 'create_class'
+require 'settings'
class CreateClassTest < Test::Unit::TestCase
- def setup
- @instance = AsUnit::CreateClass.new
+ def setup
+ @classname = 'somepackage.otherpackage.SomeClass'
+ @template_name = 'Class.erb'
+ @settings = AsUnit::Settings.new
+ @instance = AsUnit::CreateClass.new(@classname, @settings, @template_name)
end
def teardown
@@ -15,4 +19,21 @@
def test_instantiated
assert(!@instance.nil?)
end
+
+ def test_templates
+ @instance.settings = AsUnit::Settings.new
+ assert(!@instance.nil?)
+ end
+
+ def test_classname
+ assert_equal(@classname, @instance.classname)
+ end
+
+ def test_template
+ assert_equal(@template_name, @instance.template_name)
+ end
+
+ def test_run
+ @instance.run
+ end
end
\ No newline at end of file
Modified: trunk/ruby/src/settings.rb
===================================================================
--- trunk/ruby/src/settings.rb 2006-09-06 02:40:22 UTC (rev 77)
+++ trunk/ruby/src/settings.rb 2006-09-06 03:45:13 UTC (rev 78)
@@ -1,13 +1,13 @@
module AsUnit
class Settings
- attr_accessor :src, :test, :template, :directories
+ attr_accessor :src, :test, :templates, :directories
- def initialize()
+ def initialize
@directories = ['src', 'test', 'templates', 'css', 'xml']
@src = 'src'
@test = 'test'
- @template = 'template'
+ @templates = 'templates'
end
end
end
\ No newline at end of file
Modified: trunk/ruby/src/settings_test.rb
===================================================================
--- trunk/ruby/src/settings_test.rb 2006-09-06 02:40:22 UTC (rev 77)
+++ trunk/ruby/src/settings_test.rb 2006-09-06 03:45:13 UTC (rev 78)
@@ -10,5 +10,5 @@
def test_instantiated
assert_not_nil(@instance)
- end
+ end
end
\ No newline at end of file
Modified: trunk/ruby/src/template_resolver.rb
===================================================================
--- trunk/ruby/src/template_resolver.rb 2006-09-06 02:40:22 UTC (rev 77)
+++ trunk/ruby/src/template_resolver.rb 2006-09-06 03:45:13 UTC (rev 78)
@@ -4,11 +4,12 @@
module AsUnit
class TemplateResolver
- attr_reader :template, :classname, :interfaces, :test_cases
+ attr_reader :template, :fullclass, :classname, :interfaces, :test_cases
attr_accessor :superclass, :visual
- def initialize(name)
- @classname = name;
+ def initialize(fullclass)
+ @fullclass = fullclass;
+ @classname = fullclass.split('.').pop
@template = template
@package = nil
@parsed = nil
@@ -29,9 +30,12 @@
def package
if(@package.nil?)
- arr = classname.split('.')
- arr.pop
- @package = arr.join('.')
+ segments = fullclass.split('.')
+ segments.pop
+ @package = segments.join('.')
+ if(segments.length > 0)
+ @package += ' '
+ end
end
return @package
end
Modified: trunk/ruby/src/templates/Class.erb
===================================================================
--- trunk/ruby/src/templates/Class.erb 2006-09-06 02:40:22 UTC (rev 77)
+++ trunk/ruby/src/templates/Class.erb 2006-09-06 03:45:13 UTC (rev 78)
@@ -1,10 +1,10 @@
-package <%= package %> {
- import <%= if(extends?) extends %>
+package <%= package %>{
+ <% if(superclass?) %>import superclass <% end %>
- public class ClassName <%= if(extends?) %> extends <% classname end %>{
-
+ public class <%= classname %><% if(superclass?) %> extends <%= superclass %><% end %> {
+
public function <%= classname %>() {
super();
- }
+ }
}
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <luk...@us...> - 2006-09-06 04:16:04
|
Revision: 79
http://svn.sourceforge.net/asunit/?rev=79&view=rev
Author: lukebayes
Date: 2006-09-05 21:15:58 -0700 (Tue, 05 Sep 2006)
Log Message:
-----------
got modified class to create
Modified Paths:
--------------
trunk/ruby/src/create_class.rb
trunk/ruby/src/create_class_test.rb
trunk/ruby/src/settings.rb
trunk/ruby/src/template_resolver.rb
Modified: trunk/ruby/src/create_class.rb
===================================================================
--- trunk/ruby/src/create_class.rb 2006-09-06 03:45:13 UTC (rev 78)
+++ trunk/ruby/src/create_class.rb 2006-09-06 04:15:58 UTC (rev 79)
@@ -3,13 +3,12 @@
module AsUnit
class CreateClass
- attr_accessor :settings, :classname, :template_name
+ attr_accessor :settings, :template_name
def initialize(name, settings, template)
- @classname = name
@settings = settings
@template_name = template
- @resolver = AsUnit::TemplateResolver.new @classname
+ @resolver = AsUnit::TemplateResolver.new name
end
def run
@@ -17,9 +16,39 @@
puts 'opening: ' + src
template = IO.read(src)
@resolver.template = template
-
- puts @resolver.parse
-# file = File.new(src)
+ parsed = @resolver.parse
+ file = create_file(target_file(settings.src))
+ file.write(parsed)
end
+
+ def create_file(relative)
+ segments = relative.split(File::SEPARATOR)
+ file_name = segments.pop
+ current_path = ''
+ segments.each { |dir|
+ current_path << dir << File::SEPARATOR
+ if(!File.exists? current_path)
+ Dir.mkdir(current_path)
+ end
+ }
+ current_path << file_name
+ if(File.exists?(current_path))
+ raise 'Requested File Exists at: ' + Dir.pwd + File::SEPARATOR + current_path
+ else
+ file = File.new(current_path, 'w')
+ end
+ end
+
+ def target_file(setting)
+ if(@template_name == 'Class.erb')
+ puts Dir.pwd
+ return @settings.src + File::SEPARATOR + @resolver.path + @settings.file_extension
+# return get_dir(setting) + @resolver.path + @settings.file_extension
+ end
+ end
+
+ def get_dir setting
+ return Dir.pwd + File::SEPARATOR + setting + File::SEPARATOR
+ end
end
end
\ No newline at end of file
Modified: trunk/ruby/src/create_class_test.rb
===================================================================
--- trunk/ruby/src/create_class_test.rb 2006-09-06 03:45:13 UTC (rev 78)
+++ trunk/ruby/src/create_class_test.rb 2006-09-06 04:15:58 UTC (rev 79)
@@ -6,6 +6,9 @@
class CreateClassTest < Test::Unit::TestCase
def setup
+ if(File.exists? 'src')
+ File.delete 'src'
+ end
@classname = 'somepackage.otherpackage.SomeClass'
@template_name = 'Class.erb'
@settings = AsUnit::Settings.new
@@ -25,10 +28,6 @@
assert(!@instance.nil?)
end
- def test_classname
- assert_equal(@classname, @instance.classname)
- end
-
def test_template
assert_equal(@template_name, @instance.template_name)
end
Modified: trunk/ruby/src/settings.rb
===================================================================
--- trunk/ruby/src/settings.rb 2006-09-06 03:45:13 UTC (rev 78)
+++ trunk/ruby/src/settings.rb 2006-09-06 04:15:58 UTC (rev 79)
@@ -1,13 +1,16 @@
module AsUnit
class Settings
- attr_accessor :src, :test, :templates, :directories
-
+ @@FILE_EXTENSION = '.as'
+
+ attr_accessor :src, :test, :templates, :file_extension, :directories
+
def initialize
@directories = ['src', 'test', 'templates', 'css', 'xml']
@src = 'src'
@test = 'test'
@templates = 'templates'
+ @file_extension = @@FILE_EXTENSION
end
end
end
\ No newline at end of file
Modified: trunk/ruby/src/template_resolver.rb
===================================================================
--- trunk/ruby/src/template_resolver.rb 2006-09-06 03:45:13 UTC (rev 78)
+++ trunk/ruby/src/template_resolver.rb 2006-09-06 04:15:58 UTC (rev 79)
@@ -40,6 +40,10 @@
return @package
end
+ def path
+ return fullclass.split('.').join(File::SEPARATOR)
+ end
+
def add_test_case(test_case)
@test_cases.push(test_case)
@test_cases.sort!
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <luk...@us...> - 2006-09-06 05:26:45
|
Revision: 81
http://svn.sourceforge.net/asunit/?rev=81&view=rev
Author: lukebayes
Date: 2006-09-05 22:26:38 -0700 (Tue, 05 Sep 2006)
Log Message:
-----------
asunit application is collecting arguments and managing them appropriately
Modified Paths:
--------------
trunk/ruby/src/asunit.rb
trunk/ruby/src/project.rb
Modified: trunk/ruby/src/asunit.rb
===================================================================
--- trunk/ruby/src/asunit.rb 2006-09-06 04:18:05 UTC (rev 80)
+++ trunk/ruby/src/asunit.rb 2006-09-06 05:26:38 UTC (rev 81)
@@ -42,44 +42,104 @@
require 'optparse'
class Application
+ @@PROJECT_FILE_NAME = '.asunit'
+
def initialize
super
arguments = AsUnitArguments.new(ARGV)
- counter = 0
- eol =
- ARGF.each do |line|
- line.sub!(/$/, arguments[:show_ends])
- print '%6.d ' % (counter += 1) if arguments[:number_lines]
- print line
+ project_file = get_project_file Dir.pwd
+ puts 'pf dir: ' + Dir.pwd
+ puts 'pf: ' + project_file.read
+ arguments.classnames.each { |name|
+ create_class name
+ }
+ end
+
+ def get_project_file(dir)
+ if(dir == '/')
+ raise 'Project file not found, please create a new asunit project by typing "asunit -create-project ProjectName"'
+ end
+ Dir.chdir dir
+ if(File.exists? @@PROJECT_FILE_NAME)
+ return File.open(@@PROJECT_FILE_NAME, 'r')
end
+ get_project_file(File.dirname dir)
end
+
+ def create_class(name)
+ puts 'name: ' + name
+ end
end
class AsUnitArguments < Hash
+
def initialize(args)
super
- self[:show_ends] = ''
- self[:number_lines] = false
+ self[:classnames] = nil
+ self[:display_object] = false
+ self[:interfaces] = Array.new
+ self[:project_file] = nil
+ self[:superclass] = nil
opts = OptionParser.new do |opts|
- opts.banner = "Usage: #$0 [options]"
- opts.on('-E', '--show-ends [STRING]',
- 'display [STRING] at end of each line') do |string|
- self[:show_ends] = string || '$'
+ opts.banner = "Usage: #$0 [options] CLASSNAME(s)"
+
+ opts.on('-d', '--display-object', 'class created is a subclass of flash.display.DisplayObject') do
+ self[:display_object] = true
+ end
+
+ opts.on('-p', '--project-file [FILE]', 'use this project file instead of looking for the nearest one [FILE]') do |file|
+ if(file.nil?)
+ raise '-p [--project-file] argument must be followed by a relative or absolute file target"'
+ end
+ self[:project_file] = (file || '$')
end
+
+ opts.on('-i', '--add-interface [STRING]', 'add an interface to this class [STRING]') do |inf|
+ if(inf.nil?)
+ raise '-i [--add-interface] argument must be followed by a fully-qualified interface name eg: "flash.events.IEventDispatcher"'
+ end
+ self[:interfaces].push(inf || '$')
+ end
- opts.on('-n', '--number', 'number all output lines') do
- self[:number_lines] = true
+ opts.on('-s', '--superclass [STRING]', 'superclass of class being created [STRING]') do |superclass|
+ if(superclass.nil?)
+ raise '-s [--superclass] argument must be followed by a fully-qualified class name eg: "flash.display.DisplayObject"'
+ end
+ self[:superclass] = (superclass || '$')
end
opts.on_tail('-h', '--help', 'display this help and exit') do
puts opts
exit
end
+
+ if(args.length == 0)
+ puts opts
+ exit
+ end
+
opts.parse!(args)
-
+ self[:classnames] = args
+
end
end
+
+ def project_file
+ return self[:project_file]
+ end
+
+ def interfaces
+ return self[:interfaces]
+ end
+
+ def superclass
+ return self[:superclass]
+ end
+
+ def classnames
+ return self[:classnames]
+ end
end
end
Modified: trunk/ruby/src/project.rb
===================================================================
--- trunk/ruby/src/project.rb 2006-09-06 04:18:05 UTC (rev 80)
+++ trunk/ruby/src/project.rb 2006-09-06 05:26:38 UTC (rev 81)
@@ -68,7 +68,6 @@
Dir.mkdir name
end
return File.new(name)
- end
-
+ end
end
end
\ No newline at end of file
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <luk...@us...> - 2006-09-06 06:25:06
|
Revision: 83
http://svn.sourceforge.net/asunit/?rev=83&view=rev
Author: lukebayes
Date: 2006-09-05 23:24:57 -0700 (Tue, 05 Sep 2006)
Log Message:
-----------
got it kind of working for the simple case
Modified Paths:
--------------
trunk/ruby/src/asunit.rb
trunk/ruby/src/create_class.rb
Modified: trunk/ruby/src/asunit.rb
===================================================================
--- trunk/ruby/src/asunit.rb 2006-09-06 06:01:00 UTC (rev 82)
+++ trunk/ruby/src/asunit.rb 2006-09-06 06:24:57 UTC (rev 83)
@@ -1,6 +1,9 @@
#!/bin/ruby
module AsUnit
+ CLASS_TEMPLATE = 'Class.erb'
+ TEST_TEMPLATE = 'TestCase.erb'
+
# ------------------------------------------------------------------
# Rake module singleton methods.
#
@@ -46,9 +49,7 @@
class Application
@@PROJECT_FILE_NAME = '.asunit'
- @@CLASS_TEMPLATE = 'Class.erb'
- @@TEST_TEMPLATE = 'TestCase.erb'
-
+
def initialize
super
arguments = AsUnitArguments.new(ARGV)
@@ -58,10 +59,10 @@
arguments.classnames.each { |name|
if(name.ends_with? "Test")
- create_class(name, settings, @@TEST_TEMPLATE)
+ create_class(name, settings, TEST_TEMPLATE)
else
- create_class(name, settings, @@CLASS_TEMPLATE)
- create_class(name + "Test", settings, @@TEST_TEMPLATE)
+ create_class(name, settings, AsUnit::CLASS_TEMPLATE)
+ create_class(name + "Test", settings, AsUnit::TEST_TEMPLATE)
end
}
end
Modified: trunk/ruby/src/create_class.rb
===================================================================
--- trunk/ruby/src/create_class.rb 2006-09-06 06:01:00 UTC (rev 82)
+++ trunk/ruby/src/create_class.rb 2006-09-06 06:24:57 UTC (rev 83)
@@ -39,12 +39,16 @@
end
end
- def target_file(setting)
- if(@template_name == 'Class.erb')
- puts Dir.pwd
- return @settings.src + File::SEPARATOR + @resolver.path + @settings.file_extension
-# return get_dir(setting) + @resolver.path + @settings.file_extension
- end
+ def target_file(setting)
+ name = @template_name
+ result = ''
+ case name
+ when AsUnit::CLASS_TEMPLATE
+ return @settings.src + File::SEPARATOR + @resolver.path + @settings.file_extension
+ when AsUnit::TEST_TEMPLATE
+ return @settings.test + File::SEPARATOR + @resolver.path + @settings.file_extension
+ end
+ raise 'The requested template has not yet been supported at: ' + name
end
def get_dir setting
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <luk...@us...> - 2006-09-06 07:26:41
|
Revision: 84
http://svn.sourceforge.net/asunit/?rev=84&view=rev
Author: lukebayes
Date: 2006-09-06 00:26:33 -0700 (Wed, 06 Sep 2006)
Log Message:
-----------
added exception handling to support batch creation with singular failures
Modified Paths:
--------------
trunk/ruby/src/asunit.rb
trunk/ruby/src/create_class.rb
Added Paths:
-----------
trunk/ruby/src/asunit_arguments.rb
Modified: trunk/ruby/src/asunit.rb
===================================================================
--- trunk/ruby/src/asunit.rb 2006-09-06 06:24:57 UTC (rev 83)
+++ trunk/ruby/src/asunit.rb 2006-09-06 07:26:33 UTC (rev 84)
@@ -46,6 +46,7 @@
require 'optparse'
require 'settings'
require 'create_class'
+ require 'asunit_arguments'
class Application
@@PROJECT_FILE_NAME = '.asunit'
@@ -57,19 +58,41 @@
prefs = YAML.load(project_file.read)
settings = AsUnit::Settings.new(prefs)
+ results = Array.new
arguments.classnames.each { |name|
if(name.ends_with? "Test")
- create_class(name, settings, TEST_TEMPLATE)
+ begin
+ create_class(name, settings, TEST_TEMPLATE, arguments.force?)
+ rescue Exception => e
+ results.push(e)
+ end
else
- create_class(name, settings, AsUnit::CLASS_TEMPLATE)
- create_class(name + "Test", settings, AsUnit::TEST_TEMPLATE)
+ begin
+ create_class(name, settings, AsUnit::CLASS_TEMPLATE, arguments.force?)
+ rescue Exception => e
+ results.push(e)
+ end
+ begin
+ create_class(name + "Test", settings, AsUnit::TEST_TEMPLATE, arguments.force?)
+ rescue Exception => e
+ results.push(e)
+ end
end
}
+ if(results.length > 0)
+ puts results.join("\n")
+ end
end
- def create_class(name, settings, template)
- created_class = AsUnit::CreateClass.new(name, settings, template)
- created_class.run
+ def create_class(name, settings, template, force)
+ begin
+ class_creator = AsUnit::CreateClass.new(name, settings, template)
+ class_creator.run(force)
+ puts 'File Created at: ' + class_creator.final_path
+ return nil
+ rescue Exception => e
+ raise e
+ end
end
def get_project_file(dir)
@@ -84,76 +107,6 @@
end
end
- class AsUnitArguments < Hash
-
- def initialize(args)
- super
- self[:classnames] = nil
- self[:display_object] = false
- self[:interfaces] = Array.new
- self[:project_file] = nil
- self[:superclass] = nil
-
- opts = OptionParser.new do |opts|
- opts.banner = "Usage: #$0 [options] CLASSNAME(s)"
-
- opts.on('-d', '--display-object', 'class created is a subclass of flash.display.DisplayObject') do
- self[:display_object] = true
- end
-
- opts.on('-p', '--project-file [FILE]', 'use this project file instead of looking for the nearest one [FILE]') do |file|
- if(file.nil?)
- raise '-p [--project-file] argument must be followed by a relative or absolute file target"'
- end
- self[:project_file] = (file || '$')
- end
-
- opts.on('-i', '--add-interface [STRING]', 'add an interface to this class [STRING]') do |inf|
- if(inf.nil?)
- raise '-i [--add-interface] argument must be followed by a fully-qualified interface name eg: "flash.events.IEventDispatcher"'
- end
- self[:interfaces].push(inf || '$')
- end
-
- opts.on('-s', '--superclass [STRING]', 'superclass of class being created [STRING]') do |superclass|
- if(superclass.nil?)
- raise '-s [--superclass] argument must be followed by a fully-qualified class name eg: "flash.display.DisplayObject"'
- end
- self[:superclass] = (superclass || '$')
- end
-
- opts.on_tail('-h', '--help', 'display this help and exit') do
- puts opts
- exit
- end
-
- if(args.length == 0)
- puts opts
- exit
- end
-
- opts.parse!(args)
- self[:classnames] = args
-
- end
- end
-
- def project_file
- return self[:project_file]
- end
-
- def interfaces
- return self[:interfaces]
- end
-
- def superclass
- return self[:superclass]
- end
-
- def classnames
- return self[:classnames]
- end
- end
end
class String
Added: trunk/ruby/src/asunit_arguments.rb
===================================================================
--- trunk/ruby/src/asunit_arguments.rb (rev 0)
+++ trunk/ruby/src/asunit_arguments.rb 2006-09-06 07:26:33 UTC (rev 84)
@@ -0,0 +1,84 @@
+
+require 'optparse'
+
+module AsUnit
+ class AsUnitArguments < Hash
+
+ def initialize(args)
+ super
+ self[:classnames] = nil
+ self[:display_object] = false
+ self[:force] = false
+ self[:interfaces] = Array.new
+ self[:project_file] = nil
+ self[:superclass] = nil
+
+ opts = OptionParser.new do |opts|
+ opts.banner = "Usage: #$0 [options] CLASSNAME(s)"
+
+ opts.on('-d', '--display-object', 'class created is a subclass of flash.display.DisplayObject') do
+ self[:display_object] = true
+ end
+
+ opts.on('-f', '--force', 'force overwrite even if files exist') do
+ self[:force] = true
+ end
+
+ opts.on('-p', '--project-file [FILE]', 'use this project file instead of looking for the nearest one [FILE]') do |file|
+ if(file.nil?)
+ raise '-p [--project-file] argument must be followed by a relative or absolute file target"'
+ end
+ self[:project_file] = (file || '$')
+ end
+
+ opts.on('-i', '--add-interface [STRING]', 'add an interface to this class [STRING]') do |inf|
+ if(inf.nil?)
+ raise '-i [--add-interface] argument must be followed by a fully-qualified interface name eg: "flash.events.IEventDispatcher"'
+ end
+ self[:interfaces].push(inf || '$')
+ end
+
+ opts.on('-s', '--superclass [STRING]', 'superclass of class being created [STRING]') do |superclass|
+ if(superclass.nil?)
+ raise '-s [--superclass] argument must be followed by a fully-qualified class name eg: "flash.display.DisplayObject"'
+ end
+ self[:superclass] = (superclass || '$')
+ end
+
+ opts.on_tail('-h', '--help', 'display this help and exit') do
+ puts opts
+ exit
+ end
+
+ if(args.length == 0)
+ puts opts
+ exit
+ end
+
+ opts.parse!(args)
+ self[:classnames] = args
+
+ end
+ end
+
+ def project_file
+ return self[:project_file]
+ end
+
+ def interfaces
+ return self[:interfaces]
+ end
+
+ def superclass
+ return self[:superclass]
+ end
+
+ def classnames
+ return self[:classnames]
+ end
+
+ def force?
+ return self[:force]
+ end
+ end
+end
\ No newline at end of file
Modified: trunk/ruby/src/create_class.rb
===================================================================
--- trunk/ruby/src/create_class.rb 2006-09-06 06:24:57 UTC (rev 83)
+++ trunk/ruby/src/create_class.rb 2006-09-06 07:26:33 UTC (rev 84)
@@ -3,39 +3,42 @@
module AsUnit
class CreateClass
- attr_accessor :settings, :template_name
+ attr_accessor :settings, :template_name
+ attr_reader :final_path
def initialize(name, settings, template)
@settings = settings
@template_name = template
@resolver = AsUnit::TemplateResolver.new name
+ @final_path = ''
end
- def run
+ def run(force=false)
src = Dir.pwd + File::SEPARATOR + settings.templates + File::SEPARATOR + template_name
- puts 'opening: ' + src
template = IO.read(src)
@resolver.template = template
parsed = @resolver.parse
- file = create_file(target_file(settings.src))
+ file = create_file(target_file(settings.src), force)
file.write(parsed)
end
- def create_file(relative)
+ def create_file(relative, force)
segments = relative.split(File::SEPARATOR)
file_name = segments.pop
current_path = ''
segments.each { |dir|
current_path << dir << File::SEPARATOR
- if(!File.exists? current_path)
+ if(!File.exists?(current_path))
Dir.mkdir(current_path)
end
}
current_path << file_name
- if(File.exists?(current_path))
- raise 'Requested File Exists at: ' + Dir.pwd + File::SEPARATOR + current_path
+ if(!force && File.exists?(current_path))
+ raise "\nRequested File Exists at: " + Dir.pwd + File::SEPARATOR + current_path + ". \n\nUse -f option to overwrite."
else
file = File.new(current_path, 'w')
+ @final_path = current_path
+ file
end
end
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <luk...@us...> - 2006-09-06 08:11:15
|
Revision: 87
http://svn.sourceforge.net/asunit/?rev=87&view=rev
Author: lukebayes
Date: 2006-09-06 01:11:07 -0700 (Wed, 06 Sep 2006)
Log Message:
-----------
got robust template support
Modified Paths:
--------------
trunk/ruby/src/asunit.rb
trunk/ruby/src/asunit_arguments.rb
trunk/ruby/src/create_class.rb
trunk/ruby/src/template_resolver.rb
trunk/ruby/src/templates/Class.erb
Modified: trunk/ruby/src/asunit.rb
===================================================================
--- trunk/ruby/src/asunit.rb 2006-09-06 07:30:16 UTC (rev 86)
+++ trunk/ruby/src/asunit.rb 2006-09-06 08:11:07 UTC (rev 87)
@@ -62,18 +62,18 @@
arguments.classnames.each { |name|
if(name.ends_with? "Test")
begin
- create_class(name, settings, TEST_TEMPLATE, arguments.force?)
+ create_class(name, settings, TEST_TEMPLATE, arguments)
rescue Exception => e
results.push(e)
end
else
begin
- create_class(name, settings, AsUnit::CLASS_TEMPLATE, arguments.force?)
+ create_class(name, settings, AsUnit::CLASS_TEMPLATE, arguments)
rescue Exception => e
results.push(e)
end
begin
- create_class(name + "Test", settings, AsUnit::TEST_TEMPLATE, arguments.force?)
+ create_class(name + "Test", settings, AsUnit::TEST_TEMPLATE, arguments)
rescue Exception => e
results.push(e)
end
@@ -84,10 +84,10 @@
end
end
- def create_class(name, settings, template, force)
+ def create_class(name, settings, template, arguments)
begin
class_creator = AsUnit::CreateClass.new(name, settings, template)
- class_creator.run(force)
+ class_creator.run(arguments)
puts 'File Created at: ' + class_creator.final_path
return nil
rescue Exception => e
Modified: trunk/ruby/src/asunit_arguments.rb
===================================================================
--- trunk/ruby/src/asunit_arguments.rb 2006-09-06 07:30:16 UTC (rev 86)
+++ trunk/ruby/src/asunit_arguments.rb 2006-09-06 08:11:07 UTC (rev 87)
@@ -16,7 +16,7 @@
opts = OptionParser.new do |opts|
opts.banner = "Usage: #$0 [options] CLASSNAME(s)"
- opts.on('-d', '--display-object', 'class created is a subclass of flash.display.DisplayObject') do
+ opts.on('-d', '--display-object', 'class is a visual entity') do
self[:display_object] = true
end
@@ -24,13 +24,6 @@
self[:force] = true
end
- opts.on('-p', '--project-file [FILE]', 'use this project file instead of looking for the nearest one [FILE]') do |file|
- if(file.nil?)
- raise '-p [--project-file] argument must be followed by a relative or absolute file target"'
- end
- self[:project_file] = (file || '$')
- end
-
opts.on('-i', '--add-interface [STRING]', 'add an interface to this class [STRING]') do |inf|
if(inf.nil?)
raise '-i [--add-interface] argument must be followed by a fully-qualified interface name eg: "flash.events.IEventDispatcher"'
@@ -38,6 +31,13 @@
self[:interfaces].push(inf || '$')
end
+ opts.on('-p', '--project-file [FILE]', 'use provided project file [FILE]') do |file|
+ if(file.nil?)
+ raise '-p [--project-file] argument must be followed by a relative or absolute file target"'
+ end
+ self[:project_file] = (file || '$')
+ end
+
opts.on('-s', '--superclass [STRING]', 'superclass of class being created [STRING]') do |superclass|
if(superclass.nil?)
raise '-s [--superclass] argument must be followed by a fully-qualified class name eg: "flash.display.DisplayObject"'
@@ -77,6 +77,10 @@
return self[:classnames]
end
+ def display_object?
+ return self[:display_object]
+ end
+
def force?
return self[:force]
end
Modified: trunk/ruby/src/create_class.rb
===================================================================
--- trunk/ruby/src/create_class.rb 2006-09-06 07:30:16 UTC (rev 86)
+++ trunk/ruby/src/create_class.rb 2006-09-06 08:11:07 UTC (rev 87)
@@ -4,7 +4,7 @@
module AsUnit
class CreateClass
attr_accessor :settings, :template_name
- attr_reader :final_path
+ attr_reader :final_path, :resolver
def initialize(name, settings, template)
@settings = settings
@@ -13,12 +13,17 @@
@final_path = ''
end
- def run(force=false)
+ def run(args)
+ @resolver.superclass = args.superclass
+ @resolver.visual = args.display_object?
+ args.interfaces.each {|inf|
+ @resolver.add_interface(inf)
+ }
src = Dir.pwd + File::SEPARATOR + settings.templates + File::SEPARATOR + template_name
template = IO.read(src)
@resolver.template = template
parsed = @resolver.parse
- file = create_file(target_file(settings.src), force)
+ file = create_file(target_file(settings.src), args.force?)
file.write(parsed)
end
Modified: trunk/ruby/src/template_resolver.rb
===================================================================
--- trunk/ruby/src/template_resolver.rb 2006-09-06 07:30:16 UTC (rev 86)
+++ trunk/ruby/src/template_resolver.rb 2006-09-06 08:11:07 UTC (rev 87)
@@ -4,7 +4,7 @@
module AsUnit
class TemplateResolver
- attr_reader :template, :fullclass, :classname, :interfaces, :test_cases
+ attr_reader :template, :fullclass, :interfaces, :test_cases
attr_accessor :superclass, :visual
def initialize(fullclass)
@@ -28,16 +28,20 @@
return ERB.new(@template).result(binding)
end
- def package
- if(@package.nil?)
+ def classname(fullname=@classname)
+ return fullname.split('.').pop
+ end
+
+ def package(pkg=@package)
+ if(pkg.nil?)
segments = fullclass.split('.')
segments.pop
- @package = segments.join('.')
+ pkg = segments.join('.')
if(segments.length > 0)
- @package += ' '
+ pkg += ' '
end
end
- return @package
+ return pkg
end
def path
@@ -65,5 +69,42 @@
def visual?
return @visual.nil?
end
+
+ def superclass_decl
+ if(superclass?)
+ return ' extends ' + superclass.split('.').pop
+ else
+ return ''
+ end
+ end
+
+ def import_statements
+ imports = Array.new
+ if(superclass?)
+ imports.push(import_statement(superclass))
+ end
+ if(interfaces?)
+ interfaces.each {|inf|
+ imports.push(import_statement(inf))
+ }
+ end
+ imports.sort!
+ return imports.join("\n")
+ end
+
+ def import_statement(target)
+ return "\timport " + target + ";"
+ end
+
+ def interfaces_decl
+ if(!interfaces?)
+ return ''
+ end
+ infs = Array.new
+ interfaces.each {|inf|
+ infs.push(classname(inf))
+ }
+ return " implements " + infs.join(", ")
+ end
end
end
Modified: trunk/ruby/src/templates/Class.erb
===================================================================
--- trunk/ruby/src/templates/Class.erb 2006-09-06 07:30:16 UTC (rev 86)
+++ trunk/ruby/src/templates/Class.erb 2006-09-06 08:11:07 UTC (rev 87)
@@ -1,8 +1,10 @@
+
package <%= package %>{
- <% if(superclass?) %>import superclass <% end %>
+
+<%= import_statements %>
+
+ public class <%= classname %><%= superclass_decl %><%= interfaces_decl %> {
- public class <%= classname %><% if(superclass?) %> extends <%= superclass %><% end %> {
-
public function <%= classname %>() {
super();
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <luk...@us...> - 2006-09-06 15:23:28
|
Revision: 88
http://svn.sourceforge.net/asunit/?rev=88&view=rev
Author: lukebayes
Date: 2006-09-06 08:23:22 -0700 (Wed, 06 Sep 2006)
Log Message:
-----------
worked visual entities in the test case
Modified Paths:
--------------
trunk/ruby/src/create_class.rb
trunk/ruby/src/template_resolver.rb
trunk/ruby/src/templates/Class.erb
trunk/ruby/src/templates/TestCase.erb
Modified: trunk/ruby/src/create_class.rb
===================================================================
--- trunk/ruby/src/create_class.rb 2006-09-06 08:11:07 UTC (rev 87)
+++ trunk/ruby/src/create_class.rb 2006-09-06 15:23:22 UTC (rev 88)
@@ -15,7 +15,7 @@
def run(args)
@resolver.superclass = args.superclass
- @resolver.visual = args.display_object?
+ @resolver.display_object = args.display_object?
args.interfaces.each {|inf|
@resolver.add_interface(inf)
}
Modified: trunk/ruby/src/template_resolver.rb
===================================================================
--- trunk/ruby/src/template_resolver.rb 2006-09-06 08:11:07 UTC (rev 87)
+++ trunk/ruby/src/template_resolver.rb 2006-09-06 15:23:22 UTC (rev 88)
@@ -5,7 +5,7 @@
module AsUnit
class TemplateResolver
attr_reader :template, :fullclass, :interfaces, :test_cases
- attr_accessor :superclass, :visual
+ attr_accessor :superclass, :display_object
def initialize(fullclass)
@fullclass = fullclass;
@@ -14,7 +14,7 @@
@package = nil
@parsed = nil
@superclass = nil
- @visual = nil
+ @display_object = false
@interfaces = Array.new
@test_cases = Array.new
end
@@ -52,6 +52,10 @@
@test_cases.push(test_case)
@test_cases.sort!
end
+
+ def display_object?
+ return @display_object
+ end
def superclass?
return !@superclass.nil?
@@ -66,10 +70,6 @@
@interfaces.sort!
end
- def visual?
- return @visual.nil?
- end
-
def superclass_decl
if(superclass?)
return ' extends ' + superclass.split('.').pop
@@ -78,7 +78,7 @@
end
end
- def import_statements
+ def import_statements
imports = Array.new
if(superclass?)
imports.push(import_statement(superclass))
@@ -88,8 +88,11 @@
imports.push(import_statement(inf))
}
end
+ if(imports.length == 0)
+ return ''
+ end
imports.sort!
- return imports.join("\n")
+ return "\n" + imports.join("\n") + "\n"
end
def import_statement(target)
Modified: trunk/ruby/src/templates/Class.erb
===================================================================
--- trunk/ruby/src/templates/Class.erb 2006-09-06 08:11:07 UTC (rev 87)
+++ trunk/ruby/src/templates/Class.erb 2006-09-06 15:23:22 UTC (rev 88)
@@ -1,8 +1,6 @@
package <%= package %>{
-
<%= import_statements %>
-
public class <%= classname %><%= superclass_decl %><%= interfaces_decl %> {
public function <%= classname %>() {
Modified: trunk/ruby/src/templates/TestCase.erb
===================================================================
--- trunk/ruby/src/templates/TestCase.erb 2006-09-06 08:11:07 UTC (rev 87)
+++ trunk/ruby/src/templates/TestCase.erb 2006-09-06 15:23:22 UTC (rev 88)
@@ -10,17 +10,15 @@
protected override function setUp():void {
super.setUp();
- instance = new <%= classname %>();
- <% if visual? %>
- addChild(instance);
- <% end %>
+ instance = new <%= classname %>();<%
+ if display_object? %>
+ addChild(instance);<% end %>
}
protected override function tearDown():void {
- super.tearDown();
- <% if visual? %>
- removeChild(instance);
- <% end %>
+ super.tearDown();<%
+ if display_object? %>
+ removeChild(instance);<% end %>
instance = null;
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <luk...@us...> - 2006-09-06 15:30:31
|
Revision: 89
http://svn.sourceforge.net/asunit/?rev=89&view=rev
Author: lukebayes
Date: 2006-09-06 08:30:26 -0700 (Wed, 06 Sep 2006)
Log Message:
-----------
extracted application feattures to asunit file
Modified Paths:
--------------
trunk/ruby/src/asunit.rb
Added Paths:
-----------
trunk/ruby/src/asunit
Added: trunk/ruby/src/asunit
===================================================================
--- trunk/ruby/src/asunit (rev 0)
+++ trunk/ruby/src/asunit 2006-09-06 15:30:26 UTC (rev 89)
@@ -0,0 +1,53 @@
+#!/bin/ruby
+
+module AsUnit
+ # ------------------------------------------------------------------
+ # COPIED FROM RAKE! Rake module singleton methods.
+ #
+ class << self
+ # Current Rake Application
+ def application
+ @application ||= AsUnit::Application.new
+ end
+
+ # Set the current Rake application object.
+ def application=(app)
+ @application = app
+ end
+
+ # Return the original directory where the Rake application was
+ # started.
+ def original_dir
+ application.original_dir
+ end
+
+ ####################################################################
+ # Mixin for creating easily cloned objects.
+ #
+ module Cloneable
+ # Clone an object by making a new object and setting all the
+ # instance variables to the same values.
+ def clone
+ sibling = self.class.new
+ instance_variables.each do |ivar|
+ value = self.instance_variable_get(ivar)
+ sibling.instance_variable_set(ivar, value.rake_dup)
+ end
+ sibling
+ end
+ alias dup clone
+ end
+ end
+end
+
+class String
+ def ends_with? str
+ return false
+ end
+end
+
+require 'asunit.rb'
+
+if __FILE__ == $0 then
+ AsUnit::Application.new
+end
Modified: trunk/ruby/src/asunit.rb
===================================================================
--- trunk/ruby/src/asunit.rb 2006-09-06 15:23:22 UTC (rev 88)
+++ trunk/ruby/src/asunit.rb 2006-09-06 15:30:26 UTC (rev 89)
@@ -5,44 +5,6 @@
TEST_TEMPLATE = 'TestCase.erb'
PROJECT_FILE_NAME = '.asunit'
- # ------------------------------------------------------------------
- # COPIED FROM RAKE! Rake module singleton methods.
- #
- class << self
- # Current Rake Application
- def application
- @application ||= AsUnit::Application.new
- end
-
- # Set the current Rake application object.
- def application=(app)
- @application = app
- end
-
- # Return the original directory where the Rake application was
- # started.
- def original_dir
- application.original_dir
- end
-
- ####################################################################
- # Mixin for creating easily cloned objects.
- #
- module Cloneable
- # Clone an object by making a new object and setting all the
- # instance variables to the same values.
- def clone
- sibling = self.class.new
- instance_variables.each do |ivar|
- value = self.instance_variable_get(ivar)
- sibling.instance_variable_set(ivar, value.rake_dup)
- end
- sibling
- end
- alias dup clone
- end
- end
-
require 'yaml'
require 'optparse'
require 'settings'
@@ -105,16 +67,5 @@
end
get_project_file(File.dirname(dir))
end
- end
-
+ end
end
-
-class String
- def ends_with? str
- return false
- end
-end
-
-if __FILE__ == $0 then
- AsUnit::Application.new
-end
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|