summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorDan Allen <dan.j.allen@gmail.com>2013-04-16 21:37:01 -0700
committerDan Allen <dan.j.allen@gmail.com>2013-04-16 21:37:01 -0700
commit561854dbf0fbbfc5c8f3bb4041bbd101f0cadf02 (patch)
tree4ca3c8984430e17fd87b1b1e10627ac1c1c558d9 /test
parente505663bca195e9b8304cb63c390b74ca9216bc9 (diff)
parent17b9d0210cd0c3c5703a576af9bc9c5123f1569b (diff)
Merge pull request #239 from mojavelinux/docinfo
resolves #116 include docinfo files in header when safe mode < SERVER
Diffstat (limited to 'test')
-rw-r--r--test/document_test.rb77
-rw-r--r--test/fixtures/basic-docinfo.html1
-rw-r--r--test/fixtures/basic-docinfo.xml4
-rw-r--r--test/fixtures/basic.asciidoc4
-rw-r--r--test/fixtures/docinfo.html1
-rw-r--r--test/fixtures/docinfo.xml2
6 files changed, 89 insertions, 0 deletions
diff --git a/test/document_test.rb b/test/document_test.rb
index a45b239f..96d2bcdb 100644
--- a/test/document_test.rb
+++ b/test/document_test.rb
@@ -94,6 +94,7 @@ preamble
context 'Render APIs' do
test 'should render document to string' do
sample_input_path = fixture_path('sample.asciidoc')
+
output = Asciidoctor.render_file(sample_input_path, :header_footer => true)
assert !output.empty?
assert_xpath '/html', output, 1
@@ -103,6 +104,82 @@ preamble
assert_xpath '/html/body/*[@id="header"]/h1[text() = "Document Title"]', output, 1
end
+ test 'should include docinfo files for html backend' do
+ sample_input_path = fixture_path('basic.asciidoc')
+
+ output = Asciidoctor.render_file(sample_input_path,
+ :header_footer => true, :safe => Asciidoctor::SafeMode::SERVER, :attributes => {'docinfo' => ''})
+ assert !output.empty?
+ assert_css 'script[src="modernizr.js"]', output, 1
+ assert_css 'meta[http-equiv="imagetoolbar"]', output, 0
+
+ output = Asciidoctor.render_file(sample_input_path,
+ :header_footer => true, :safe => Asciidoctor::SafeMode::SERVER, :attributes => {'docinfo1' => ''})
+ assert !output.empty?
+ assert_css 'script[src="modernizr.js"]', output, 0
+ assert_css 'meta[http-equiv="imagetoolbar"]', output, 1
+
+ output = Asciidoctor.render_file(sample_input_path,
+ :header_footer => true, :safe => Asciidoctor::SafeMode::SERVER, :attributes => {'docinfo2' => ''})
+ assert !output.empty?
+ assert_css 'script[src="modernizr.js"]', output, 1
+ assert_css 'meta[http-equiv="imagetoolbar"]', output, 1
+ end
+
+ test 'should include docinfo files for docbook backend' do
+ sample_input_path = fixture_path('basic.asciidoc')
+
+ output = Asciidoctor.render_file(sample_input_path,
+ :header_footer => true, :backend => 'docbook', :safe => Asciidoctor::SafeMode::SERVER, :attributes => {'docinfo' => ''})
+ assert !output.empty?
+ assert_css 'productname', output, 0
+ assert_css 'copyright', output, 1
+
+ output = Asciidoctor.render_file(sample_input_path,
+ :header_footer => true, :backend => 'docbook', :safe => Asciidoctor::SafeMode::SERVER, :attributes => {'docinfo1' => ''})
+ assert !output.empty?
+ assert_css 'productname', output, 1
+ assert_css 'copyright', output, 0
+
+ output = Asciidoctor.render_file(sample_input_path,
+ :header_footer => true, :backend => 'docbook', :safe => Asciidoctor::SafeMode::SERVER, :attributes => {'docinfo2' => ''})
+ assert !output.empty?
+ assert_css 'productname', output, 1
+ assert_css 'copyright', output, 1
+ end
+
+ test 'should not include docinfo files by default' do
+ sample_input_path = fixture_path('basic.asciidoc')
+
+ output = Asciidoctor.render_file(sample_input_path,
+ :header_footer => true, :safe => Asciidoctor::SafeMode::SERVER)
+ assert !output.empty?
+ assert_css 'script[src="modernizr.js"]', output, 0
+ assert_css 'meta[http-equiv="imagetoolbar"]', output, 0
+
+ output = Asciidoctor.render_file(sample_input_path,
+ :header_footer => true, :backend => 'docbook', :safe => Asciidoctor::SafeMode::SERVER)
+ assert !output.empty?
+ assert_css 'productname', output, 0
+ assert_css 'copyright', output, 0
+ end
+
+ test 'should not include docinfo files if safe mode is SECURE or greater' do
+ sample_input_path = fixture_path('basic.asciidoc')
+
+ output = Asciidoctor.render_file(sample_input_path,
+ :header_footer => true, :attributes => {'docinfo2' => ''})
+ assert !output.empty?
+ assert_css 'script[src="modernizr.js"]', output, 0
+ assert_css 'meta[http-equiv="imagetoolbar"]', output, 0
+
+ output = Asciidoctor.render_file(sample_input_path,
+ :header_footer => true, :backend => 'docbook', :attributes => {'docinfo2' => ''})
+ assert !output.empty?
+ assert_css 'productname', output, 0
+ assert_css 'copyright', output, 0
+ end
+
test 'should render document in place' do
sample_input_path = fixture_path('sample.asciidoc')
sample_output_path = fixture_path('sample.html')
diff --git a/test/fixtures/basic-docinfo.html b/test/fixtures/basic-docinfo.html
new file mode 100644
index 00000000..2b1cbbbe
--- /dev/null
+++ b/test/fixtures/basic-docinfo.html
@@ -0,0 +1 @@
+<script src="modernizr.js"></script>
diff --git a/test/fixtures/basic-docinfo.xml b/test/fixtures/basic-docinfo.xml
new file mode 100644
index 00000000..0a78b324
--- /dev/null
+++ b/test/fixtures/basic-docinfo.xml
@@ -0,0 +1,4 @@
+<copyright>
+ <year>2013</year>
+ <holder>Acme, Inc.</holder>
+</copyright>
diff --git a/test/fixtures/basic.asciidoc b/test/fixtures/basic.asciidoc
new file mode 100644
index 00000000..fc56ac70
--- /dev/null
+++ b/test/fixtures/basic.asciidoc
@@ -0,0 +1,4 @@
+= Document Title
+Doc Writer <doc.writer@asciidoc.org>
+
+Body content.
diff --git a/test/fixtures/docinfo.html b/test/fixtures/docinfo.html
new file mode 100644
index 00000000..e35e34b7
--- /dev/null
+++ b/test/fixtures/docinfo.html
@@ -0,0 +1 @@
+<meta http-equiv="imagetoolbar" content="false">
diff --git a/test/fixtures/docinfo.xml b/test/fixtures/docinfo.xml
new file mode 100644
index 00000000..37b31159
--- /dev/null
+++ b/test/fixtures/docinfo.xml
@@ -0,0 +1,2 @@
+<productname>Asciidoctor</productname>
+<productnumber>1.0.0</productnumber>