class TemplateContainerTest

Constants

OUTPUT_DIR
TEMPLATES_DIR
TEST_MODEL

Public Instance Methods

test_callback_indent() click to toggle source
# File lib/puppet/vendor/rgen/test/template_language_test.rb, line 157
def test_callback_indent
  tc = RGen::TemplateLanguage::DirectoryTemplateContainer.new([MyMM, CCodeMM], OUTPUT_DIR)
  tc.load(TEMPLATES_DIR)
  assert_equal("|before callback\r\n   |in callback\r\n|after callback\r\n   |after iinc\r\n",
   tc.expand('callback_indent_test/a::caller', :for => :dummy))
end
test_define_local() click to toggle source
# File lib/puppet/vendor/rgen/test/template_language_test.rb, line 140
def test_define_local
  tc = RGen::TemplateLanguage::DirectoryTemplateContainer.new([MyMM, CCodeMM], OUTPUT_DIR)
  tc.load(TEMPLATES_DIR)
  assert_equal "Local1\r\n", tc.expand('define_local_test/test::Test', :for => :dummy)
  assert_raise StandardError do
    tc.expand('define_local_test/test::TestForbidden', :for => :dummy)
  end
end
test_evaluate() click to toggle source
# File lib/puppet/vendor/rgen/test/template_language_test.rb, line 134
def test_evaluate
  tc = RGen::TemplateLanguage::DirectoryTemplateContainer.new([MyMM, CCodeMM], OUTPUT_DIR)
  tc.load(TEMPLATES_DIR)
  assert_equal "xx1xxxx2xxxx3xxxx4xx\r\n", tc.expand('evaluate_test/test::Test', :for => :dummy)
end
test_immediate_result() click to toggle source
# File lib/puppet/vendor/rgen/test/template_language_test.rb, line 72
def test_immediate_result
  tc = RGen::TemplateLanguage::DirectoryTemplateContainer.new([MyMM, CCodeMM], OUTPUT_DIR)
  tc.load(TEMPLATES_DIR)
  expected = ""
  File.open(OUTPUT_DIR+"/expected_result2.txt","rb") {|f| expected = f.read}
  assert_equal expected, tc.expand('code/array::ArrayDefinition', :for => TEST_MODEL.sampleArray).to_s
end
test_indent_string() click to toggle source
# File lib/puppet/vendor/rgen/test/template_language_test.rb, line 80
def test_indent_string
  tc = RGen::TemplateLanguage::DirectoryTemplateContainer.new([MyMM, CCodeMM], OUTPUT_DIR)
  tc.load(TEMPLATES_DIR)
  tc.indentString = "  "  # 2 spaces instead of 3 (default)

  tc.expand('indent_string_test::IndentStringTest', :for => :dummy)
  File.open(OUTPUT_DIR+"/indentStringTestDefaultIndent.out","rb") do |f|
    assert_equal "  <- your default here\r\n", f.read
  end
  File.open(OUTPUT_DIR+"/indentStringTestTabIndent.out","rb") do |f|
    assert_equal "\t<- tab\r\n", f.read
  end
end
test_no_backslash_r() click to toggle source
# File lib/puppet/vendor/rgen/test/template_language_test.rb, line 149
def test_no_backslash_r
  tc = RGen::TemplateLanguage::DirectoryTemplateContainer.new([MyMM, CCodeMM], OUTPUT_DIR)
  tc.load(TEMPLATES_DIR)
  expected = ""
  File.open(OUTPUT_DIR+"/expected_result3.txt") {|f| expected = f.read}
  assert_equal expected, tc.expand('no_backslash_r_test::Test', :for => :dummy).to_s
end
test_no_indent() click to toggle source
# File lib/puppet/vendor/rgen/test/template_language_test.rb, line 109
def test_no_indent
  tc = RGen::TemplateLanguage::DirectoryTemplateContainer.new([MyMM, CCodeMM], OUTPUT_DIR)
  tc.load(TEMPLATES_DIR)
  assert_equal "   xxx<---\r\n   xxx<---\r\n   xxx<---\r\n   xxx<---\r\n", tc.expand('no_indent_test/test::Test', :for => :dummy)
end
test_no_indent2() click to toggle source
# File lib/puppet/vendor/rgen/test/template_language_test.rb, line 115
def test_no_indent2
  tc = RGen::TemplateLanguage::DirectoryTemplateContainer.new([MyMM, CCodeMM], OUTPUT_DIR)
  tc.load(TEMPLATES_DIR)
  assert_equal "      return xxxx;\r\n", tc.expand("no_indent_test/test2::Test", :for => :dummy)
end
test_no_indent3() click to toggle source
# File lib/puppet/vendor/rgen/test/template_language_test.rb, line 121
def test_no_indent3
  tc = RGen::TemplateLanguage::DirectoryTemplateContainer.new([MyMM, CCodeMM], OUTPUT_DIR)
  tc.load(TEMPLATES_DIR)
  assert_equal "   l1<---\r\n   l2\r\n\r\n", tc.expand("no_indent_test/test3::Test", :for => :dummy)
end
test_null_context() click to toggle source
# File lib/puppet/vendor/rgen/test/template_language_test.rb, line 93
def test_null_context
  tc = RGen::TemplateLanguage::DirectoryTemplateContainer.new([MyMM, CCodeMM], OUTPUT_DIR)
  tc.load(TEMPLATES_DIR)
  assert_raise StandardError do 
    # the template must raise an exception because it calls expand :for => nil

    tc.expand('null_context_test::NullContextTestBad', :for => :dummy)
  end
  assert_raise StandardError do 
    # the template must raise an exception because it calls expand :foreach => nil

    tc.expand('null_context_test::NullContextTestBad2', :for => :dummy)
  end
  assert_nothing_raised do
    tc.expand('null_context_test::NullContextTestOk', :for => :dummy)
  end
end
test_template_resolution() click to toggle source
# File lib/puppet/vendor/rgen/test/template_language_test.rb, line 127
def test_template_resolution
  tc = RGen::TemplateLanguage::DirectoryTemplateContainer.new([MyMM, CCodeMM], OUTPUT_DIR)
  tc.load(TEMPLATES_DIR)
  assert_equal "Sub1\r\nSub1 in sub1\r\n", tc.expand('template_resolution_test/test::Test', :for => :dummy)
  assert_equal "Sub1\r\nSub1\r\nSub1 in sub1\r\n", tc.expand('template_resolution_test/sub1::Test', :for => :dummy)
end
test_with_model() click to toggle source
# File lib/puppet/vendor/rgen/test/template_language_test.rb, line 61
def test_with_model
  tc = RGen::TemplateLanguage::DirectoryTemplateContainer.new([MyMM, CCodeMM], OUTPUT_DIR)
  tc.load(TEMPLATES_DIR)
  File.delete(OUTPUT_DIR+"/testout.txt") if File.exists? OUTPUT_DIR+"/testout.txt"
  tc.expand('root::Root', :for => TEST_MODEL, :indent => 1)
  result = expected = ""
  File.open(OUTPUT_DIR+"/testout.txt") {|f| result = f.read}
          File.open(OUTPUT_DIR+"/expected_result1.txt") {|f| expected = f.read}
  assert_equal expected, result
end