diff options
author | makoto kuwata <kwa@kuwata-lab.com> | 2006-03-06 13:01:28 +0000 |
---|---|---|
committer | makoto kuwata <kwa@kuwata-lab.com> | 2006-03-06 13:01:28 +0000 |
commit | 2481e29aa76b99f8a5236f16c67be73646522223 (patch) | |
tree | f939f9ad9d6404c9e45ba0cf5c3e162d58fbbd22 /test | |
parent | a7d3f7d264a782203fd784b488d3f8ca79a959ae (diff) | |
download | erubis-2481e29aa76b99f8a5236f16c67be73646522223.tar.gz |
- [enhance] '<%# ... %>' support
- [update] users-guide updated
- [enhance] new command-line option '-x' : script source removing the last '_out' line
- [release] 1.1.0 and 1.1.1
Diffstat (limited to 'test')
-rw-r--r-- | test/assert-diff.rb | 44 | ||||
-rw-r--r-- | test/assert-text-equal.rb | 45 | ||||
-rw-r--r-- | test/test-bin.rb | 12 | ||||
-rw-r--r-- | test/test-erubis.rb | 40 |
4 files changed, 91 insertions, 50 deletions
diff --git a/test/assert-diff.rb b/test/assert-diff.rb deleted file mode 100644 index 9cc5b85..0000000 --- a/test/assert-diff.rb +++ /dev/null @@ -1,44 +0,0 @@ -### -### $Rev$ -### $Release$ -### $Copyright$ -### - -require 'test/unit' -require 'tempfile' - -module Test - module Unit - class TestCase - def assert_equal_with_diff(expected, actual, message=nil, diffopt='-u', flag_cut=true) - if expected == actual - assert(true) - return - end - - if expected[-1] != ?\n || actual[-1] != ?\n - expected += "\n" - actual += "\n" - end - begin - expfile = Tempfile.new(".expected.") - expfile.write(expected); expfile.flush() - actfile = Tempfile.new(".actual.") - actfile.write(actual); actfile.flush() - diff = `diff #{diffopt} #{expfile.path} #{actfile.path}` - ensure - expfile.close(true) if expfile - actfile.close(true) if actfile - end - - # cut 1st & 2nd lines - message = (flag_cut ? diff.gsub(/\A.*\n.*\n/, '') : diff) unless message - #raise Test::Unit::AssertionFailedError.new(message) - assert_block(message) { false } # or assert(false, message) - end - #def assert_equal(expected, actual, message=nil) - # return assert_equal_with_diff(expected, actual, message) - #end - end - end -end diff --git a/test/assert-text-equal.rb b/test/assert-text-equal.rb new file mode 100644 index 0000000..b3e5749 --- /dev/null +++ b/test/assert-text-equal.rb @@ -0,0 +1,45 @@ +### +### $Rev$ +### $Release$ +### $Copyright$ +### + +require 'test/unit' +require 'tempfile' + + +module Test + module Unit + class TestCase + + def assert_text_equal(expected, actual, message=nil, diffopt='-u', flag_cut=true) + if expected == actual + assert(true) + return + end + if expected[-1] != ?\n || actual[-1] != ?\n + expected += "\n" + actual += "\n" + end + begin + expfile = Tempfile.new(".expected.") + expfile.write(expected); expfile.flush() + actfile = Tempfile.new(".actual.") + actfile.write(actual); actfile.flush() + diff = `diff #{diffopt} #{expfile.path} #{actfile.path}` + ensure + expfile.close(true) if expfile + actfile.close(true) if actfile + end + # cut 1st & 2nd lines + message = (flag_cut ? diff.gsub(/\A.*\n.*\n/, '') : diff) unless message + #raise Test::Unit::AssertionFailedError.new(message) + assert_block(message) { false } # or assert(false, message) + end + + alias assert_equal_with_diff assert_text_equal # for compatibility + alias assert_text_equals assert_text_equal # for typo + + end + end +end diff --git a/test/test-bin.rb b/test/test-bin.rb index 523e729..8bef42c 100644 --- a/test/test-bin.rb +++ b/test/test-bin.rb @@ -20,7 +20,7 @@ end require 'test/unit' #require 'test/unit/ui/console/testrunner' -require 'assert-diff' +require 'assert-text-equal' require 'yaml' require 'tempfile' @@ -69,7 +69,7 @@ END ensure File.unlink(@filename) if @filename && test(?f, @filename) end - assert_equal_with_diff(@expected, output) + assert_text_equal(@expected, output) end @@ -97,6 +97,14 @@ END end + def test_source2 + @input = INPUT + @expected = SRC.sub(/^_out\s*\z/, '') + @options = '-x' + _test() + end + + def test_pattern1 @input = INPUT.gsub(/<%/, '<!--%').gsub(/%>/, '%-->') @expected = OUTPUT diff --git a/test/test-erubis.rb b/test/test-erubis.rb index e1c1713..71d518d 100644 --- a/test/test-erubis.rb +++ b/test/test-erubis.rb @@ -11,7 +11,7 @@ $: << libdir require 'test/unit' #require 'test/unit/ui/console/testrunner' -require 'assert-diff' +require 'assert-text-equal' require 'yaml' require 'stringio' @@ -64,7 +64,7 @@ class ErubisTest < Test::Unit::TestCase File.unlink(filename) if test(?f, filename) end end - assert_equal_with_diff(src, eruby.src) + assert_text_equal(src, eruby.src) return if testopt == 'skip_output' @@ -73,7 +73,7 @@ class ErubisTest < Test::Unit::TestCase if testopt != 'stdout' actual = eruby.evaluate(context) - assert_equal_with_diff(output, actual) + assert_text_equal(output, actual) else begin orig = $stdout @@ -83,7 +83,7 @@ class ErubisTest < Test::Unit::TestCase $stdout = orig if orig end assert_nil(actual) - assert_equal_with_diff(output, stringio.string) + assert_text_equal(output, stringio.string) end end @@ -234,6 +234,38 @@ output: | </ul> ## --- +name: ignore1 +input: | + <ul> + <%# i = 0 %> + <% for item in list %> + <%# + i += 1 + color = i % 2 == 0 ? '#FFCCCC' : '#CCCCFF' + %> + <li> <%#= i %> : <%= item %> </li> + <% end %> + </ul> +src: | + _out = ''; _out << "<ul>\n" + + for item in list + + + + + _out << " <li> "; ; _out << " : "; _out << ( item ).to_s; _out << " </li>\n" + end + _out << "</ul>\n" + _out +output: | + <ul> + <li> : <aaa> </li> + <li> : b&b </li> + <li> : "ccc" </li> + </ul> +## +--- name: xml1 class: XmlEruby input: | |