redcarpet 3.3.4 → 3.5.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -8,27 +8,27 @@ class SmartyHTMLTest < Redcarpet::TestCase
8
8
 
9
9
  def test_that_smartyhtml_converts_single_quotes
10
10
  markdown = render("They're not for sale.")
11
- assert_equal "<p>They&rsquo;re not for sale.</p>\n", markdown
11
+ assert_equal "<p>They&rsquo;re not for sale.</p>", markdown
12
12
  end
13
13
 
14
14
  def test_that_smartyhtml_converts_double_quotes
15
15
  rd = render(%("Quoted text"))
16
- assert_equal %(<p>&ldquo;Quoted text&rdquo;</p>\n), rd
16
+ assert_equal %(<p>&ldquo;Quoted text&rdquo;</p>), rd
17
17
  end
18
18
 
19
19
  def test_that_smartyhtml_converts_double_hyphen
20
20
  rd = render("double hyphen -- ndash")
21
- assert_equal "<p>double hyphen &ndash; ndash</p>\n", rd
21
+ assert_equal "<p>double hyphen &ndash; ndash</p>", rd
22
22
  end
23
23
 
24
24
  def test_that_smartyhtml_converts_triple_hyphen
25
25
  rd = render("triple hyphen --- mdash")
26
- assert_equal "<p>triple hyphen &mdash; mdash</p>\n", rd
26
+ assert_equal "<p>triple hyphen &mdash; mdash</p>", rd
27
27
  end
28
28
 
29
29
  def test_that_smartyhtml_ignores_double_hyphen_in_code
30
30
  rd = render("double hyphen in `--option`")
31
- assert_equal "<p>double hyphen in <code>--option</code></p>\n", rd
31
+ assert_equal "<p>double hyphen in <code>--option</code></p>", rd
32
32
  end
33
33
 
34
34
  def test_that_smartyhtml_ignores_pre
@@ -42,4 +42,10 @@ class SmartyHTMLTest < Redcarpet::TestCase
42
42
  expected = "It&#39;s a test of &quot;code&quot;"
43
43
  assert rd.include?(expected), "\"#{rd}\" should contain \"#{expected}\""
44
44
  end
45
+
46
+ def test_that_smartyhtml_ignores_links_for_single_quotes
47
+ output = render("[John](link)'s cat")
48
+ expected = %(<p><a href="link">John</a>&rsquo;s cat</p>)
49
+ assert_equal expected, output
50
+ end
45
51
  end
@@ -50,4 +50,9 @@ class SmartyPantsTest < Redcarpet::TestCase
50
50
  rd = @pants.render('I am 1/4... of the way to 1/4/2000')
51
51
  assert_equal "I am &frac14;&hellip; of the way to 1/4/2000", rd
52
52
  end
53
+
54
+ def test_that_smart_converts_multiple_single_quotes
55
+ rd = @pants.render(%(<p>'First' and 'second' and 'third'</p>))
56
+ assert_equal %(<p>&lsquo;First&rsquo; and &lsquo;second&rsquo; and &lsquo;third&rsquo;</p>), rd
57
+ end
53
58
  end
@@ -10,21 +10,21 @@ class StripDownRender < Redcarpet::TestCase
10
10
  markdown = "# Foo bar"
11
11
  output = render(markdown)
12
12
 
13
- assert_equal "Foo bar\n", output
13
+ assert_equal "Foo bar", output
14
14
  end
15
15
 
16
16
  def test_code_blocks
17
17
  markdown = "\tclass Foo\n\tend"
18
18
  output = render(markdown)
19
19
 
20
- assert_equal "class Foo\nend\n", output
20
+ assert_equal "class Foo\nend", output
21
21
  end
22
22
 
23
23
  def test_images
24
24
  markdown = "Look at this ![picture](http://example.org/picture.png)\n" \
25
25
  "And this: ![](http://example.org/image.jpg)"
26
26
  expected = "Look at this picture http://example.org/picture.png\n" \
27
- "And this: http://example.org/image.jpg\n"
27
+ "And this: http://example.org/image.jpg"
28
28
  output = render(markdown)
29
29
 
30
30
  assert_equal expected, output
@@ -32,7 +32,7 @@ class StripDownRender < Redcarpet::TestCase
32
32
 
33
33
  def test_links
34
34
  markdown = "Here's an [example](https://github.com)"
35
- expected = "Here's an example (https://github.com)\n"
35
+ expected = "Here's an example (https://github.com)"
36
36
  output = render(markdown)
37
37
 
38
38
  assert_equal expected, output
@@ -45,7 +45,7 @@ class StripDownRender < Redcarpet::TestCase
45
45
  "| col 2 is | centered | $12 |"
46
46
  expected = "Left-Aligned\tCentre Aligned\tRight Aligned\t\n" \
