blob: 0f84b42fa9e93af0cfc90a670383b804e4733a36 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
|
require "#{File.dirname __FILE__}/../lib/asciidoctor"
require 'rspec/expectations'
require 'tilt'
require 'slim'
Given /the AsciiDoc source/ do |source|
@source = source
end
When /it is converted to html/ do
@output = Asciidoctor.convert @source
#File.open('/tmp/test.adoc', 'w') {|f| f.write @source }
#@output = %x{asciidoc -f compat/asciidoc.conf -o - -s /tmp/test.adoc | XMLLINT_INDENT='' xmllint --format - | tail -n +2}.rstrip
##@output = %x{asciidoc -f compat/asciidoc.conf -o - -s /tmp/test.adoc}
end
When /it is converted to docbook/ do
@output = Asciidoctor.convert @source, :backend => :docbook
end
Then /the result should match the (HTML|XML) source/ do |format, expect|
@output.should == expect
end
Then /the result should match the (HTML|XML) structure/ do |format, expect|
case format
when 'HTML'
options = {:format => :html5}
when 'XML'
options = {:format => :xhtml}
else
options = {}
end
slim_friendly_output = @output.lines.entries.map {|line|
if line.start_with? '<'
line
else
%(|#{line})
end
}.join
Slim::Template.new(options) { slim_friendly_output }.render.should == Slim::Template.new(options) { expect }.render
end
|