Upgrading the rest of the tests to shoulda
This commit is contained in:
parent
0d05f27fe4
commit
0e132bf2cb
|
@ -1,41 +1,41 @@
|
|||
require File.dirname(__FILE__) + '/helper'
|
||||
|
||||
class TestFilters < Test::Unit::TestCase
|
||||
|
||||
class JekyllFilter
|
||||
include Jekyll::Filters
|
||||
end
|
||||
|
||||
def setup
|
||||
context "filters" do
|
||||
setup do
|
||||
@filter = JekyllFilter.new
|
||||
end
|
||||
|
||||
def test_textilize_with_simple_string
|
||||
should "textilize with simple string" do
|
||||
assert_equal "<p>something <strong>really</strong> simple</p>", @filter.textilize("something *really* simple")
|
||||
end
|
||||
|
||||
def test_array_to_sentence_string_with_no_args
|
||||
should "convert array to sentence string with no args" do
|
||||
assert_equal "", @filter.array_to_sentence_string([])
|
||||
end
|
||||
|
||||
def test_array_to_sentence_string_with_one_arg
|
||||
should "convert array to sentence string with one arg" do
|
||||
assert_equal "1", @filter.array_to_sentence_string([1])
|
||||
assert_equal "chunky", @filter.array_to_sentence_string(["chunky"])
|
||||
end
|
||||
|
||||
def test_array_to_sentence_string_with_two_args
|
||||
should "convert array to sentence string with two args" do
|
||||
assert_equal "1 and 2", @filter.array_to_sentence_string([1, 2])
|
||||
assert_equal "chunky and bacon", @filter.array_to_sentence_string(["chunky", "bacon"])
|
||||
end
|
||||
|
||||
def test_array_to_sentence_string_with_multiple_args
|
||||
should "convert array to sentence string with multiple args" do
|
||||
assert_equal "1, 2, 3, and 4", @filter.array_to_sentence_string([1, 2, 3, 4])
|
||||
assert_equal "chunky, bacon, bits, and pieces", @filter.array_to_sentence_string(["chunky", "bacon", "bits", "pieces"])
|
||||
end
|
||||
|
||||
def test_xml_escape_with_ampersands
|
||||
should "escape xml with ampersands" do
|
||||
assert_equal "AT&T", @filter.xml_escape("AT&T")
|
||||
assert_equal "<code>command &lt;filename&gt;</code>", @filter.xml_escape("<code>command <filename></code>")
|
||||
end
|
||||
|
||||
end
|
||||
end
|
||||
|
|
|
@ -1,7 +1,8 @@
|
|||
require File.dirname(__FILE__) + '/helper'
|
||||
|
||||
class TestGeneratedSite < Test::Unit::TestCase
|
||||
def setup
|
||||
context "generated sites" do
|
||||
setup do
|
||||
clear_dest
|
||||
@source = File.join(File.dirname(__FILE__), *%w[source])
|
||||
@s = Site.new(@source, dest_dir)
|
||||
|
@ -9,13 +10,11 @@ class TestGeneratedSite < Test::Unit::TestCase
|
|||
@index = File.read(File.join(dest_dir, 'index.html'))
|
||||
end
|
||||
|
||||
def test_site_posts_in_index
|
||||
# confirm that {{ site.posts }} is working
|
||||
should "insert site.posts into the index" do
|
||||
assert @index.include?("#{@s.posts.size} Posts")
|
||||
end
|
||||
|
||||
def test_post_content_in_index
|
||||
# confirm that the {{ post.content }} is rendered OK
|
||||
should "render post.content" do
|
||||
latest_post = Dir[File.join(@source, '_posts/*')].last
|
||||
post = Post.new(@source, '', File.basename(latest_post))
|
||||
Jekyll.content_type = post.determine_content_type
|
||||
|
@ -23,10 +22,12 @@ class TestGeneratedSite < Test::Unit::TestCase
|
|||
assert @index.include?(post.content)
|
||||
end
|
||||
|
||||
def test_unpublished_posts_are_hidden
|
||||
should "hide unpublished posts" do
|
||||
published = Dir[File.join(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
|
||||
|
||||
end
|
||||
end
|
||||
|
|
|
@ -1,28 +1,24 @@
|
|||
require File.dirname(__FILE__) + '/helper'
|
||||
|
||||
class TestSite < Test::Unit::TestCase
|
||||
def setup
|
||||
@source = File.join(File.dirname(__FILE__), *%w[source])
|
||||
context "creating sites" do
|
||||
setup do
|
||||
@source = File.join(File.dirname(__FILE__), 'source')
|
||||
@s = Site.new(@source, dest_dir)
|
||||
end
|
||||
|
||||
def test_site_init
|
||||
|
||||
end
|
||||
|
||||
def test_read_layouts
|
||||
should "read layouts" do
|
||||
@s.read_layouts
|
||||
|
||||
assert_equal ["default", "simple"].sort, @s.layouts.keys.sort
|
||||
end
|
||||
|
||||
def test_read_posts
|
||||
should "read posts" do
|
||||
@s.read_posts('')
|
||||
posts = Dir[File.join(@source, '_posts/*')]
|
||||
assert_equal posts.size - 1, @s.posts.size
|
||||
end
|
||||
|
||||
def test_site_payload
|
||||
should "deploy payload" do
|
||||
clear_dest
|
||||
@s.process
|
||||
|
||||
|
@ -33,4 +29,5 @@ class TestSite < Test::Unit::TestCase
|
|||
assert_equal categories, @s.categories.keys.sort
|
||||
assert_equal 3, @s.categories['foo'].size
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
require File.dirname(__FILE__) + '/helper'
|
||||
|
||||
class TestTags < Test::Unit::TestCase
|
||||
|
||||
def setup
|
||||
context "tagging" do
|
||||
setup do
|
||||
@content = <<CONTENT
|
||||
---
|
||||
layout: post
|
||||
|
@ -19,7 +19,7 @@ puts "bye"
|
|||
CONTENT
|
||||
end
|
||||
|
||||
def test_markdown_with_pygments_line_handling
|
||||
should "render markdown with pygments line handling" do
|
||||
Jekyll.pygments = true
|
||||
Jekyll.content_type = :markdown
|
||||
|
||||
|
@ -27,5 +27,5 @@ CONTENT
|
|||
result = Jekyll.markdown_proc.call(result)
|
||||
assert_no_match(/markdown\-html\-error/,result)
|
||||
end
|
||||
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in New Issue