|
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.
|