commonmarker 0.19.0 → 0.21.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.
Potentially problematic release.
This version of commonmarker might be problematic. Click here for more details.
- checksums.yaml +5 -5
- data/README.md +2 -3
- data/Rakefile +16 -4
- data/bin/commonmarker +82 -44
- data/commonmarker.gemspec +9 -12
- data/ext/commonmarker/blocks.c +89 -29
- data/ext/commonmarker/buffer.c +0 -1
- data/ext/commonmarker/chunk.h +0 -1
- data/ext/commonmarker/cmark-gfm-core-extensions.h +24 -1
- data/ext/commonmarker/cmark-gfm.h +14 -8
- data/ext/commonmarker/cmark-gfm_version.h +2 -2
- data/ext/commonmarker/commonmark.c +9 -4
- data/ext/commonmarker/commonmarker.c +120 -78
- data/ext/commonmarker/html.c +4 -4
- data/ext/commonmarker/inlines.c +21 -14
- data/ext/commonmarker/iterator.h +0 -1
- data/ext/commonmarker/map.h +0 -1
- data/ext/commonmarker/node.h +2 -0
- data/ext/commonmarker/parser.h +2 -1
- data/ext/commonmarker/render.c +16 -14
- data/ext/commonmarker/render.h +0 -1
- data/ext/commonmarker/scanners.c +777 -951
- data/ext/commonmarker/scanners.h +0 -2
- data/ext/commonmarker/table.c +52 -13
- data/ext/commonmarker/tasklist.c +34 -13
- data/lib/commonmarker.rb +5 -4
- data/lib/commonmarker/config.rb +5 -4
- data/lib/commonmarker/node.rb +1 -1
- data/lib/commonmarker/node/inspect.rb +12 -12
- data/lib/commonmarker/renderer.rb +7 -7
- data/lib/commonmarker/renderer/html_renderer.rb +22 -35
- data/lib/commonmarker/version.rb +1 -1
- data/test/benchmark.rb +1 -5
- data/test/fixtures/strong.md +1 -0
- data/test/fixtures/table.md +10 -0
- data/test/test_attributes.rb +3 -3
- data/test/test_commands.rb +31 -0
- data/test/test_commonmark.rb +11 -11
- data/test/test_encoding.rb +1 -2
- data/test/test_extensions.rb +40 -52
- data/test/test_footnotes.rb +9 -9
- data/test/test_gc.rb +2 -0
- data/test/test_helper.rb +15 -8
- data/test/test_maliciousness.rb +192 -190
- data/test/test_node.rb +10 -12
- data/test/test_options.rb +15 -15
- data/test/test_pathological_inputs.rb +2 -2
- data/test/test_plaintext.rb +21 -21
- data/test/test_renderer.rb +9 -9
- data/test/test_spec.rb +3 -2
- data/test/test_tasklists.rb +22 -6
- metadata +51 -46
data/test/test_node.rb
CHANGED
@@ -12,7 +12,7 @@ class TestNode < Minitest::Test
|
|
12
12
|
@doc.walk do |node|
|
13
13
|
nodes << node.type
|
14
14
|
end
|
15
|
-
assert_equal [
|
15
|
+
assert_equal %i[document paragraph text emph text text], nodes
|
16
16
|
end
|
17
17
|
|
18
18
|
def test_each
|
@@ -20,29 +20,29 @@ class TestNode < Minitest::Test
|
|
20
20
|
@doc.first_child.each do |node|
|
21
21
|
nodes << node.type
|
22
22
|
end
|
23
|
-
assert_equal [
|
23
|
+
assert_equal %i[text emph text], nodes
|
24
24
|
end
|
25
25
|
|
26
26
|
def test_deprecated_each_child
|
27
27
|
nodes = []
|
28
|
-
|
28
|
+
_, err = capture_io do
|
29
29
|
@doc.first_child.each_child do |node|
|
30
30
|
nodes << node.type
|
31
31
|
end
|
32
32
|
end
|
33
|
-
assert_equal [
|
34
|
-
assert_match
|
33
|
+
assert_equal %i[text emph text], nodes
|
34
|
+
assert_match(/`each_child` is deprecated/, err)
|
35
35
|
end
|
36
36
|
|
37
37
|
def test_select
|
38
38
|
nodes = @doc.first_child.select { |node| node.type == :text }
|
39
39
|
assert_equal CommonMarker::Node, nodes.first.class
|
40
|
-
assert_equal [
|
40
|
+
assert_equal %i[text text], nodes.map(&:type)
|
41
41
|
end
|
42
42
|
|
43
43
|
def test_map
|
44
44
|
nodes = @doc.first_child.map(&:type)
|
45
|
-
assert_equal [
|
45
|
+
assert_equal %i[text emph text], nodes
|
46
46
|
end
|
47
47
|
|
48
48
|
def test_insert_illegal
|
@@ -63,9 +63,7 @@ class TestNode < Minitest::Test
|
|
63
63
|
|
64
64
|
def test_walk_and_set_string_content
|
65
65
|
@doc.walk do |node|
|
66
|
-
if node.type == :text && node.string_content == 'there'
|
67
|
-
node.string_content = 'world'
|
68
|
-
end
|
66
|
+
node.string_content = 'world' if node.type == :text && node.string_content == 'there'
|
69
67
|
end
|
70
68
|
result = HtmlRenderer.new.render(@doc)
|
71
69
|
assert_equal "<p>Hi <em>world</em>, I am mostly text!</p>\n", result
|
@@ -82,10 +80,10 @@ class TestNode < Minitest::Test
|
|
82
80
|
end
|
83
81
|
|
84
82
|
def test_inspect
|
85
|
-
assert_match
|
83
|
+
assert_match(/#<CommonMarker::Node\(document\):/, @doc.inspect)
|
86
84
|
end
|
87
85
|
|
88
86
|
def test_pretty_print
|
89
|
-
assert_match
|
87
|
+
assert_match(/#<CommonMarker::Node\(document\):/, PP.pp(@doc, +''))
|
90
88
|
end
|
91
89
|
end
|
data/test/test_options.rb
CHANGED
@@ -4,34 +4,34 @@ require 'test_helper'
|
|
4
4
|
|
5
5
|
class TestExtensions < Minitest::Test
|
6
6
|
def test_full_info_string
|
7
|
-
md =
|
8
|
-
```ruby
|
9
|
-
module Foo
|
10
|
-
```
|
7
|
+
md = <<~MD
|
8
|
+
```ruby
|
9
|
+
module Foo
|
10
|
+
```
|
11
11
|
MD
|
12
12
|
|
13
13
|
CommonMarker.render_html(md, :FULL_INFO_STRING).tap do |out|
|
14
|
-
assert_includes out,
|
14
|
+
assert_includes out, '<pre><code class="language-ruby">'
|
15
15
|
end
|
16
16
|
|
17
|
-
md =
|
18
|
-
```ruby my info string
|
19
|
-
module Foo
|
20
|
-
```
|
17
|
+
md = <<~MD
|
18
|
+
```ruby my info string
|
19
|
+
module Foo
|
20
|
+
```
|
21
21
|
MD
|
22
22
|
|
23
23
|
CommonMarker.render_html(md, :FULL_INFO_STRING).tap do |out|
|
24
|
-
assert_includes out,
|
24
|
+
assert_includes out, '<pre><code class="language-ruby" data-meta="my info string">'
|
25
25
|
end
|
26
26
|
|
27
|
-
md =
|
28
|
-
```ruby my \x00 string
|
29
|
-
module Foo
|
30
|
-
```
|
27
|
+
md = <<~MD
|
28
|
+
```ruby my \x00 string
|
29
|
+
module Foo
|
30
|
+
```
|
31
31
|
MD
|
32
32
|
|
33
33
|
CommonMarker.render_html(md, :FULL_INFO_STRING).tap do |out|
|
34
|
-
assert_includes out, %
|
34
|
+
assert_includes out, %(<pre><code class="language-ruby" data-meta="my � string">)
|
35
35
|
end
|
36
36
|
end
|
37
37
|
end
|
@@ -3,8 +3,8 @@
|
|
3
3
|
require 'test_helper'
|
4
4
|
require 'minitest/benchmark' if ENV['BENCH']
|
5
5
|
|
6
|
-
def markdown(
|
7
|
-
CommonMarker.render_doc(
|
6
|
+
def markdown(str)
|
7
|
+
CommonMarker.render_doc(str).to_html
|
8
8
|
end
|
9
9
|
|
10
10
|
# list of pairs consisting of input and a regex that must match the output.
|
data/test/test_plaintext.rb
CHANGED
@@ -4,19 +4,19 @@ require 'test_helper'
|
|
4
4
|
|
5
5
|
class TestPlaintext < Minitest::Test
|
6
6
|
def setup
|
7
|
-
@markdown =
|
8
|
-
Hi *there*!
|
7
|
+
@markdown = <<~MD
|
8
|
+
Hi *there*!
|
9
9
|
|
10
|
-
1. I am a numeric list.
|
11
|
-
2. I continue the list.
|
12
|
-
* Suddenly, an unordered list!
|
13
|
-
* What fun!
|
10
|
+
1. I am a numeric list.
|
11
|
+
2. I continue the list.
|
12
|
+
* Suddenly, an unordered list!
|
13
|
+
* What fun!
|
14
14
|
|
15
|
-
Okay, _enough_.
|
15
|
+
Okay, _enough_.
|
16
16
|
|
17
|
-
| a | b |
|
18
|
-
| --- | --- |
|
19
|
-
| c | d |
|
17
|
+
| a | b |
|
18
|
+
| --- | --- |
|
19
|
+
| c | d |
|
20
20
|
MD
|
21
21
|
end
|
22
22
|
|
@@ -27,20 +27,20 @@ Okay, _enough_.
|
|
27
27
|
def test_to_commonmark
|
28
28
|
compare = render_doc(@markdown).to_plaintext
|
29
29
|
|
30
|
-
assert_equal
|
31
|
-
Hi there!
|
30
|
+
assert_equal <<~PLAINTEXT, compare
|
31
|
+
Hi there!
|
32
32
|
|
33
|
-
1. I am a numeric list.
|
34
|
-
2. I continue the list.
|
33
|
+
1. I am a numeric list.
|
34
|
+
2. I continue the list.
|
35
35
|
|
36
|
-
|
37
|
-
|
36
|
+
- Suddenly, an unordered list!
|
37
|
+
- What fun!
|
38
38
|
|
39
|
-
Okay, enough.
|
39
|
+
Okay, enough.
|
40
40
|
|
41
|
-
| a | b |
|
42
|
-
| --- | --- |
|
43
|
-
| c | d |
|
44
|
-
|
41
|
+
| a | b |
|
42
|
+
| --- | --- |
|
43
|
+
| c | d |
|
44
|
+
PLAINTEXT
|
45
45
|
end
|
46
46
|
end
|
data/test/test_renderer.rb
CHANGED
@@ -14,16 +14,16 @@ class TestRenderer < Minitest::Test
|
|
14
14
|
end
|
15
15
|
|
16
16
|
def test_multiple_tables
|
17
|
-
content =
|
18
|
-
| Input | Expected | Actual |
|
19
|
-
| ----------- | ---------------- | --------- |
|
20
|
-
| One | Two | Three |
|
17
|
+
content = <<~DOC
|
18
|
+
| Input | Expected | Actual |
|
19
|
+
| ----------- | ---------------- | --------- |
|
20
|
+
| One | Two | Three |
|
21
21
|
|
22
|
-
| Header | Row | Example |
|
23
|
-
| :------: | ---: | :------ |
|
24
|
-
| Foo | Bar | Baz |
|
25
|
-
|
26
|
-
doc = CommonMarker.render_doc(content, :DEFAULT, [
|
22
|
+
| Header | Row | Example |
|
23
|
+
| :------: | ---: | :------ |
|
24
|
+
| Foo | Bar | Baz |
|
25
|
+
DOC
|
26
|
+
doc = CommonMarker.render_doc(content, :DEFAULT, %i[autolink table tagfilter])
|
27
27
|
results = CommonMarker::HtmlRenderer.new.render(doc)
|
28
28
|
assert_equal 2, results.scan(/<tbody>/).size
|
29
29
|
end
|
data/test/test_spec.rb
CHANGED
@@ -8,6 +8,7 @@ class TestSpec < Minitest::Test
|
|
8
8
|
|
9
9
|
spec.each do |testcase|
|
10
10
|
next if testcase[:extensions].include?(:disabled)
|
11
|
+
|
11
12
|
doc = CommonMarker.render_doc(testcase[:markdown], :DEFAULT, testcase[:extensions])
|
12
13
|
|
13
14
|
define_method("test_to_html_example_#{testcase[:example]}") do
|
@@ -21,8 +22,8 @@ class TestSpec < Minitest::Test
|
|
21
22
|
end
|
22
23
|
|
23
24
|
define_method("test_sourcepos_example_#{testcase[:example]}") do
|
24
|
-
lhs = doc.to_html([
|
25
|
-
rhs = HtmlRenderer.new(options: [
|
25
|
+
lhs = doc.to_html(%i[UNSAFE SOURCEPOS], testcase[:extensions]).rstrip
|
26
|
+
rhs = HtmlRenderer.new(options: %i[UNSAFE SOURCEPOS], extensions: testcase[:extensions]).render(doc).rstrip
|
26
27
|
assert_equal lhs, rhs, testcase[:markdown]
|
27
28
|
end
|
28
29
|
end
|
data/test/test_tasklists.rb
CHANGED
@@ -7,13 +7,13 @@ class TestTasklists < Minitest::Test
|
|
7
7
|
text = <<-MD
|
8
8
|
- [x] Add task list
|
9
9
|
- [ ] Define task list
|
10
|
-
MD
|
10
|
+
MD
|
11
11
|
@doc = CommonMarker.render_doc(text, :DEFAULT, %i[tasklist])
|
12
|
-
@expected =
|
13
|
-
<ul>
|
14
|
-
<li><input type="checkbox" checked="" disabled="" /> Add task list</li>
|
15
|
-
<li><input type="checkbox" disabled="" /> Define task list</li>
|
16
|
-
</ul>
|
12
|
+
@expected = <<~HTML
|
13
|
+
<ul>
|
14
|
+
<li><input type="checkbox" checked="" disabled="" /> Add task list</li>
|
15
|
+
<li><input type="checkbox" disabled="" /> Define task list</li>
|
16
|
+
</ul>
|
17
17
|
HTML
|
18
18
|
end
|
19
19
|
|
@@ -24,4 +24,20 @@ MD
|
|
24
24
|
def test_html_renderer
|
25
25
|
assert_equal @expected, CommonMarker::HtmlRenderer.new.render(@doc)
|
26
26
|
end
|
27
|
+
|
28
|
+
def test_tasklist_state
|
29
|
+
list = @doc.first_child
|
30
|
+
assert_equal 'checked', list.first_child.tasklist_state
|
31
|
+
assert list.first_child.tasklist_item_checked?
|
32
|
+
assert_equal 'unchecked', list.first_child.next.tasklist_state
|
33
|
+
refute list.first_child.next.tasklist_item_checked?
|
34
|
+
end
|
35
|
+
|
36
|
+
def test_set_tasklist_state
|
37
|
+
list = @doc.first_child
|
38
|
+
list.first_child.tasklist_item_checked = false
|
39
|
+
refute list.first_child.tasklist_item_checked?
|
40
|
+
list.first_child.next.tasklist_item_checked = true
|
41
|
+
assert list.first_child.next.tasklist_item_checked?
|
42
|
+
end
|
27
43
|
end
|
metadata
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: commonmarker
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.21.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Garen Torikian
|
8
8
|
- Ashe Connor
|
9
|
-
autorequire:
|
9
|
+
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2021-01-21 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: ruby-enum
|
@@ -26,63 +26,63 @@ dependencies:
|
|
26
26
|
- !ruby/object:Gem::Version
|
27
27
|
version: '0.5'
|
28
28
|
- !ruby/object:Gem::Dependency
|
29
|
-
name:
|
29
|
+
name: awesome_print
|
30
30
|
requirement: !ruby/object:Gem::Requirement
|
31
31
|
requirements:
|
32
|
-
- - "
|
32
|
+
- - ">="
|
33
33
|
- !ruby/object:Gem::Version
|
34
|
-
version: '
|
34
|
+
version: '0'
|
35
35
|
type: :development
|
36
36
|
prerelease: false
|
37
37
|
version_requirements: !ruby/object:Gem::Requirement
|
38
38
|
requirements:
|
39
|
-
- - "
|
39
|
+
- - ">="
|
40
40
|
- !ruby/object:Gem::Version
|
41
|
-
version: '
|
41
|
+
version: '0'
|
42
42
|
- !ruby/object:Gem::Dependency
|
43
|
-
name:
|
43
|
+
name: json
|
44
44
|
requirement: !ruby/object:Gem::Requirement
|
45
45
|
requirements:
|
46
46
|
- - "~>"
|
47
47
|
- !ruby/object:Gem::Version
|
48
|
-
version: '
|
48
|
+
version: '2.3'
|
49
49
|
type: :development
|
50
50
|
prerelease: false
|
51
51
|
version_requirements: !ruby/object:Gem::Requirement
|
52
52
|
requirements:
|
53
53
|
- - "~>"
|
54
54
|
- !ruby/object:Gem::Version
|
55
|
-
version: '
|
55
|
+
version: '2.3'
|
56
56
|
- !ruby/object:Gem::Dependency
|
57
|
-
name:
|
57
|
+
name: minitest
|
58
58
|
requirement: !ruby/object:Gem::Requirement
|
59
59
|
requirements:
|
60
60
|
- - "~>"
|
61
61
|
- !ruby/object:Gem::Version
|
62
|
-
version: '
|
62
|
+
version: '5.6'
|
63
63
|
type: :development
|
64
64
|
prerelease: false
|
65
65
|
version_requirements: !ruby/object:Gem::Requirement
|
66
66
|
requirements:
|
67
67
|
- - "~>"
|
68
68
|
- !ruby/object:Gem::Version
|
69
|
-
version: '
|
69
|
+
version: '5.6'
|
70
70
|
- !ruby/object:Gem::Dependency
|
71
|
-
name:
|
71
|
+
name: minitest-focus
|
72
72
|
requirement: !ruby/object:Gem::Requirement
|
73
73
|
requirements:
|
74
74
|
- - "~>"
|
75
75
|
- !ruby/object:Gem::Version
|
76
|
-
version: 1.
|
76
|
+
version: '1.1'
|
77
77
|
type: :development
|
78
78
|
prerelease: false
|
79
79
|
version_requirements: !ruby/object:Gem::Requirement
|
80
80
|
requirements:
|
81
81
|
- - "~>"
|
82
82
|
- !ruby/object:Gem::Version
|
83
|
-
version: 1.
|
83
|
+
version: '1.1'
|
84
84
|
- !ruby/object:Gem::Dependency
|
85
|
-
name:
|
85
|
+
name: rake
|
86
86
|
requirement: !ruby/object:Gem::Requirement
|
87
87
|
requirements:
|
88
88
|
- - ">="
|
@@ -96,33 +96,33 @@ dependencies:
|
|
96
96
|
- !ruby/object:Gem::Version
|
97
97
|
version: '0'
|
98
98
|
- !ruby/object:Gem::Dependency
|
99
|
-
name: rake
|
99
|
+
name: rake-compiler
|
100
100
|
requirement: !ruby/object:Gem::Requirement
|
101
101
|
requirements:
|
102
|
-
- - "
|
102
|
+
- - "~>"
|
103
103
|
- !ruby/object:Gem::Version
|
104
|
-
version: '0'
|
104
|
+
version: '0.9'
|
105
105
|
type: :development
|
106
106
|
prerelease: false
|
107
107
|
version_requirements: !ruby/object:Gem::Requirement
|
108
108
|
requirements:
|
109
|
-
- - "
|
109
|
+
- - "~>"
|
110
110
|
- !ruby/object:Gem::Version
|
111
|
-
version: '0'
|
111
|
+
version: '0.9'
|
112
112
|
- !ruby/object:Gem::Dependency
|
113
113
|
name: rdoc
|
114
114
|
requirement: !ruby/object:Gem::Requirement
|
115
115
|
requirements:
|
116
116
|
- - "~>"
|
117
117
|
- !ruby/object:Gem::Version
|
118
|
-
version: '
|
118
|
+
version: '6.2'
|
119
119
|
type: :development
|
120
120
|
prerelease: false
|
121
121
|
version_requirements: !ruby/object:Gem::Requirement
|
122
122
|
requirements:
|
123
123
|
- - "~>"
|
124
124
|
- !ruby/object:Gem::Version
|
125
|
-
version: '
|
125
|
+
version: '6.2'
|
126
126
|
- !ruby/object:Gem::Dependency
|
127
127
|
name: rubocop
|
128
128
|
requirement: !ruby/object:Gem::Requirement
|
@@ -153,7 +153,7 @@ dependencies:
|
|
153
153
|
version: '0'
|
154
154
|
description: A fast, safe, extensible parser for CommonMark. This wraps the official
|
155
155
|
libcmark library.
|
156
|
-
email:
|
156
|
+
email:
|
157
157
|
executables:
|
158
158
|
- commonmarker
|
159
159
|
extensions:
|
@@ -246,8 +246,11 @@ files:
|
|
246
246
|
- test/benchmark.rb
|
247
247
|
- test/fixtures/curly.md
|
248
248
|
- test/fixtures/dingus.md
|
249
|
+
- test/fixtures/strong.md
|
250
|
+
- test/fixtures/table.md
|
249
251
|
- test/test_attributes.rb
|
250
252
|
- test/test_basics.rb
|
253
|
+
- test/test_commands.rb
|
251
254
|
- test/test_commonmark.rb
|
252
255
|
- test/test_doc.rb
|
253
256
|
- test/test_encoding.rb
|
@@ -269,7 +272,7 @@ homepage: https://github.com/gjtorikian/commonmarker
|
|
269
272
|
licenses:
|
270
273
|
- MIT
|
271
274
|
metadata: {}
|
272
|
-
post_install_message:
|
275
|
+
post_install_message:
|
273
276
|
rdoc_options:
|
274
277
|
- "-x"
|
275
278
|
- ext/commonmarker/cmark/.*
|
@@ -280,38 +283,40 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
280
283
|
requirements:
|
281
284
|
- - ">="
|
282
285
|
- !ruby/object:Gem::Version
|
283
|
-
version:
|
286
|
+
version: '0'
|
284
287
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
285
288
|
requirements:
|
286
289
|
- - ">="
|
287
290
|
- !ruby/object:Gem::Version
|
288
291
|
version: '0'
|
289
292
|
requirements: []
|
290
|
-
|
291
|
-
|
292
|
-
signing_key:
|
293
|
+
rubygems_version: 3.1.4
|
294
|
+
signing_key:
|
293
295
|
specification_version: 4
|
294
296
|
summary: CommonMark parser and renderer. Written in C, wrapped in Ruby.
|
295
297
|
test_files:
|
296
|
-
- test/benchmark.rb
|
297
|
-
- test/fixtures/curly.md
|
298
|
-
- test/fixtures/dingus.md
|
299
298
|
- test/test_attributes.rb
|
300
|
-
- test/
|
301
|
-
- test/test_commonmark.rb
|
299
|
+
- test/test_linebreaks.rb
|
302
300
|
- test/test_doc.rb
|
301
|
+
- test/test_plaintext.rb
|
302
|
+
- test/test_pathological_inputs.rb
|
303
|
+
- test/test_node.rb
|
304
|
+
- test/test_maliciousness.rb
|
305
|
+
- test/test_commands.rb
|
306
|
+
- test/test_tasklists.rb
|
307
|
+
- test/test_commonmark.rb
|
303
308
|
- test/test_encoding.rb
|
304
|
-
- test/
|
309
|
+
- test/test_smartpunct.rb
|
310
|
+
- test/test_spec.rb
|
305
311
|
- test/test_footnotes.rb
|
306
|
-
- test/
|
312
|
+
- test/test_extensions.rb
|
313
|
+
- test/fixtures/dingus.md
|
314
|
+
- test/fixtures/strong.md
|
315
|
+
- test/fixtures/table.md
|
316
|
+
- test/fixtures/curly.md
|
307
317
|
- test/test_helper.rb
|
308
|
-
- test/test_linebreaks.rb
|
309
|
-
- test/test_maliciousness.rb
|
310
|
-
- test/test_node.rb
|
311
318
|
- test/test_options.rb
|
312
|
-
- test/
|
313
|
-
- test/
|
319
|
+
- test/benchmark.rb
|
320
|
+
- test/test_basics.rb
|
314
321
|
- test/test_renderer.rb
|
315
|
-
- test/
|
316
|
-
- test/test_spec.rb
|
317
|
-
- test/test_tasklists.rb
|
322
|
+
- test/test_gc.rb
|