jekyll/test/test_generated_site.rb

44 lines
1.3 KiB
Ruby

require File.dirname(__FILE__) + '/helper'
class TestGeneratedSite < Test::Unit::TestCase
context "generated sites" do
setup do
clear_dest
stub(Jekyll).configuration do
Jekyll::DEFAULTS.merge({'source' => source_dir, 'destination' => dest_dir})
end
@site = Site.new(Jekyll.configuration)
@site.process
@index = File.read(dest_dir('index.html'))
end
should "insert site.posts into the index" do
assert @index.include?("#{@site.posts.size} Posts")
end
should "render post.content" do
latest_post = Dir[source_dir('_posts', '*')].sort.last
post = Post.new(@site, source_dir, '', File.basename(latest_post))
post.transform
assert @index.include?(post.content)
end
should "hide unpublished posts" do
published = Dir[dest_dir('publish_test/2008/02/02/*.html')].map {|f| File.basename(f)}
assert_equal 1, published.size
assert_equal "published.html", published.first
end
should "not copy _posts directory" do
assert !File.exist?(dest_dir('_posts'))
end
should "process other static files and generate correct permalinks" do
assert File.exists?(dest_dir('/about/index.html'))
assert File.exists?(dest_dir('/contacts.html'))
end
end
end