47
47
  "col 3 is\tsome wordy text\t$1600\t\n" \
48
- "col 2 is\tcentered\t$12\t\n"
48
+ "col 2 is\tcentered\t$12\t"
49
49
  output = render(markdown, with: [:tables])
50
50
 
51
51
  assert_equal expected, output
@@ -53,9 +53,17 @@ class StripDownRender < Redcarpet::TestCase
53
53
 
54
54
  def test_highlight
55
55
  markdown = "==Hello world!=="
56
- expected = "Hello world!\n"
56
+ expected = "Hello world!"
57
57
  output = render(markdown, with: [:highlight])
58
58
 
59
59
  assert_equal expected, output
60
60
  end
61
+
62
+ def test_with_quote_option_enabled
63
+ markdown = %(A common idiom is "Hello world")
64
+ expected = %(A common idiom is Hello world)
65
+ output = render(markdown, with: [:quote])
66
+
67
+ assert_equal expected, output
68
+ end
61
69
  end
data/test/test_helper.rb CHANGED
@@ -28,7 +28,7 @@ class Redcarpet::TestCase < Test::Unit::TestCase
28
28
 
29
29
  parser = Redcarpet::Markdown.new(render, options)
30
30
 
31
- parser.render(markdown)
31
+ parser.render(markdown).chomp
32
32
  end
33
33
 
34
34
  private
@@ -36,4 +36,12 @@ class Redcarpet::TestCase < Test::Unit::TestCase
36
36
  def renderer
37
37
  @renderer ||= Redcarpet::Render::HTML
38
38
  end
39
+
40
+ # Imported from Active Support
41
+ class ::String
42
+ def strip_heredoc
43
+ indent = scan(/^ *(?=\S)/).min.size || 0
44
+ gsub(/^[ \t]{#{indent}}/, '')
45
+ end
46
+ end
39
47
  end
metadata CHANGED
@@ -1,44 +1,58 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: redcarpet
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.3.4
4
+ version: 3.5.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Natacha Porté
8
8
  - Vicent Martí
9
- autorequire:
9
+ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2015-12-25 00:00:00.000000000 Z
12
+ date: 2020-12-15 00:00:00.000000000 Z
13
13
  dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: rake
16
+ requirement: !ruby/object:Gem::Requirement
17
+ requirements:
18
+ - - "~>"
19
+ - !ruby/object:Gem::Version
20
+ version: 12.2.1
21
+ type: :development
22
+ prerelease: false
23
+ version_requirements: !ruby/object:Gem::Requirement
24
+ requirements:
25
+ - - "~>"
26
+ - !ruby/object:Gem::Version
27
+ version: 12.2.1
14
28
  - !ruby/object:Gem::Dependency
15
29
  name: rake-compiler
16
30
  requirement: !ruby/object:Gem::Requirement
17
31
  requirements:
18
32
  - - "~>"
19
33
  - !ruby/object:Gem::Version
20
- version: 0.9.5
34
+ version: 1.0.3
21
35
  type: :development
22
36
  prerelease: false
23
37
  version_requirements: !ruby/object:Gem::Requirement
24
38
  requirements:
25
39
  - - "~>"
26
40
  - !ruby/object:Gem::Version
27
- version: 0.9.5
41
+ version: 1.0.3
28
42
  - !ruby/object:Gem::Dependency
29
43
  name: test-unit
30
44
  requirement: !ruby/object:Gem::Requirement
31
45
  requirements:
32
46
  - - "~>"
33
47
  - !ruby/object:Gem::Version
34
- version: 3.1.3
48
+ version: 3.2.3
35
49
  type: :development
36
50
  prerelease: false
37
51
  version_requirements: !ruby/object:Gem::Requirement
38
52
  requirements:
39
53
  - - "~>"
40
54
  - !ruby/object:Gem::Version
41
- version: 3.1.3
55
+ version: 3.2.3
42
56
  description: A fast, safe and extensible Markdown to (X)HTML parser
43
57
  email: vicent@github.com
44
58
  executables:
@@ -97,7 +111,7 @@ homepage: http://github.com/vmg/redcarpet
97
111
  licenses:
98
112
  - MIT
99
113
  metadata: {}
100
- post_install_message:
114
+ post_install_message:
101
115
  rdoc_options: []
102
116
  require_paths:
103
117
  - lib
@@ -112,9 +126,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
112
126
  - !ruby/object:Gem::Version
113
127
  version: '0'
114
128
  requirements: []
115
- rubyforge_project:
116
- rubygems_version: 2.2.2
117
- signing_key:
129
+ rubygems_version: 3.1.4
130
+ signing_key:
118
131
  specification_version: 4
119
132
  summary: Markdown that smells nice
120
133
  test_files: