Class: TemplateContainerTest
- Defined in:
- lib/puppet/vendor/rgen/test/template_language_test.rb
Defined Under Namespace
Constant Summary collapse
- TEMPLATES_DIR =
File.dirname(__FILE__)+"/template_language_test/templates"
- OUTPUT_DIR =
File.dirname(__FILE__)+"/template_language_test"
- TEST_MODEL =
MyMM::Document.new("SomeDocument")
Instance Method Summary collapse
- #test_callback_indent ⇒ Object
- #test_define_local ⇒ Object
- #test_evaluate ⇒ Object
- #test_immediate_result ⇒ Object
- #test_indent_string ⇒ Object
- #test_no_backslash_r ⇒ Object
- #test_no_indent ⇒ Object
- #test_no_indent2 ⇒ Object
- #test_no_indent3 ⇒ Object
- #test_null_context ⇒ Object
- #test_template_resolution ⇒ Object
- #test_with_model ⇒ Object
Instance Method Details
#test_callback_indent ⇒ Object
157 158 159 160 161 162 |
# 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.('callback_indent_test/a::caller', :for => :dummy)) end |
#test_define_local ⇒ Object
140 141 142 143 144 145 146 147 |
# 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.('define_local_test/test::Test', :for => :dummy) assert_raise StandardError do tc.('define_local_test/test::TestForbidden', :for => :dummy) end end |
#test_evaluate ⇒ Object
134 135 136 137 138 |
# 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.('evaluate_test/test::Test', :for => :dummy) end |
#test_immediate_result ⇒ Object
72 73 74 75 76 77 78 |
# 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.('code/array::ArrayDefinition', :for => TEST_MODEL.sampleArray).to_s end |
#test_indent_string ⇒ Object
80 81 82 83 84 85 86 87 88 89 90 91 |
# 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.('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 ⇒ Object
149 150 151 152 153 154 155 |
# 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.('no_backslash_r_test::Test', :for => :dummy).to_s end |
#test_no_indent ⇒ Object
109 110 111 112 113 |
# 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.('no_indent_test/test::Test', :for => :dummy) end |
#test_no_indent2 ⇒ Object
115 116 117 118 119 |
# 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.("no_indent_test/test2::Test", :for => :dummy) end |
#test_no_indent3 ⇒ Object
121 122 123 124 125 |
# 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.("no_indent_test/test3::Test", :for => :dummy) end |
#test_null_context ⇒ Object
93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 |
# 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.('null_context_test::NullContextTestBad', :for => :dummy) end assert_raise StandardError do # the template must raise an exception because it calls expand :foreach => nil tc.('null_context_test::NullContextTestBad2', :for => :dummy) end assert_nothing_raised do tc.('null_context_test::NullContextTestOk', :for => :dummy) end end |
#test_template_resolution ⇒ Object
127 128 129 130 131 132 |
# 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.('template_resolution_test/test::Test', :for => :dummy) assert_equal "Sub1\r\nSub1\r\nSub1 in sub1\r\n", tc.('template_resolution_test/sub1::Test', :for => :dummy) end |
#test_with_model ⇒ Object
61 62 63 64 65 66 67 68 69 70 |
# 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.('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 |