redcarpet 3.3.4 → 3.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -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: