From ca22e59c3848f527ecddec1c70281c883e7a57e5 Mon Sep 17 00:00:00 2001 From: Alexey Verkhovsky Date: Tue, 18 Jan 2005 22:32:50 +0000 Subject: [PATCH] [BREAKS BUILD] Corrected and refactored revision_test.rb Same story as with uri_test.rb; this test was skipped by Rake, because there was a syntax error in it. Now there is no syntax error, but there is a failing test instead (introduced by changeset:48) --- test/unit/revision_test.rb | 158 ++++++++++++++++--------------------- 1 file changed, 66 insertions(+), 92 deletions(-) diff --git a/test/unit/revision_test.rb b/test/unit/revision_test.rb index 7a29ed36..2ce24f04 100755 --- a/test/unit/revision_test.rb +++ b/test/unit/revision_test.rb @@ -4,7 +4,8 @@ require File.dirname(__FILE__) + '/../test_helper' require 'web' require 'revision' -class WebStub < Web; +class WebStub < Web + def initialize(); end attr_accessor :markup def pages() PagesStub.new end def safe_mode() false end @@ -20,58 +21,16 @@ end class RevisionTest < Test::Unit::TestCase def setup - @page = PageStub.new @web = WebStub.new - @page.web = @web - @web.markup = :textile + @page = PageStub.new + @page.web = @web + @revision = Revision.new(@page, 1, 'HisWay would be MyWay in kinda ThatWay in HisWay though MyWay \\OverThere -- ' + 'see SmartEngine in that SmartEngineGUI', Time.local(2004, 4, 4, 16, 50), 'DavidHeinemeierHansson') - - @revision_with_auto_links = Revision.new(@page, 1, - "http://www.loudthinking.com/ points to ThatWay from david@loudthinking.com", - Time.local(2004, 4, 4, 16, 50), 'DavidHeinemeierHansson') - - @revision_with_aliased_links = Revision.new(@page, 1, - 'Would a [[SmartEngine|clever motor]] go by any other name?', - Time.local(2004, 4, 4, 16, 50), 'MarkReid') - - @revision_with_wiki_word_in_em = Revision.new(@page, 1, '_should we go ThatWay or ThisWay _', - Time.local(2004, 4, 4, 16, 50), 'MarkReid') - - @revision_with_pre_blocks = Revision.new(@page, 1, - 'A class SmartEngine end would not mark up
CodeBlocks
', - Time.local(2004, 4, 4, 16, 50), 'MarkReid') - - @revision_with_wikiword_in_tag = Revision.new(@page, 1, - 'That is some Stylish Emphasis', - Time.local(2004, 4, 4, 16, 50), 'MarkReid') - - @revision_with_autolink_in_parentheses = Revision.new( - @page, 1, 'The W3C body (http://www.w3c.org) sets web standards', - Time.local(2004, 4, 4, 16, 50), 'MarkReid') - - @revision_with_link_in_parentheses = Revision.new( - @page, 1, - 'Instiki is a "Wiki Clone":http://www.c2.com/cgi/wiki?WikiWikiClones ' + - '("What is a wiki?":http://wiki.org/wiki.cgi?WhatIsWiki) that\'s so easy to setup', - Time.local(2004, 4, 4, 16, 50), 'MarkReid' - ) - - @revision_with_image_link = Revision.new(@page, 1, - 'This !http://hobix.com/sample.jpg! is a Textile image link.', - Time.local(2004, 4, 4, 16, 50), 'MarkReid') - - @revision_with_nowiki_text = Revision.new(@page, 1, - 'Do not mark up [[this text]] or http://www.thislink.com.', - Time.local(2004, 4, 4, 16, 50), 'MarkReid') - - @revision_with_bracketted_wiki_word = Revision.new(@page, 1, - 'This is a WikiWord and a tricky name [[Sperberg-McQueen]].', - Time.local(2004, 4, 4, 16, 50), 'MarkReid') end def test_wiki_words @@ -101,27 +60,24 @@ class RevisionTest < Test::Unit::TestCase def test_bluecloth @web.markup = :markdown - @revision = Revision.new(@page, 1, "My Headline\n===========\n\n that SmartEngineGUI", - Time.local(2004, 4, 4, 16, 50), 'DavidHeinemeierHansson') + assert_markup_parsed_as( + %{

My Headline

\n\n

that } + + %{Smart Engine GUI?

}, + "My Headline\n===========\n\n that SmartEngineGUI") - @revision_with_code_block = Revision.new(@page, 1, - [ 'This is a code block:', + code_block = [ + 'This is a code block:', '', ' def a_method(arg)', ' return ThatWay', '', - 'Nice!'].join("\n"), - Time.local(2004, 4, 4, 16, 50), - 'MarkReid' - ) + 'Nice!' + ].join("\n") - assert_equal %{

My Headline

\n\n

that } + - %{Smart Engine GUI?

}, - @revision.display_content - - assert_equal %{

This is a code block:

\n\n
def a_method(arg)\n} +
+	assert_markup_parsed_as(
+	    %{

This is a code block:

\n\n
def a_method(arg)\n} +
 	    %{return ThatWay\n
\n\n

Nice!

}, - @revision_with_code_block.display_content + code_block) end def test_rdoc @@ -130,65 +86,81 @@ class RevisionTest < Test::Unit::TestCase @revision = Revision.new(@page, 1, '+hello+ that SmartEngineGUI', Time.local(2004, 4, 4, 16, 50), 'DavidHeinemeierHansson') - assert_equal "hello that Smart Engine GUI' + + assert_equal "hello that Smart Engine GUI" + "?\n\n", @revision.display_content end def test_content_with_auto_links - assert_equal '

