test/test_sourcehandler_base.rb in gettalong-webgen-0.5.5.20081001 vs test/test_sourcehandler_base.rb in gettalong-webgen-0.5.5.20081010
- old
+ new
@@ -1,20 +1,49 @@
require 'test/unit'
require 'helper'
require 'webgen/tree'
require 'webgen/node'
require 'webgen/path'
-require 'webgen/sourcehandler/base'
+require 'webgen/sourcehandler'
require 'time'
class TestSourceHandlerBase < Test::Unit::TestCase
+ class TestSH; include Webgen::SourceHandler::Base; end
+
include Test::WebsiteHelper
def setup
super
@obj = Object.new
@obj.extend(Webgen::SourceHandler::Base)
+ end
+
+ def test_create_node
+ tree = Webgen::Tree.new
+ path = path_with_meta_info('/path.html')
+ count = 0
+
+ path.instance_eval { @source_path = '/path'}
+ node = @obj.create_node(tree.dummy_root, path) {|n| count +=1 }
+ assert_equal('/path', node.node_info[:src])
+ assert_equal('Object', node.node_info[:processor])
+ assert_kind_of(Time, node['modified_at'])
+ assert_equal(1, count)
+
+ other_node = @obj.create_node(tree.dummy_root, path) {|n| count +=1 }
+ assert_equal(node, other_node)
+ assert_equal(1, count)
+
+ node.flag(:reinit)
+ other_node = @obj.create_node(tree.dummy_root, path) {|n| count +=1 }
+ assert_equal(node, other_node)
+ assert_equal(2, count)
+
+ path.instance_eval { @source_path = '/other' }
+ other_node = @obj.create_node(tree.dummy_root, path) {|n| count +=1 }
+ assert_equal(node, other_node)
+ assert_equal(2, count)
end
def test_node_exists
@tree = Webgen::Tree.new
node = Webgen::Node.new(@tree.dummy_root, 'test/', 'test', {'lang' => 'de', :test => :value})