36 lines
952 B
Ruby
36 lines
952 B
Ruby
# frozen_string_literal: true
|
|
|
|
require "test_helper"
|
|
|
|
class HrbTest < Minitest::Test
|
|
def test_render
|
|
assert_equal "Hello from Hrb!", rendered.css("h1").text
|
|
assert_equal "This is great!", rendered.css(".test-div > p").text
|
|
end
|
|
|
|
def test_render_file
|
|
assert_equal "2019-06-17", rendered_file.xpath("/html/head/meta[@name='created']/@content").first.value
|
|
assert_equal "This is div #1", rendered_file.css(".container > div:nth(1)").text
|
|
assert_equal "This is div #100", rendered_file.css(".container > div:last-child").text
|
|
end
|
|
|
|
private
|
|
|
|
def rendered
|
|
html = Hrb.render do
|
|
h1 "Hello from Hrb!"
|
|
h2("This is a test")
|
|
div(class: "test-div") do
|
|
p("This is great!")
|
|
end
|
|
end
|
|
|
|
Oga.parse_html(html)
|
|
end
|
|
|
|
def rendered_file
|
|
file = File.join(__dir__, "fixtures", "basic.html.rb")
|
|
Oga.parse_html Hrb.render_file(file, locals: {created: "2019-06-17", numbers: (1..100)})
|
|
end
|
|
end
|