metanorma-iso 1.3.6 → 1.3.7
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.adoc +4 -4
- data/lib/asciidoctor/iso/basicdoc.rng +6 -8
- data/lib/asciidoctor/iso/validate.rb +14 -93
- data/lib/asciidoctor/iso/validate_title.rb +99 -0
- data/lib/isodoc/iso/html/isodoc.scss +21 -0
- data/lib/isodoc/iso/html/style-human.scss +2 -2
- data/lib/isodoc/iso/html/style-iso.scss +2 -2
- data/lib/metanorma/iso/version.rb +1 -1
- data/metanorma-iso.gemspec +0 -1
- data/spec/asciidoctor-iso/base_spec.rb +11 -11
- data/spec/asciidoctor-iso/blocks_spec.rb +22 -22
- data/spec/asciidoctor-iso/cleanup_spec.rb +27 -26
- data/spec/asciidoctor-iso/inline_spec.rb +7 -7
- data/spec/asciidoctor-iso/lists_spec.rb +3 -3
- data/spec/asciidoctor-iso/macros_spec.rb +1 -1
- data/spec/asciidoctor-iso/refs_spec.rb +4 -4
- data/spec/asciidoctor-iso/section_spec.rb +58 -48
- data/spec/asciidoctor-iso/table_spec.rb +4 -4
- data/spec/asciidoctor-iso/validate_spec.rb +12 -0
- data/spec/isodoc/i18n_spec.rb +4 -4
- data/spec/isodoc/inline_spec.rb +8 -8
- data/spec/isodoc/iso_spec.rb +5 -7
- data/spec/isodoc/postproc_spec.rb +16 -23
- data/spec/isodoc/section_spec.rb +6 -9
- data/spec/isodoc/terms_spec.rb +2 -7
- data/spec/isodoc/xref_spec.rb +11 -11
- data/spec/metanorma/processor_spec.rb +2 -2
- data/spec/spec_helper.rb +9 -0
- metadata +3 -16
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7f3ac994687043ccc35d6421913c9abe3342c3ee4ea17d318f0446b7cc042958
|
4
|
+
data.tar.gz: 03b2ccb9739ee87347cd5c58e91eae9b2ad7a64061908d2e898f2d9b054d029b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 30d3582ecc68ae76c321e6ea2923dbb28df65c6a024544cacad6c4ebec6f9a554099024544176d931b616d74cfafefd4e0d21296d0c1602aa939c749c85edfe4
|
7
|
+
data.tar.gz: 6e9b4a576472188de3b17f090d4fe192bf8247a9cae4039d3d2466c578764d32552f0929db521384777f9acdfda7e0a205de886ccfcd6080dec69ed201bad3cc
|
data/README.adoc
CHANGED
@@ -1,11 +1,11 @@
|
|
1
1
|
= Metanorma-ISO: Metanorma processor for ISO standards
|
2
2
|
|
3
3
|
image:https://img.shields.io/gem/v/metanorma-iso.svg["Gem Version", link="https://rubygems.org/gems/metanorma-iso"]
|
4
|
-
image:https://
|
5
|
-
image:https://ci.appveyor.com/api/projects/status/
|
4
|
+
image:https://travis-ci.com/metanorma/metanorma-iso.svg["Build Status", link="https://travis-ci.com/metanorma/metanorma-iso"]
|
5
|
+
image:https://ci.appveyor.com/api/projects/status/t874i1cbarhnrwki?svg=true["Appveyor Build Status", link="https://ci.appveyor.com/project/metanorma/metanorma-iso"]
|
6
6
|
image:https://codeclimate.com/github/metanorma/metanorma-iso/badges/gpa.svg["Code Climate", link="https://codeclimate.com/github/metanorma/metanorma-iso"]
|
7
|
-
|
8
|
-
|
7
|
+
image:https://img.shields.io/github/issues-pr-raw/metanorma/metanorma-iso.svg["Pull Requests", link="https://github.com/metanorma/metanorma-iso/pulls"]
|
8
|
+
image:https://img.shields.io/github/commits-since/metanorma/metanorma-iso/latest.svg["Commits since latest",link="https://github.com/metanorma/metanorma-iso/releases"]
|
9
9
|
|
10
10
|
_Formerly known as_ `asciidoctor-iso`.
|
11
11
|
|
@@ -341,11 +341,6 @@
|
|
341
341
|
</oneOrMore>
|
342
342
|
</element>
|
343
343
|
</define>
|
344
|
-
<define name="tclass">
|
345
|
-
<element name="name">
|
346
|
-
<text/>
|
347
|
-
</element>
|
348
|
-
</define>
|
349
344
|
<define name="thead">
|
350
345
|
<element name="thead">
|
351
346
|
<ref name="tr"/>
|
@@ -515,19 +510,22 @@
|
|
515
510
|
<attribute name="subsequence"/>
|
516
511
|
</optional>
|
517
512
|
<optional>
|
518
|
-
<
|
513
|
+
<attribute name="class"/>
|
519
514
|
</optional>
|
520
515
|
<optional>
|
521
|
-
<ref name="
|
516
|
+
<ref name="source"/>
|
522
517
|
</optional>
|
523
518
|
<optional>
|
524
|
-
<ref name="
|
519
|
+
<ref name="tname"/>
|
525
520
|
</optional>
|
526
521
|
<choice>
|
527
522
|
<ref name="image"/>
|
528
523
|
<ref name="video"/>
|
529
524
|
<ref name="audio"/>
|
530
525
|
<ref name="pre"/>
|
526
|
+
<oneOrMore>
|
527
|
+
<ref name="paragraph-with-footnote"/>
|
528
|
+
</oneOrMore>
|
531
529
|
<zeroOrMore>
|
532
530
|
<ref name="figure"/>
|
533
531
|
</zeroOrMore>
|
@@ -2,106 +2,14 @@ require "metanorma-standoc"
|
|
2
2
|
require_relative "./validate_style.rb"
|
3
3
|
require_relative "./validate_requirements.rb"
|
4
4
|
require_relative "./validate_section.rb"
|
5
|
+
require_relative "./validate_title.rb"
|
5
6
|
require "nokogiri"
|
6
7
|
require "jing"
|
7
|
-
require "pp"
|
8
8
|
require "iev"
|
9
9
|
|
10
10
|
module Asciidoctor
|
11
11
|
module ISO
|
12
12
|
class Converter < Standoc::Converter
|
13
|
-
def title_intro_validate(root)
|
14
|
-
title_intro_en = root.at("//title[@type='title-intro' and @language='en']")
|
15
|
-
title_intro_fr = root.at("//title[@type='title-intro' and @language='fr']")
|
16
|
-
if title_intro_en.nil? && !title_intro_fr.nil?
|
17
|
-
warn "No English Title Intro!"
|
18
|
-
end
|
19
|
-
if !title_intro_en.nil? && title_intro_fr.nil?
|
20
|
-
warn "No French Title Intro!"
|
21
|
-
end
|
22
|
-
end
|
23
|
-
|
24
|
-
def title_main_validate(root)
|
25
|
-
title_main_en = root.at("//title[@type='title-main' and @language='en']")
|
26
|
-
title_main_fr = root.at("//title[@type='title-main' and @language='fr']")
|
27
|
-
if title_main_en.nil? && !title_main_fr.nil?
|
28
|
-
warn "No English Title!"
|
29
|
-
end
|
30
|
-
if !title_main_en.nil? && title_main_fr.nil?
|
31
|
-
warn "No French Title!"
|
32
|
-
end
|
33
|
-
end
|
34
|
-
|
35
|
-
def title_part_validate(root)
|
36
|
-
title_part_en = root.at("//title[@type='title-part' and @language='en']")
|
37
|
-
title_part_fr = root.at("//title[@type='title-part' and @language='fr']")
|
38
|
-
(title_part_en.nil? && !title_part_fr.nil?) &&
|
39
|
-
warn("No English Title Part!")
|
40
|
-
(!title_part_en.nil? && title_part_fr.nil?) &&
|
41
|
-
warn("No French Title Part!")
|
42
|
-
end
|
43
|
-
|
44
|
-
# ISO/IEC DIR 2, 11.4
|
45
|
-
def title_subpart_validate(root)
|
46
|
-
docid = root.at("//bibdata/docidentifier[@type = 'iso']")
|
47
|
-
subpart = /-\d+-\d+/.match docid
|
48
|
-
iec = root.at("//bibdata/contributor[role/@type = 'publisher']/"\
|
49
|
-
"organization[abbreviation = 'IEC' or "\
|
50
|
-
"name = 'International Electrotechnical Commission']")
|
51
|
-
warn("Subpart defined on non-IEC document!") if subpart && !iec
|
52
|
-
end
|
53
|
-
|
54
|
-
# ISO/IEC DIR 2, 11.5.2
|
55
|
-
def title_names_type_validate(root)
|
56
|
-
doctypes = /International\sStandard | Technical\sSpecification |
|
57
|
-
Publicly\sAvailable\sSpecification | Technical\sReport | Guide /xi
|
58
|
-
title_main_en = root.at("//title[@type='title-main' and @language='en']")
|
59
|
-
if !title_main_en.nil? && doctypes.match(title_main_en.text)
|
60
|
-
warn "Main Title may name document type"
|
61
|
-
end
|
62
|
-
title_intro_en = root.at("//title[@type='title-intro' and @language='en']")
|
63
|
-
if !title_intro_en.nil? && doctypes.match(title_intro_en.text)
|
64
|
-
warn "Title Intro may name document type"
|
65
|
-
end
|
66
|
-
end
|
67
|
-
|
68
|
-
# ISO/IEC DIR 2, 22.2
|
69
|
-
def title_first_level_validate(root)
|
70
|
-
root.xpath(SECTIONS_XPATH).each do |s|
|
71
|
-
title = s&.at("./title")&.text || s.name
|
72
|
-
s.xpath("./clause | ./terms | ./references").each do |ss|
|
73
|
-
subtitle = ss.at("./title")
|
74
|
-
!subtitle.nil? && !subtitle&.text&.empty? ||
|
75
|
-
warn("#{title}: each first-level subclause must have a title")
|
76
|
-
end
|
77
|
-
end
|
78
|
-
end
|
79
|
-
|
80
|
-
# ISO/IEC DIR 2, 22.2
|
81
|
-
def title_all_siblings(xpath, label)
|
82
|
-
notitle = false
|
83
|
-
withtitle = false
|
84
|
-
xpath.each do |s|
|
85
|
-
title_all_siblings(s.xpath("./clause | ./terms | ./references"),
|
86
|
-
s&.at("./title")&.text || s["id"])
|
87
|
-
subtitle = s.at("./title")
|
88
|
-
notitle = notitle || (!subtitle || subtitle.text.empty?)
|
89
|
-
withtitle = withtitle || (subtitle && !subtitle.text.empty?)
|
90
|
-
end
|
91
|
-
notitle && withtitle &&
|
92
|
-
warn("#{label}: all subclauses must have a title, or none")
|
93
|
-
end
|
94
|
-
|
95
|
-
def title_validate(root)
|
96
|
-
title_intro_validate(root)
|
97
|
-
title_main_validate(root)
|
98
|
-
title_part_validate(root)
|
99
|
-
title_subpart_validate(root)
|
100
|
-
title_names_type_validate(root)
|
101
|
-
title_first_level_validate(root)
|
102
|
-
title_all_siblings(root.xpath(SECTIONS_XPATH), "(top level)")
|
103
|
-
end
|
104
|
-
|
105
13
|
# ISO/IEC DIR 2, 22.3.2
|
106
14
|
def onlychild_clause_validate(root)
|
107
15
|
root.xpath(Standoc::Utils::SUBCLAUSE_XPATH).each do |c|
|
@@ -245,6 +153,19 @@ module Asciidoctor
|
|
245
153
|
see_erefs_validate(doc.root)
|
246
154
|
locality_erefs_validate(doc.root)
|
247
155
|
bibdata_validate(doc.root)
|
156
|
+
bibitem_validate(doc.root)
|
157
|
+
end
|
158
|
+
|
159
|
+
def bibitem_validate(xmldoc)
|
160
|
+
xmldoc.xpath("//bibitem[date/on = '--']").each do |b|
|
161
|
+
found = false
|
162
|
+
b.xpath("./note").each do |n|
|
163
|
+
found = true if /^ISO DATE:/.match n.text
|
164
|
+
end
|
165
|
+
found or
|
166
|
+
warn "Reference #{b&.at("./@id")&.text} does not have an "\
|
167
|
+
"associated footnote indicating unpublished status"
|
168
|
+
end
|
248
169
|
end
|
249
170
|
|
250
171
|
def validate(doc)
|
@@ -0,0 +1,99 @@
|
|
1
|
+
require "metanorma-standoc"
|
2
|
+
|
3
|
+
module Asciidoctor
|
4
|
+
module ISO
|
5
|
+
class Converter < Standoc::Converter
|
6
|
+
def title_intro_validate(root)
|
7
|
+
title_intro_en = root.at("//title[@type='title-intro' and @language='en']")
|
8
|
+
title_intro_fr = root.at("//title[@type='title-intro' and @language='fr']")
|
9
|
+
if title_intro_en.nil? && !title_intro_fr.nil?
|
10
|
+
warn "No English Title Intro!"
|
11
|
+
end
|
12
|
+
if !title_intro_en.nil? && title_intro_fr.nil?
|
13
|
+
warn "No French Title Intro!"
|
14
|
+
end
|
15
|
+
end
|
16
|
+
|
17
|
+
def title_main_validate(root)
|
18
|
+
title_main_en = root.at("//title[@type='title-main' and @language='en']")
|
19
|
+
title_main_fr = root.at("//title[@type='title-main' and @language='fr']")
|
20
|
+
if title_main_en.nil? && !title_main_fr.nil?
|
21
|
+
warn "No English Title!"
|
22
|
+
end
|
23
|
+
if !title_main_en.nil? && title_main_fr.nil?
|
24
|
+
warn "No French Title!"
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
def title_part_validate(root)
|
29
|
+
title_part_en = root.at("//title[@type='title-part' and @language='en']")
|
30
|
+
title_part_fr = root.at("//title[@type='title-part' and @language='fr']")
|
31
|
+
(title_part_en.nil? && !title_part_fr.nil?) &&
|
32
|
+
warn("No English Title Part!")
|
33
|
+
(!title_part_en.nil? && title_part_fr.nil?) &&
|
34
|
+
warn("No French Title Part!")
|
35
|
+
end
|
36
|
+
|
37
|
+
# ISO/IEC DIR 2, 11.4
|
38
|
+
def title_subpart_validate(root)
|
39
|
+
docid = root.at("//bibdata/docidentifier[@type = 'iso']")
|
40
|
+
subpart = /-\d+-\d+/.match docid
|
41
|
+
iec = root.at("//bibdata/contributor[role/@type = 'publisher']/"\
|
42
|
+
"organization[abbreviation = 'IEC' or "\
|
43
|
+
"name = 'International Electrotechnical Commission']")
|
44
|
+
warn("Subpart defined on non-IEC document!") if subpart && !iec
|
45
|
+
end
|
46
|
+
|
47
|
+
# ISO/IEC DIR 2, 11.5.2
|
48
|
+
def title_names_type_validate(root)
|
49
|
+
doctypes = /International\sStandard | Technical\sSpecification |
|
50
|
+
Publicly\sAvailable\sSpecification | Technical\sReport | Guide /xi
|
51
|
+
title_main_en = root.at("//title[@type='title-main' and @language='en']")
|
52
|
+
if !title_main_en.nil? && doctypes.match(title_main_en.text)
|
53
|
+
warn "Main Title may name document type"
|
54
|
+
end
|
55
|
+
title_intro_en = root.at("//title[@type='title-intro' and @language='en']")
|
56
|
+
if !title_intro_en.nil? && doctypes.match(title_intro_en.text)
|
57
|
+
warn "Title Intro may name document type"
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
61
|
+
# ISO/IEC DIR 2, 22.2
|
62
|
+
def title_first_level_validate(root)
|
63
|
+
root.xpath(SECTIONS_XPATH).each do |s|
|
64
|
+
title = s&.at("./title")&.text || s.name
|
65
|
+
s.xpath("./clause | ./terms | ./references").each do |ss|
|
66
|
+
subtitle = ss.at("./title")
|
67
|
+
!subtitle.nil? && !subtitle&.text&.empty? ||
|
68
|
+
warn("#{title}: each first-level subclause must have a title")
|
69
|
+
end
|
70
|
+
end
|
71
|
+
end
|
72
|
+
|
73
|
+
# ISO/IEC DIR 2, 22.2
|
74
|
+
def title_all_siblings(xpath, label)
|
75
|
+
notitle = false
|
76
|
+
withtitle = false
|
77
|
+
xpath.each do |s|
|
78
|
+
title_all_siblings(s.xpath("./clause | ./terms | ./references"),
|
79
|
+
s&.at("./title")&.text || s["id"])
|
80
|
+
subtitle = s.at("./title")
|
81
|
+
notitle = notitle || (!subtitle || subtitle.text.empty?)
|
82
|
+
withtitle = withtitle || (subtitle && !subtitle.text.empty?)
|
83
|
+
end
|
84
|
+
notitle && withtitle &&
|
85
|
+
warn("#{label}: all subclauses must have a title, or none")
|
86
|
+
end
|
87
|
+
|
88
|
+
def title_validate(root)
|
89
|
+
title_intro_validate(root)
|
90
|
+
title_main_validate(root)
|
91
|
+
title_part_validate(root)
|
92
|
+
title_subpart_validate(root)
|
93
|
+
title_names_type_validate(root)
|
94
|
+
title_first_level_validate(root)
|
95
|
+
title_all_siblings(root.xpath(SECTIONS_XPATH), "(top level)")
|
96
|
+
end
|
97
|
+
end
|
98
|
+
end
|
99
|
+
end
|
@@ -15,6 +15,23 @@ p.Sourcecode, li.Sourcecode, div.Sourcecode, pre.Sourcecode
|
|
15
15
|
mso-fareast-font-family:Calibri;
|
16
16
|
mso-bidi-font-family:"Courier New";
|
17
17
|
mso-ansi-language:EN-GB;}
|
18
|
+
p.pseudocode, li.pseudocode, div.pseudocode
|
19
|
+
{mso-style-unhide:no;
|
20
|
+
mso-style-qformat:yes;
|
21
|
+
mso-style-parent:"";
|
22
|
+
margin-top:0cm;
|
23
|
+
margin-right:0cm;
|
24
|
+
margin-bottom:12.0pt;
|
25
|
+
margin-left:0cm;
|
26
|
+
text-align:left;
|
27
|
+
line-height:12.0pt;
|
28
|
+
mso-pagination:widow-orphan;
|
29
|
+
tab-stops:20.15pt;
|
30
|
+
font-size:9.0pt;
|
31
|
+
font-family:$bodyfont;
|
32
|
+
mso-fareast-font-family:Calibri;
|
33
|
+
mso-bidi-font-family:"Courier New";
|
34
|
+
mso-ansi-language:EN-GB;}
|
18
35
|
p.Biblio, li.Biblio, div.Biblio
|
19
36
|
{mso-style-unhide:no;
|
20
37
|
mso-style-qformat:yes;
|
@@ -738,6 +755,10 @@ div.example p.MsoListParagraph {
|
|
738
755
|
font-size: 10.0pt;
|
739
756
|
}
|
740
757
|
|
758
|
+
div.Note p.MsoListParagraph {
|
759
|
+
font-size: 10.0pt;
|
760
|
+
}
|
761
|
+
|
741
762
|
span.note_label, span.example_label, td.example_label, td.note_label
|
742
763
|
{
|
743
764
|
font-size: 10.0pt;
|
@@ -627,7 +627,7 @@ font-family: $monospacefont;
|
|
627
627
|
font-variant-ligatures: none;
|
628
628
|
}
|
629
629
|
|
630
|
-
.figure, .Sourcecode {
|
630
|
+
.figure, .Sourcecode, .pseudocode {
|
631
631
|
background-color: #f7f7f7;
|
632
632
|
line-height: 1.6em;
|
633
633
|
padding: 1.5em;
|
@@ -694,7 +694,7 @@ margin-left:-1.5em;
|
|
694
694
|
}
|
695
695
|
|
696
696
|
|
697
|
-
.example .Sourcecode {
|
697
|
+
.example .Sourcecode, .example .pseudocode {
|
698
698
|
background: none;
|
699
699
|
}
|
700
700
|
|
@@ -620,7 +620,7 @@ font-family: $monospacefont;
|
|
620
620
|
font-variant-ligatures: none;
|
621
621
|
}
|
622
622
|
|
623
|
-
.figure, .Sourcecode {
|
623
|
+
.figure, .Sourcecode, .pseudocode {
|
624
624
|
background-color: #f7f7f7;
|
625
625
|
line-height: 1.6em;
|
626
626
|
padding: 1.5em;
|
@@ -685,7 +685,7 @@ margin-top:0;
|
|
685
685
|
}
|
686
686
|
|
687
687
|
|
688
|
-
.example .Sourcecode {
|
688
|
+
.example .Sourcecode, .example .pseudocode {
|
689
689
|
background: none;
|
690
690
|
}
|
691
691
|
|
data/metanorma-iso.gemspec
CHANGED
@@ -29,7 +29,6 @@ Gem::Specification.new do |spec|
|
|
29
29
|
spec.test_files = `git ls-files -- {spec}/*`.split("\n")
|
30
30
|
spec.required_ruby_version = Gem::Requirement.new(">= 2.4.0")
|
31
31
|
|
32
|
-
spec.add_dependency "asciidoctor", "~> 1.5.7"
|
33
32
|
spec.add_dependency "ruby-jing"
|
34
33
|
spec.add_dependency "isodoc", "~> 1.0.0"
|
35
34
|
spec.add_dependency "metanorma-standoc", "~> 1.3.0"
|
@@ -11,14 +11,14 @@ RSpec.describe Asciidoctor::ISO do
|
|
11
11
|
#FileUtils.cd "spec/examples"
|
12
12
|
#Asciidoctor.convert_file "rice.adoc", {:attributes=>{"backend"=>"iso"}, :safe=>0, :header_footer=>true, :requires=>["metanorma-iso"], :failure_level=>4, :mkdirs=>true, :to_file=>nil}
|
13
13
|
#FileUtils.cd "../.."
|
14
|
-
#expect(File.exist?("spec/examples/rice.xml")).to be true
|
15
|
-
#expect(File.exist?("spec/examples/rice.doc")).to be true
|
16
|
-
#expect(File.exist?("spec/examples/rice.html")).to be true
|
17
|
-
#expect(File.exist?("spec/examples/rice_alt.html")).to be true
|
14
|
+
#expect(File.exist?("spec/examples/rice.xml"))).to be true
|
15
|
+
#expect(File.exist?("spec/examples/rice.doc"))).to be true
|
16
|
+
#expect(File.exist?("spec/examples/rice.html"))).to be true
|
17
|
+
#expect(File.exist?("spec/examples/rice_alt.html"))).to be true
|
18
18
|
#end
|
19
19
|
|
20
20
|
it "processes a blank document" do
|
21
|
-
expect(Asciidoctor.convert(<<~"INPUT", backend: :iso, header_footer: true)).to be_equivalent_to <<~"OUTPUT"
|
21
|
+
expect(xmlpp(Asciidoctor.convert(<<~"INPUT", backend: :iso, header_footer: true))).to be_equivalent_to xmlpp(<<~"OUTPUT")
|
22
22
|
#{ASCIIDOC_BLANK_HDR}
|
23
23
|
INPUT
|
24
24
|
#{BLANK_HDR}
|
@@ -29,7 +29,7 @@ RSpec.describe Asciidoctor::ISO do
|
|
29
29
|
|
30
30
|
it "converts a blank document" do
|
31
31
|
FileUtils.rm_f "test.doc"
|
32
|
-
expect(Asciidoctor.convert(<<~"INPUT", backend: :iso, header_footer: true)).to be_equivalent_to <<~"OUTPUT"
|
32
|
+
expect(xmlpp(Asciidoctor.convert(<<~"INPUT", backend: :iso, header_footer: true))).to be_equivalent_to xmlpp(<<~"OUTPUT")
|
33
33
|
= Document title
|
34
34
|
Author
|
35
35
|
:docfile: test.adoc
|
@@ -45,7 +45,7 @@ RSpec.describe Asciidoctor::ISO do
|
|
45
45
|
end
|
46
46
|
|
47
47
|
it "processes default metadata" do
|
48
|
-
expect(Asciidoctor.convert(<<~"INPUT", backend: :iso, header_footer: true)).to be_equivalent_to <<~"OUTPUT"
|
48
|
+
expect(xmlpp(Asciidoctor.convert(<<~"INPUT", backend: :iso, header_footer: true))).to be_equivalent_to xmlpp(<<~"OUTPUT")
|
49
49
|
= Document title
|
50
50
|
Author
|
51
51
|
:docfile: test.adoc
|
@@ -168,7 +168,7 @@ RSpec.describe Asciidoctor::ISO do
|
|
168
168
|
|
169
169
|
|
170
170
|
it "processes complex metadata" do
|
171
|
-
expect(Asciidoctor.convert(<<~"INPUT", backend: :iso, header_footer: true)).to be_equivalent_to <<~'OUTPUT'
|
171
|
+
expect(xmlpp(Asciidoctor.convert(<<~"INPUT", backend: :iso, header_footer: true))).to be_equivalent_to <<~'OUTPUT'
|
172
172
|
= Document title
|
173
173
|
Author
|
174
174
|
:docfile: test.adoc
|
@@ -280,7 +280,7 @@ RSpec.describe Asciidoctor::ISO do
|
|
280
280
|
end
|
281
281
|
|
282
282
|
it "defaults substage" do
|
283
|
-
expect(Asciidoctor.convert(<<~"INPUT", backend: :iso, header_footer: true)).to be_equivalent_to <<~"OUTPUT"
|
283
|
+
expect(xmlpp(Asciidoctor.convert(<<~"INPUT", backend: :iso, header_footer: true))).to be_equivalent_to xmlpp(<<~"OUTPUT")
|
284
284
|
= Document title
|
285
285
|
Author
|
286
286
|
:docfile: test.adoc
|
@@ -342,7 +342,7 @@ OUTPUT
|
|
342
342
|
end
|
343
343
|
|
344
344
|
it "defaults substage for stage 60" do
|
345
|
-
expect(Asciidoctor.convert(<<~"INPUT", backend: :iso, header_footer: true)).to be_equivalent_to <<~"OUTPUT"
|
345
|
+
expect(xmlpp(Asciidoctor.convert(<<~"INPUT", backend: :iso, header_footer: true))).to be_equivalent_to xmlpp(<<~"OUTPUT")
|
346
346
|
= Document title
|
347
347
|
Author
|
348
348
|
:docfile: test.adoc
|
@@ -404,7 +404,7 @@ OUTPUT
|
|
404
404
|
end
|
405
405
|
|
406
406
|
it "populates metadata for PRF" do
|
407
|
-
expect(Asciidoctor.convert(<<~"INPUT", backend: :iso, header_footer: true)).to be_equivalent_to <<~"OUTPUT"
|
407
|
+
expect(xmlpp(Asciidoctor.convert(<<~"INPUT", backend: :iso, header_footer: true))).to be_equivalent_to xmlpp(<<~"OUTPUT")
|
408
408
|
= Document title
|
409
409
|
Author
|
410
410
|
:docfile: test.adoc
|