HEX
Server: Apache
System: Linux sg241.singhost.net 2.6.32-896.16.1.lve1.4.51.el6.x86_64 #1 SMP Wed Jan 17 13:19:23 EST 2018 x86_64
User: honghock (909)
PHP: 8.0.30
Disabled: passthru,system,shell_exec,show_source,exec,popen,proc_open
Upload Files
File: //proc/self/root/usr/lib/ruby/site_ruby/1.8/puppet/vendor/rgen/test/output_handler_test.rb
$:.unshift File.join(File.dirname(__FILE__),"..","lib")

require 'test/unit'
require 'rgen/template_language/output_handler'

class MetamodelBuilderTest < Test::Unit::TestCase
	def test_direct_nl
		h = RGen::TemplateLanguage::OutputHandler.new
		h.mode = :direct
		h << "Test"
		h.ignoreNextNL
		h << "\nContent"
		assert_equal "TestContent", h.to_s
	end
	def test_direct_ws
		h = RGen::TemplateLanguage::OutputHandler.new
		h.mode = :direct
		h << "Test"
		h.ignoreNextWS
		h << " \n       Content"
		assert_equal "TestContent", h.to_s
	end
	def test_explicit_indent
		h = RGen::TemplateLanguage::OutputHandler.new
		h.mode = :explicit
		h.indent = 1
		h << "Start"
		h << "   \n "
		h << "Test"
		h << "      \n   \n    Content"
		assert_equal "   Start\n   Test\n   Content", h.to_s
	end
	def test_explicit_endswithws
		h = RGen::TemplateLanguage::OutputHandler.new
		h.mode = :explicit
		h.indent = 1
		h << "Start   \n\n"
		assert_equal "   Start\n", h.to_s
	end
  def test_performance
    h = RGen::TemplateLanguage::OutputHandler.new
    h.mode = :explicit
    h.indent = 1
    line = (1..50).collect{|w| "someword"}.join(" ")+"\n"
    # repeat more often to make performance differences visible
    20.times do 
      h << line
    end
  end
	def test_indent_string
		h = RGen::TemplateLanguage::OutputHandler.new(1, "\t", :explicit)
		h << "Start"
		h << "   \n "
		h << "Test"
		h << "      \n   \n    Content"
		assert_equal "\tStart\n\tTest\n\tContent", h.to_s
	end
end