Changesets can be listed by changeset number.
The Git repository is here.
- Revision:
- 13
- Log:
Initial import of Typo 2.6.0 sources from a downloaded Tarball.
Typo is a Ruby On Rails based blog engine.
- Author:
- adh
- Date:
- Sat Jul 22 22:25:02 +0100 2006
- Size:
- 5761 Bytes
1 | require 'test/unit' |
2 | require './rubypants' |
3 | |
4 | # Test EVERYTHING against SmartyPants.pl output! |
5 | |
6 | |
7 | class TestRubyPants < Test::Unit::TestCase |
8 | def assert_rp_equal(str, orig, options=[2]) |
9 | assert_equal orig, RubyPants.new(str, options).to_html |
10 | end |
11 | |
12 | def assert_verbatim(str) |
13 | assert_rp_equal str, str |
14 | end |
15 | |
16 | def test_verbatim |
17 | assert_verbatim "foo!" |
18 | assert_verbatim "<div>This is HTML</div>" |
19 | assert_verbatim "<div>This is HTML with <crap </div> tags>" |
20 | assert_verbatim <<EOF |
21 | multiline |
22 | |
23 | <b>html</b> |
24 | |
25 | code |
26 | |
27 | EOF |
28 | end |
29 | |
30 | def test_quotes |
31 | assert_rp_equal '"A first example"', '“A first example”' |
32 | assert_rp_equal '"A first "nested" example"', |
33 | '“A first “nested” example”' |
34 | |
35 | assert_rp_equal '".', '”.' |
36 | assert_rp_equal '"a', '“a' |
37 | |
38 | assert_rp_equal "'.", '’.' |
39 | assert_rp_equal "'a", '‘a' |
40 | |
41 | assert_rp_equal %{<p>He said, "'Quoted' words in a larger quote."</p>}, |
42 | "<p>He said, “‘Quoted’ words in a larger quote.”</p>" |
43 | |
44 | assert_rp_equal %{"I like the 70's"}, '“I like the 70’s”' |
45 | assert_rp_equal %{"I like the '70s"}, '“I like the ’70s”' |
46 | assert_rp_equal %{"I like the '70!"}, '“I like the ‘70!”' |
47 | |
48 | assert_rp_equal 'pre"post', 'pre”post' |
49 | assert_rp_equal 'pre "post', 'pre “post' |
50 | assert_rp_equal 'pre "post', 'pre “post' |
51 | assert_rp_equal 'pre--"post', 'pre–“post' |
52 | assert_rp_equal 'pre--"!', 'pre–”!' |
53 | |
54 | assert_rp_equal "pre'post", 'pre’post' |
55 | assert_rp_equal "pre 'post", 'pre ‘post' |
56 | assert_rp_equal "pre 'post", 'pre ‘post' |
57 | assert_rp_equal "pre--'post", 'pre–‘post' |
58 | assert_rp_equal "pre--'!", 'pre–’!' |
59 | |
60 | assert_rp_equal "<b>'</b>", "<b>‘</b>" |
61 | assert_rp_equal "foo<b>'</b>", "foo<b>’</b>" |
62 | |
63 | assert_rp_equal '<b>"</b>', "<b>“</b>" |
64 | assert_rp_equal 'foo<b>"</b>', "foo<b>”</b>" |
65 | end |
66 | |
67 | def test_dashes |
68 | assert_rp_equal "foo--bar", 'foo—bar', 1 |
69 | assert_rp_equal "foo---bar", 'foo—-bar', 1 |
70 | assert_rp_equal "foo----bar", 'foo——bar', 1 |
71 | assert_rp_equal "foo-----bar", 'foo——-bar', 1 |
72 | assert_rp_equal "--foo--bar--quux--", |
73 | '—foo—bar—quux—', 1 |
74 | |
75 | assert_rp_equal "foo--bar", 'foo–bar', 2 |
76 | assert_rp_equal "foo---bar", 'foo—bar', 2 |
77 | assert_rp_equal "foo----bar", 'foo—-bar', 2 |
78 | assert_rp_equal "foo-----bar", 'foo—–bar', 2 |
79 | assert_rp_equal "--foo--bar--quux--", |
80 | '–foo–bar–quux–', 2 |
81 | |
82 | assert_rp_equal "foo--bar", 'foo—bar', 3 |
83 | assert_rp_equal "foo---bar", 'foo–bar', 3 |
84 | assert_rp_equal "foo----bar", 'foo–-bar', 3 |
85 | assert_rp_equal "foo-----bar", 'foo–—bar', 3 |
86 | assert_rp_equal "--foo--bar--quux--", |
87 | '—foo—bar—quux—', 3 |
88 | end |
89 | |
90 | def test_ellipses |
91 | assert_rp_equal "foo..bar", 'foo..bar' |
92 | assert_rp_equal "foo...bar", 'foo…bar' |
93 | assert_rp_equal "foo....bar", 'foo….bar' |
94 | |
95 | # Nasty ones |
96 | assert_rp_equal "foo. . ..bar", 'foo….bar' |
97 | assert_rp_equal "foo. . ...bar", 'foo. . …bar' |
98 | assert_rp_equal "foo. . ....bar", 'foo. . ….bar' |
99 | end |
100 | |
101 | def test_backticks |
102 | assert_rp_equal "pre``post", 'pre“post' |
103 | assert_rp_equal "pre ``post", 'pre “post' |
104 | assert_rp_equal "pre ``post", 'pre “post' |
105 | assert_rp_equal "pre--``post", 'pre–“post' |
106 | assert_rp_equal "pre--``!", 'pre–“!' |
107 | |
108 | assert_rp_equal "pre''post", 'pre”post' |
109 | assert_rp_equal "pre ''post", 'pre ”post' |
110 | assert_rp_equal "pre ''post", 'pre ”post' |
111 | assert_rp_equal "pre--''post", 'pre–”post' |
112 | assert_rp_equal "pre--''!", 'pre–”!' |
113 | end |
114 | |
115 | def test_single_backticks |
116 | o = [:oldschool, :allbackticks] |
117 | |
118 | assert_rp_equal "`foo'", "‘foo’", o |
119 | |
120 | assert_rp_equal "pre`post", 'pre‘post', o |
121 | assert_rp_equal "pre `post", 'pre ‘post', o |
122 | assert_rp_equal "pre `post", 'pre ‘post', o |
123 | assert_rp_equal "pre--`post", 'pre–‘post', o |
124 | assert_rp_equal "pre--`!", 'pre–‘!', o |
125 | |
126 | assert_rp_equal "pre'post", 'pre’post', o |
127 | assert_rp_equal "pre 'post", 'pre ’post', o |
128 | assert_rp_equal "pre 'post", 'pre ’post', o |
129 | assert_rp_equal "pre--'post", 'pre–’post', o |
130 | assert_rp_equal "pre--'!", 'pre–’!', o |
131 | end |
132 | |
133 | def test_stupefy |
134 | o = [:stupefy] |
135 | |
136 | assert_rp_equal "<p>He said, “‘Quoted’ words " + |
137 | "in a larger quote.”</p>", |
138 | %{<p>He said, "'Quoted' words in a larger quote."</p>}, o |
139 | |
140 | assert_rp_equal "– — ‘’ “” …", |
141 | %{- -- '' "" ...}, o |
142 | |
143 | assert_rp_equal %{- -- '' "" ...}, %{- -- '' "" ...}, o |
144 | end |
145 | |
146 | def test_process_escapes |
147 | assert_rp_equal %q{foo\bar}, "foo\\bar" |
148 | assert_rp_equal %q{foo\\\bar}, "foo\bar" |
149 | assert_rp_equal %q{foo\\\\\bar}, "foo\\\bar" |
150 | assert_rp_equal %q{foo\...bar}, "foo...bar" |
151 | assert_rp_equal %q{foo\.\.\.bar}, "foo...bar" |
152 | |
153 | assert_rp_equal %q{foo\'bar}, "foo'bar" |
154 | assert_rp_equal %q{foo\"bar}, "foo"bar" |
155 | assert_rp_equal %q{foo\-bar}, "foo-bar" |
156 | assert_rp_equal %q{foo\`bar}, "foo`bar" |
157 | |
158 | assert_rp_equal %q{foo\#bar}, "foo\\#bar" |
159 | assert_rp_equal %q{foo\*bar}, "foo\\*bar" |
160 | assert_rp_equal %q{foo\&bar}, "foo\\&bar" |
161 | end |
162 | end |