http://www.loudthinking.com/ ' + + assert_markup_parsed_as( + '

http://www.loudthinking.com/ ' + 'points to That Way from ' + 'david@loudthinking.com

', - @revision_with_auto_links.display_content + 'http://www.loudthinking.com/ points to ThatWay from david@loudthinking.com') + end def test_content_with_aliased_links - assert_equal '

Would a clever motor' + - ' go by any other name?

', @revision_with_aliased_links.display_content + assert_markup_parsed_as( + '

Would a clever motor' + + ' go by any other name?

', + 'Would a [[SmartEngine|clever motor]] go by any other name?') end def test_content_with_wikiword_in_em - assert_equal '

should we go ' + + assert_markup_parsed_as( + '

should we go ' + 'That Way or This Way?' + - '

', @revision_with_wiki_word_in_em.display_content + '

', + '_should we go ThatWay or ThisWay _') end def test_content_with_wikiword_in_tag - assert_equal '

That is some Stylish Emphasis

', - @revision_with_wikiword_in_tag.display_content + assert_markup_parsed_as( + '

That is some Stylish Emphasis

', + 'That is some Stylish Emphasis') end def test_content_with_pre_blocks - assert_equal 'A class SmartEngine end would not mark up
CodeBlocks
', - @revision_with_pre_blocks.display_content + assert_markup_parsed_as( + 'A class SmartEngine end would not mark up
CodeBlocks
', + 'A class SmartEngine end would not mark up
CodeBlocks
') end def test_content_with_autolink_in_parentheses - assert_equal '

The W3C body (' + + assert_markup_parsed_as( + '

The W3C body (' + 'http://www.w3c.org) sets web standards

', - @revision_with_autolink_in_parentheses.display_content + 'The W3C body (http://www.w3c.org) sets web standards') end def test_content_with_link_in_parentheses - assert_equal '

Instiki is a Wiki Clone' + + assert_markup_parsed_as( + '

Instiki is a Wiki Clone' + ' (What is a wiki?) that’s ' + - 'so easy to setup

', @revision_with_link_in_parentheses.display_content + 'so easy to setup

', + 'Instiki is a "Wiki Clone":http://www.c2.com/cgi/wiki?WikiWikiClones ' + + '("What is a wiki?":http://wiki.org/wiki.cgi?WhatIsWiki) that\'s so easy to setup') end def test_content_with_image_link - assert_equal '

This is a Textile image ' + - 'link.

', @revision_with_image_link.display_content + assert_markup_parsed_as( + '

This is a Textile image link.

', + 'This !http://hobix.com/sample.jpg! is a Textile image link.') end def test_content_with_nowiki_text - assert_equal '

Do not mark up [[this text]] or http://www.thislink.com.

', - @revision_with_nowiki_text.display_content + assert_markup_parsed_as( + '

Do not mark up [[this text]] or http://www.thislink.com.

', + 'Do not mark up [[this text]] ' + + 'or http://www.thislink.com.') end def test_content_with_bracketted_wiki_word @web.brackets_only = true - assert_equal '

This is a WikiWord and a tricky name ' + + assert_markup_parsed_as( + '

This is a WikiWord and a tricky name ' + 'Sperberg-McQueen?.

', - @revision_with_bracketted_wiki_word.display_content + 'This is a WikiWord and a tricky name [[Sperberg-McQueen]].') end def test_content_for_export @@ -228,21 +200,23 @@ class RevisionTest < Test::Unit::TestCase end def test_revisions_diff - page = PageStub.new - web = WebStub.new - web.markup = :textile - page.web = web - page.revisions = [ 0 ] - page.revisions << Revision.new(page, 1, 'What a blue and lovely morning', - Time.local(2004, 4, 4, 16, 50), 'DavidHeinemeierHansson') + @page.revisions = [ + Revision.new(@page, 0, 'What a blue and lovely morning', + Time.local(2004, 4, 4, 16, 50), 'DavidHeinemeierHansson'), + Revision.new(@page, 1, 'What a red and lovely morning today', + Time.local(2004, 4, 4, 16, 50), 'DavidHeinemeierHansson') + ] - page.revisions << Revision.new(page, 2, 'What a red and lovely morning today', - Time.local(2004, 4, 4, 16, 50), 'DavidHeinemeierHansson') - assert_equal "

What a blue red " + "and lovely morningmorning " + - "today

", page.revisions.last.display_diff + "today

", @page.revisions.last.display_diff + end + + + def assert_markup_parsed_as(expected_output, input) + revision = Revision.new(@page, 1, input, Time.local(2004, 4, 4, 16, 50), 'AnAuthor') + assert_equal expected_output, revision.display_content, 'Textile output not as expected' end end