metanorma-standoc 1.5.3 → 1.6.0
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.
- checksums.yaml +4 -4
- data/.github/workflows/macos.yml +4 -9
- data/.github/workflows/ubuntu.yml +0 -4
- data/.github/workflows/windows.yml +2 -12
- data/lib/asciidoctor/standoc/base.rb +6 -1
- data/lib/asciidoctor/standoc/basicdoc.rng +4 -11
- data/lib/asciidoctor/standoc/cleanup.rb +30 -12
- data/lib/asciidoctor/standoc/cleanup_ref.rb +2 -3
- data/lib/asciidoctor/standoc/front_contributor.rb +10 -2
- data/lib/asciidoctor/standoc/inline.rb +18 -40
- data/lib/asciidoctor/standoc/isodoc.rng +13 -6
- data/lib/asciidoctor/standoc/json2_text_preprocessor.rb +2 -1
- data/lib/asciidoctor/standoc/ref.rb +31 -30
- data/lib/asciidoctor/standoc/yaml2_text_preprocessor.rb +4 -1
- data/lib/metanorma/standoc.rb +0 -5
- data/lib/metanorma/standoc/version.rb +20 -1
- data/metanorma-standoc.gemspec +2 -1
- data/spec/asciidoctor-standoc/base_spec.rb +121 -3
- data/spec/asciidoctor-standoc/blocks_spec.rb +1 -1
- data/spec/asciidoctor-standoc/cleanup_spec.rb +11 -9
- data/spec/asciidoctor-standoc/inline_spec.rb +128 -4
- data/spec/asciidoctor-standoc/isobib_cache_spec.rb +9 -7
- data/spec/asciidoctor-standoc/refs_spec.rb +27 -18
- data/spec/spec_helper.rb +1 -1
- data/spec/support/shared_examples/structured_data_2_text_preprocessor.rb +46 -0
- data/spec/vcr_cassettes/dated_iso_ref_joint_iso_iec.yml +71 -71
- data/spec/vcr_cassettes/isobib_get_123.yml +17 -17
- data/spec/vcr_cassettes/isobib_get_123_1.yml +35 -35
- data/spec/vcr_cassettes/isobib_get_123_2001.yml +18 -18
- data/spec/vcr_cassettes/isobib_get_124.yml +17 -17
- data/spec/vcr_cassettes/rfcbib_get_rfc8341.yml +8 -8
- data/spec/vcr_cassettes/separates_iev_citations_by_top_level_clause.yml +39 -37
- metadata +5 -7
- data/lib/metanorma/standoc/latexml_requirement.rb +0 -62
- data/lib/metanorma/standoc/requirement.rb +0 -13
@@ -36,7 +36,10 @@ module Asciidoctor
|
|
36
36
|
protected
|
37
37
|
|
38
38
|
def content_from_file(document, file_path)
|
39
|
-
YAML.safe_load(
|
39
|
+
YAML.safe_load(
|
40
|
+
File.read(relative_file_path(document, file_path),
|
41
|
+
encoding: "UTF-8"),
|
42
|
+
[Date, Time])
|
40
43
|
end
|
41
44
|
end
|
42
45
|
end
|
data/lib/metanorma/standoc.rb
CHANGED
@@ -1,5 +1,24 @@
|
|
1
1
|
module Metanorma
|
2
|
+
class << self
|
3
|
+
# https://stackoverflow.com/a/53399471
|
4
|
+
def parent_of(mod)
|
5
|
+
parent_name = mod.name =~ /::[^:]+\Z/ ? $`.freeze : nil
|
6
|
+
Object.const_get(parent_name) if parent_name
|
7
|
+
end
|
8
|
+
|
9
|
+
def all_modules(mod)
|
10
|
+
[mod] + mod.constants.map { |c| mod.const_get(c) }
|
11
|
+
.select {|c| c.is_a?(Module) && parent_of(c) == mod }
|
12
|
+
.flat_map {|m| all_modules(m) }
|
13
|
+
end
|
14
|
+
|
15
|
+
def versioned(mod, flavour)
|
16
|
+
all_modules(mod).select {|c| defined? c::VERSION}.
|
17
|
+
select {|c| c.name =~ /::#{flavour}$/ }
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
2
21
|
module Standoc
|
3
|
-
|
22
|
+
VERSION = "1.6.0".freeze
|
4
23
|
end
|
5
24
|
end
|
data/metanorma-standoc.gemspec
CHANGED
@@ -30,7 +30,8 @@ Gem::Specification.new do |spec|
|
|
30
30
|
spec.add_dependency "ruby-jing"
|
31
31
|
spec.add_dependency "isodoc", "~> 1.2.0"
|
32
32
|
spec.add_dependency "iev", "~> 0.2.1"
|
33
|
-
|
33
|
+
# relaton-cli not just relaton, to avoid circular reference in metanorma
|
34
|
+
spec.add_dependency "relaton-cli", "~> 1.4.0"
|
34
35
|
spec.add_dependency "relaton-iev", "~> 1.0.0"
|
35
36
|
spec.add_dependency "sterile", "~> 1.0.14"
|
36
37
|
spec.add_dependency "concurrent-ruby"
|
@@ -32,8 +32,101 @@ RSpec.describe Asciidoctor::Standoc do
|
|
32
32
|
expect(File.exist?("htmlstyle.css")).to be false
|
33
33
|
end
|
34
34
|
|
35
|
-
|
35
|
+
it "processes publisher abbreviations" do
|
36
|
+
mock_org_abbrevs
|
36
37
|
expect(xmlpp(Asciidoctor.convert(<<~"INPUT", backend: :standoc, header_footer: true))).to be_equivalent_to xmlpp(<<~'OUTPUT')
|
38
|
+
= Document title
|
39
|
+
Author
|
40
|
+
:docfile: test.adoc
|
41
|
+
:nodoc:
|
42
|
+
:novalid:
|
43
|
+
:publisher: International Electrotechnical Commission,IETF,ISO
|
44
|
+
INPUT
|
45
|
+
<standard-document xmlns='https://www.metanorma.org/ns/standoc' type='semantic' version='1.5.3'>
|
46
|
+
<bibdata type='standard'>
|
47
|
+
<title language='en' format='text/plain'>Document title</title>
|
48
|
+
<contributor>
|
49
|
+
<role type='author'/>
|
50
|
+
<organization>
|
51
|
+
<name>International Electrotechnical Commission</name>
|
52
|
+
<abbreviation>IEC</abbreviation>
|
53
|
+
</organization>
|
54
|
+
</contributor>
|
55
|
+
<contributor>
|
56
|
+
<role type='author'/>
|
57
|
+
<organization>
|
58
|
+
<name>IETF</name>
|
59
|
+
</organization>
|
60
|
+
</contributor>
|
61
|
+
<contributor>
|
62
|
+
<role type='author'/>
|
63
|
+
<organization>
|
64
|
+
<name>International Standards Organization</name>
|
65
|
+
<abbreviation>ISO</abbreviation>
|
66
|
+
</organization>
|
67
|
+
</contributor>
|
68
|
+
<contributor>
|
69
|
+
<role type='publisher'/>
|
70
|
+
<organization>
|
71
|
+
<name>International Electrotechnical Commission</name>
|
72
|
+
<abbreviation>IEC</abbreviation>
|
73
|
+
</organization>
|
74
|
+
</contributor>
|
75
|
+
<contributor>
|
76
|
+
<role type='publisher'/>
|
77
|
+
<organization>
|
78
|
+
<name>IETF</name>
|
79
|
+
</organization>
|
80
|
+
</contributor>
|
81
|
+
<contributor>
|
82
|
+
<role type='publisher'/>
|
83
|
+
<organization>
|
84
|
+
<name>International Standards Organization</name>
|
85
|
+
<abbreviation>ISO</abbreviation>
|
86
|
+
</organization>
|
87
|
+
</contributor>
|
88
|
+
<language>en</language>
|
89
|
+
<script>Latn</script>
|
90
|
+
<status>
|
91
|
+
<stage>published</stage>
|
92
|
+
</status>
|
93
|
+
<copyright>
|
94
|
+
<from>2020</from>
|
95
|
+
<owner>
|
96
|
+
<organization>
|
97
|
+
<name>International Electrotechnical Commission</name>
|
98
|
+
<abbreviation>IEC</abbreviation>
|
99
|
+
</organization>
|
100
|
+
</owner>
|
101
|
+
</copyright>
|
102
|
+
<copyright>
|
103
|
+
<from>2020</from>
|
104
|
+
<owner>
|
105
|
+
<organization>
|
106
|
+
<name>IETF</name>
|
107
|
+
</organization>
|
108
|
+
</owner>
|
109
|
+
</copyright>
|
110
|
+
<copyright>
|
111
|
+
<from>2020</from>
|
112
|
+
<owner>
|
113
|
+
<organization>
|
114
|
+
<name>International Standards Organization</name>
|
115
|
+
<abbreviation>ISO</abbreviation>
|
116
|
+
</organization>
|
117
|
+
</owner>
|
118
|
+
</copyright>
|
119
|
+
<ext>
|
120
|
+
<doctype>article</doctype>
|
121
|
+
</ext>
|
122
|
+
</bibdata>
|
123
|
+
<sections> </sections>
|
124
|
+
</standard-document>
|
125
|
+
OUTPUT
|
126
|
+
end
|
127
|
+
|
128
|
+
it "processes default metadata" do
|
129
|
+
expect(xmlpp(Asciidoctor.convert(<<~"INPUT", backend: :standoc, header_footer: true))).to be_equivalent_to xmlpp(<<~"OUTPUT")
|
37
130
|
= Document title
|
38
131
|
Author
|
39
132
|
:docfile: test.adoc
|
@@ -109,7 +202,7 @@ RSpec.describe Asciidoctor::Standoc do
|
|
109
202
|
:keywords: a, b, c
|
110
203
|
INPUT
|
111
204
|
<?xml version="1.0" encoding="UTF-8"?>
|
112
|
-
<standard-document xmlns="https://www.metanorma.org/ns/standoc">
|
205
|
+
<standard-document xmlns="https://www.metanorma.org/ns/standoc" type="semantic" version="#{Metanorma::Standoc::VERSION}">
|
113
206
|
<bibdata type="standard">
|
114
207
|
<title language="en" format="text/plain">Main Title — Title</title>
|
115
208
|
<docidentifier>1000-1</docidentifier>
|
@@ -339,7 +432,7 @@ RSpec.describe Asciidoctor::Standoc do
|
|
339
432
|
== Clause 1
|
340
433
|
INPUT
|
341
434
|
<?xml version="1.0" encoding="UTF-8"?>
|
342
|
-
<standard-document xmlns="https://www.metanorma.org/ns/standoc">
|
435
|
+
<standard-document xmlns="https://www.metanorma.org/ns/standoc" type="semantic" version="#{Metanorma::Standoc::VERSION}">
|
343
436
|
<bibdata type="standard">
|
344
437
|
<title language="en" format="text/plain">Document title</title>
|
345
438
|
<title language="eo" format="text/plain">Dokumenttitolo</title>
|
@@ -526,6 +619,31 @@ QU1FOiB0ZXN0Cgo=
|
|
526
619
|
])
|
527
620
|
end
|
528
621
|
|
622
|
+
it "test submitting-organizations with delimiter in end" do
|
623
|
+
FileUtils.rm_f "test.doc"
|
624
|
+
Asciidoctor.convert(<<~"INPUT", backend: :standoc, header_footer: true)
|
625
|
+
= Document title
|
626
|
+
Author
|
627
|
+
:docfile: test.adoc
|
628
|
+
:doctype: standard
|
629
|
+
:encoding: utf-8
|
630
|
+
:lang: en
|
631
|
+
:submitting-organizations: Organization One; Organization Two;
|
632
|
+
:publisher: "Hanna Barbera", "Cartoon Network", "Ribose, Inc.",
|
633
|
+
INPUT
|
634
|
+
expect(File.exist?("test.doc")).to be true
|
635
|
+
end
|
636
|
+
|
637
|
+
private
|
638
|
+
|
639
|
+
def mock_org_abbrevs
|
640
|
+
allow_any_instance_of(::Asciidoctor::Standoc::Front).to receive(:org_abbrev).and_return(
|
641
|
+
{ "International Standards Organization" => "ISO",
|
642
|
+
"International Electrotechnical Commission" => "IEC" }
|
643
|
+
)
|
644
|
+
end
|
645
|
+
|
646
|
+
|
529
647
|
|
530
648
|
end
|
531
649
|
|
@@ -273,7 +273,7 @@ RSpec.describe Asciidoctor::Standoc do
|
|
273
273
|
For further information on the Foreword, see *ISO/IEC Directives, Part 2, 2016, Clause 12.*
|
274
274
|
****
|
275
275
|
INPUT
|
276
|
-
<standard-document xmlns="https://www.metanorma.org/ns/standoc">
|
276
|
+
<standard-document xmlns="https://www.metanorma.org/ns/standoc" type="semantic" version="#{Metanorma::Standoc::VERSION}">
|
277
277
|
<bibdata type="standard">
|
278
278
|
<title language="en" format="text/plain">Document title</title>
|
279
279
|
|
@@ -1167,7 +1167,7 @@ end
|
|
1167
1167
|
# mock_iecbib_get_iec60050_102_01
|
1168
1168
|
# mock_iecbib_get_iec60050_103_01
|
1169
1169
|
# mock_iev
|
1170
|
-
VCR.use_cassette "separates_iev_citations_by_top_level_clause" do
|
1170
|
+
VCR.use_cassette "separates_iev_citations_by_top_level_clause", :re_record_interval => 25200 do
|
1171
1171
|
expect(xmlpp(strip_guid(Asciidoctor.convert(<<~"INPUT", backend: :standoc, header_footer: true)))).to be_equivalent_to xmlpp(<<~"OUTPUT")
|
1172
1172
|
#{CACHED_ISOBIB_BLANK_HDR}
|
1173
1173
|
|
@@ -1236,6 +1236,7 @@ end
|
|
1236
1236
|
<uri type="src">https://webstore.iec.ch/publication/160</uri>
|
1237
1237
|
<uri type="obp">/preview/info_iec60050-102%7Bed1.0%7Db.pdf</uri>
|
1238
1238
|
<docidentifier type="IEC">IEC 60050-102:2007</docidentifier>
|
1239
|
+
<docidentifier type='URN'>urn:iec:std:iec:60050-102:2007:::en</docidentifier>
|
1239
1240
|
<date type="published">
|
1240
1241
|
<on>2007</on>
|
1241
1242
|
</date>
|
@@ -1274,6 +1275,7 @@ end
|
|
1274
1275
|
<uri type="src">https://webstore.iec.ch/publication/161</uri>
|
1275
1276
|
<uri type="obp">/preview/info_iec60050-103%7Bed1.0%7Db.pdf</uri>
|
1276
1277
|
<docidentifier type="IEC">IEC 60050-103:2009</docidentifier>
|
1278
|
+
<docidentifier type='URN'>urn:iec:std:iec:60050-103:2009:::en</docidentifier>
|
1277
1279
|
<date type="published">
|
1278
1280
|
<on>2009</on>
|
1279
1281
|
</date>
|
@@ -1619,7 +1621,7 @@ it "removes bibdata bibitem IDs" do
|
|
1619
1621
|
|
1620
1622
|
INPUT
|
1621
1623
|
<?xml version='1.0' encoding='UTF-8'?>
|
1622
|
-
<standard-document xmlns='https://www.metanorma.org/ns/standoc'>
|
1624
|
+
<standard-document xmlns='https://www.metanorma.org/ns/standoc' type="semantic" version="#{Metanorma::Standoc::VERSION}">
|
1623
1625
|
<bibdata type='standard'>
|
1624
1626
|
<title language='en' format='text/plain'>Document title</title>
|
1625
1627
|
<language>en</language>
|
@@ -1665,7 +1667,7 @@ it "imports boilerplate file" do
|
|
1665
1667
|
== Clause 1
|
1666
1668
|
|
1667
1669
|
INPUT
|
1668
|
-
<standard-document xmlns='https://www.metanorma.org/ns/standoc'>
|
1670
|
+
<standard-document xmlns='https://www.metanorma.org/ns/standoc' type="semantic" version="#{Metanorma::Standoc::VERSION}">
|
1669
1671
|
<bibdata type='standard'>
|
1670
1672
|
<title language='en' format='text/plain'>Document title</title>
|
1671
1673
|
<language>en</language>
|
@@ -2054,7 +2056,7 @@ expect(xmlpp(strip_guid(Asciidoctor.convert(<<~"INPUT", backend: :standoc, heade
|
|
2054
2056
|
=== Bibliography Subsection
|
2055
2057
|
|
2056
2058
|
INPUT
|
2057
|
-
<standard-document xmlns='https://www.metanorma.org/ns/standoc'>
|
2059
|
+
<standard-document xmlns='https://www.metanorma.org/ns/standoc' type="semantic" version="#{Metanorma::Standoc::VERSION}">
|
2058
2060
|
<bibdata type='standard'>
|
2059
2061
|
<title language='en' format='text/plain'>Document title</title>
|
2060
2062
|
<language>en</language>
|
@@ -2330,7 +2332,7 @@ expect(xmlpp(strip_guid(Asciidoctor.convert(<<~"INPUT", backend: :standoc, heade
|
|
2330
2332
|
=== Bibliography Subsection
|
2331
2333
|
|
2332
2334
|
INPUT
|
2333
|
-
<standard-document xmlns='https://www.metanorma.org/ns/standoc'>
|
2335
|
+
<standard-document xmlns='https://www.metanorma.org/ns/standoc' type="semantic" version="#{Metanorma::Standoc::VERSION}">
|
2334
2336
|
<bibdata type='standard'>
|
2335
2337
|
<title language='en' format='text/plain'>Document title</title>
|
2336
2338
|
<language>tlh</language>
|
@@ -2561,7 +2563,7 @@ expect(xmlpp(strip_guid(Asciidoctor.convert(<<~"INPUT", backend: :standoc, heade
|
|
2561
2563
|
=== Bibliography Subsection
|
2562
2564
|
|
2563
2565
|
INPUT
|
2564
|
-
<standard-document xmlns='https://www.metanorma.org/ns/standoc'>
|
2566
|
+
<standard-document xmlns='https://www.metanorma.org/ns/standoc' type="semantic" version="#{Metanorma::Standoc::VERSION}">
|
2565
2567
|
<bibdata type='standard'>
|
2566
2568
|
<title language='en' format='text/plain'>Document title</title>
|
2567
2569
|
<language>fr</language>
|
@@ -2795,7 +2797,7 @@ expect(xmlpp(strip_guid(Asciidoctor.convert(<<~"INPUT", backend: :standoc, heade
|
|
2795
2797
|
=== Bibliography Subsection
|
2796
2798
|
|
2797
2799
|
INPUT
|
2798
|
-
<standard-document xmlns='https://www.metanorma.org/ns/standoc'>
|
2800
|
+
<standard-document xmlns='https://www.metanorma.org/ns/standoc' type="semantic" version="#{Metanorma::Standoc::VERSION}">
|
2799
2801
|
<bibdata type='standard'>
|
2800
2802
|
<title language='en' format='text/plain'>Document title</title>
|
2801
2803
|
<language>zh</language>
|
@@ -3026,7 +3028,7 @@ expect(xmlpp(strip_guid(Asciidoctor.convert(<<~"INPUT", backend: :standoc, heade
|
|
3026
3028
|
=== Bibliography Subsection
|
3027
3029
|
|
3028
3030
|
INPUT
|
3029
|
-
<standard-document xmlns='https://www.metanorma.org/ns/standoc'>
|
3031
|
+
<standard-document xmlns='https://www.metanorma.org/ns/standoc' type="semantic" version="#{Metanorma::Standoc::VERSION}">
|
3030
3032
|
<bibdata type='standard'>
|
3031
3033
|
<title language='en' format='text/plain'>Document title</title>
|
3032
3034
|
<language>en</language>
|
@@ -3176,7 +3178,7 @@ input = <<~INPUT
|
|
3176
3178
|
|
3177
3179
|
INPUT
|
3178
3180
|
expect(xmlpp(Asciidoctor.convert(input, backend: :standoc, header_footer: true).gsub(/<p id="_[^"]+">/, "").gsub('</p>', ""))).to be_equivalent_to (<<~"OUTPUT")
|
3179
|
-
<standard-document xmlns='https://www.metanorma.org/ns/standoc'>
|
3181
|
+
<standard-document xmlns='https://www.metanorma.org/ns/standoc' type="semantic" version="#{Metanorma::Standoc::VERSION}">
|
3180
3182
|
<bibdata type='standard'>
|
3181
3183
|
<title language='en' format='text/plain'>Document title</title>
|
3182
3184
|
<language>en</language>
|
@@ -10,7 +10,7 @@ RSpec.describe Asciidoctor::Standoc do
|
|
10
10
|
text, including **__nest__**ed markup.
|
11
11
|
INPUT
|
12
12
|
<?xml version="1.0" encoding="UTF-8"?>
|
13
|
-
<standard-document xmlns="https://www.metanorma.org/ns/standoc">
|
13
|
+
<standard-document xmlns="https://www.metanorma.org/ns/standoc" type="semantic" version="#{Metanorma::Standoc::VERSION}">
|
14
14
|
<bibdata type="standard">
|
15
15
|
<title language="en" format="text/plain">Document title</title>
|
16
16
|
<language>en</language>
|
@@ -77,42 +77,147 @@ text, including <strong><em>nest</em></strong>ed markup.</p>
|
|
77
77
|
OUTPUT
|
78
78
|
end
|
79
79
|
|
80
|
+
it "process mtext spaces" do
|
81
|
+
expect(xmlpp(strip_guid(Asciidoctor.convert(<<~"INPUT", backend: :standoc, header_footer: true)))).to be_equivalent_to xmlpp(<<~"OUTPUT")
|
82
|
+
#{DUMBQUOTE_BLANK_HDR}
|
83
|
+
|
84
|
+
stem:[n < 1 " for all text "]
|
85
|
+
INPUT
|
86
|
+
#{BLANK_HDR}
|
87
|
+
<sections>
|
88
|
+
<p id='_'>
|
89
|
+
<stem type='MathML'>
|
90
|
+
<math xmlns='http://www.w3.org/1998/Math/MathML'>
|
91
|
+
<mi>n</mi>
|
92
|
+
<mo/>
|
93
|
+
<mn>1</mn>
|
94
|
+
<mtext> for all text </mtext>
|
95
|
+
</math>
|
96
|
+
</stem>
|
97
|
+
</p>
|
98
|
+
</sections>
|
99
|
+
</standard-document>
|
100
|
+
OUTPUT
|
101
|
+
end
|
102
|
+
|
80
103
|
it "properly handles inline substitution" do
|
81
104
|
expect(xmlpp(strip_guid(Asciidoctor.convert(<<~"INPUT", backend: :standoc, header_footer: true)))).to be_equivalent_to xmlpp(<<~"OUTPUT")
|
82
105
|
#{DUMBQUOTE_BLANK_HDR}
|
83
106
|
|
84
107
|
stem:[n < 1] +
|
85
108
|
latexmath:[n < 1]
|
109
|
+
stem:["‌"^199 "Hg"^+]
|
86
110
|
INPUT
|
87
111
|
#{BLANK_HDR}
|
88
112
|
<sections>
|
89
113
|
<p id="_">
|
90
114
|
<stem type="MathML"><math xmlns="http://www.w3.org/1998/Math/MathML"><mi>n</mi><mo><</mo><mn>1</mn></math></stem><br/>
|
91
115
|
<stem type="MathML"> <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> <mi>n</mi> <mo><</mo> <mn>1</mn> </mrow> </math></stem>
|
116
|
+
<stem type='MathML'>
|
117
|
+
<math xmlns='http://www.w3.org/1998/Math/MathML'>
|
118
|
+
<msup>
|
119
|
+
<mrow>
|
120
|
+
<mtext></mtext>
|
121
|
+
</mrow>
|
122
|
+
<mrow>
|
123
|
+
<mn>199</mn>
|
124
|
+
</mrow>
|
125
|
+
</msup>
|
126
|
+
<msup>
|
127
|
+
<mrow>
|
128
|
+
<mtext>Hg</mtext>
|
129
|
+
</mrow>
|
130
|
+
<mrow>
|
131
|
+
<mo>+</mo>
|
132
|
+
</mrow>
|
133
|
+
</msup>
|
134
|
+
</math>
|
135
|
+
</stem>
|
92
136
|
</p>
|
93
137
|
</sections>
|
94
138
|
</standard-document>
|
95
139
|
OUTPUT
|
96
140
|
end
|
97
141
|
|
98
|
-
it "normalises inline stem" do
|
142
|
+
it "normalises inline stem, straight quotes" do
|
99
143
|
expect(xmlpp(strip_guid(Asciidoctor.convert(<<~"INPUT", backend: :standoc, header_footer: true)))).to be_equivalent_to xmlpp(<<~"OUTPUT")
|
100
144
|
#{DUMBQUOTE_BLANK_HDR}
|
101
145
|
|
102
146
|
stem:[n < 1]
|
103
147
|
latexmath:[n < 1]
|
148
|
+
stem:["‌"^199 "Hg"^+]
|
149
|
+
INPUT
|
150
|
+
#{BLANK_HDR}
|
151
|
+
<sections>
|
152
|
+
<p id="_">
|
153
|
+
<stem type="MathML"><math xmlns="http://www.w3.org/1998/Math/MathML"><mi>n</mi><mo><</mo><mn>1</mn></math></stem>
|
154
|
+
<stem type="MathML"> <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> <mi>n</mi> <mo><</mo> <mn>1</mn> </mrow> </math></stem>
|
155
|
+
<stem type='MathML'>
|
156
|
+
<math xmlns='http://www.w3.org/1998/Math/MathML'>
|
157
|
+
<msup>
|
158
|
+
<mrow>
|
159
|
+
<mtext></mtext>
|
160
|
+
</mrow>
|
161
|
+
<mrow>
|
162
|
+
<mn>199</mn>
|
163
|
+
</mrow>
|
164
|
+
</msup>
|
165
|
+
<msup>
|
166
|
+
<mrow>
|
167
|
+
<mtext>Hg</mtext>
|
168
|
+
</mrow>
|
169
|
+
<mrow>
|
170
|
+
<mo>+</mo>
|
171
|
+
</mrow>
|
172
|
+
</msup>
|
173
|
+
</math>
|
174
|
+
</stem>
|
175
|
+
</p>
|
176
|
+
</sections>
|
177
|
+
</standard-document>
|
178
|
+
OUTPUT
|
179
|
+
end
|
180
|
+
|
181
|
+
it "normalises inline stem, smart quotes" do
|
182
|
+
expect(xmlpp(strip_guid(Asciidoctor.convert(<<~"INPUT", backend: :standoc, header_footer: true)))).to be_equivalent_to xmlpp(<<~"OUTPUT")
|
183
|
+
#{ASCIIDOC_BLANK_HDR}
|
184
|
+
|
185
|
+
stem:[n < 1]
|
186
|
+
latexmath:[n < 1]
|
187
|
+
stem:["‌"^199 "Hg"^+]
|
104
188
|
INPUT
|
105
189
|
#{BLANK_HDR}
|
106
190
|
<sections>
|
107
191
|
<p id="_">
|
108
192
|
<stem type="MathML"><math xmlns="http://www.w3.org/1998/Math/MathML"><mi>n</mi><mo><</mo><mn>1</mn></math></stem>
|
109
193
|
<stem type="MathML"> <math xmlns="http://www.w3.org/1998/Math/MathML"> <mrow> <mi>n</mi> <mo><</mo> <mn>1</mn> </mrow> </math></stem>
|
194
|
+
<stem type='MathML'>
|
195
|
+
<math xmlns='http://www.w3.org/1998/Math/MathML'>
|
196
|
+
<msup>
|
197
|
+
<mrow>
|
198
|
+
<mtext></mtext>
|
199
|
+
</mrow>
|
200
|
+
<mrow>
|
201
|
+
<mn>199</mn>
|
202
|
+
</mrow>
|
203
|
+
</msup>
|
204
|
+
<msup>
|
205
|
+
<mrow>
|
206
|
+
<mtext>Hg</mtext>
|
207
|
+
</mrow>
|
208
|
+
<mrow>
|
209
|
+
<mo>+</mo>
|
210
|
+
</mrow>
|
211
|
+
</msup>
|
212
|
+
</math>
|
213
|
+
</stem>
|
110
214
|
</p>
|
111
215
|
</sections>
|
112
216
|
</standard-document>
|
113
217
|
OUTPUT
|
114
218
|
end
|
115
219
|
|
220
|
+
|
116
221
|
it "generates desired smart quotes for 'dd'" do
|
117
222
|
expect(xmlpp(strip_guid(Asciidoctor.convert(<<~"INPUT", backend: :standoc, header_footer: true)))).to be_equivalent_to xmlpp(<<~"OUTPUT")
|
118
223
|
#{ASCIIDOC_BLANK_HDR}
|
@@ -201,8 +306,14 @@ text, including <strong><em>nest</em></strong>ed markup.</p>
|
|
201
306
|
Inline Reference with Text to <<reference,text>>
|
202
307
|
Footnoted Reference with Text to <<reference,fn: text>>
|
203
308
|
Anchored Crossreference to other document <<a.adoc#b>>
|
309
|
+
Capitalised Reference to <<reference,droploc%capital%>>
|
310
|
+
Lowercase Footnoted Reference to <<reference,capital%droploc%fn>>
|
204
311
|
Capitalised Reference to <<reference,capital%>>
|
205
312
|
Lowercase Footnoted Reference to <<reference,capital%fn>>
|
313
|
+
Capitalised Reference to <<reference,droploc%>>
|
314
|
+
Lowercase Footnoted Reference to <<reference,droploc%fn>>
|
315
|
+
Capitalised Reference to <<reference,droploc%capital%>>
|
316
|
+
Lowercase Footnoted Reference to <<reference,droploc%capital%fn>>
|
206
317
|
INPUT
|
207
318
|
#{BLANK_HDR}
|
208
319
|
<sections>
|
@@ -213,8 +324,21 @@ text, including <strong><em>nest</em></strong>ed markup.</p>
|
|
213
324
|
Inline Reference with Text to <xref target="reference">text</xref>
|
214
325
|
Footnoted Reference with Text to <xref target="reference">text</xref>
|
215
326
|
Anchored Crossreference to other document <xref target="a#b"/>
|
216
|
-
Capitalised Reference to <xref target='reference' case='capital'></xref>
|
217
|
-
Lowercase Footnoted Reference to <xref target='reference' case='capital'></xref
|
327
|
+
Capitalised Reference to <xref target='reference' case='capital' droploc="true"></xref>
|
328
|
+
Lowercase Footnoted Reference to <xref target='reference' case='capital' droploc="true"></xref>
|
329
|
+
Capitalised Reference to
|
330
|
+
<xref target='reference' case='capital'/>
|
331
|
+
Lowercase Footnoted Reference to
|
332
|
+
<xref target='reference' case='capital'/>
|
333
|
+
Capitalised Reference to
|
334
|
+
<xref target='reference' droploc='true'/>
|
335
|
+
Lowercase Footnoted Reference to
|
336
|
+
<xref target='reference' droploc='true'/>
|
337
|
+
Capitalised Reference to
|
338
|
+
<xref target='reference' case='capital' droploc='true'/>
|
339
|
+
Lowercase Footnoted Reference to
|
340
|
+
<xref target='reference' case='capital' droploc='true'/>
|
341
|
+
</p>
|
218
342
|
</clause>
|
219
343
|
</sections>
|
220
344
|
</standard-document>
|