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 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77
|
require 'helper'
class TestCleaner < Test::Unit::TestCase
context "directory in keep_files" do
setup do
clear_dest
stub(Jekyll).configuration do
Jekyll::Configuration::DEFAULTS.merge({'source' => source_dir, 'destination' => dest_dir})
end
FileUtils.mkdir_p(dest_dir('to_keep/child_dir'))
FileUtils.touch(File.join(dest_dir('to_keep'), 'index.html'))
FileUtils.touch(File.join(dest_dir('to_keep/child_dir'), 'index.html'))
@site = Site.new(Jekyll.configuration)
@site.keep_files = ['to_keep/child_dir']
@cleaner = Site::Cleaner.new(@site)
@cleaner.cleanup!
end
teardown do
FileUtils.rm_rf(dest_dir('to_keep'))
end
should "keep the parent directory" do
assert File.exist?(dest_dir('to_keep'))
end
should "keep the child directory" do
assert File.exist?(dest_dir('to_keep/child_dir'))
end
should "keep the file in the directory in keep_files" do
assert File.exist?(File.join(dest_dir('to_keep/child_dir'), 'index.html'))
end
should "delete the file in the directory not in keep_files" do
assert !File.exist?(File.join(dest_dir('to_keep'), 'index.html'))
end
end
context "directory containing no files and non-empty directories" do
setup do
clear_dest
stub(Jekyll).configuration do
Jekyll::Configuration::DEFAULTS.merge({'source' => source_dir, 'destination' => dest_dir})
end
FileUtils.mkdir_p(source_dir('no_files_inside/child_dir'))
FileUtils.touch(File.join(source_dir('no_files_inside/child_dir'), 'index.html'))
@site = Site.new(Jekyll.configuration)
@site.process
@cleaner = Site::Cleaner.new(@site)
@cleaner.cleanup!
end
teardown do
FileUtils.rm_rf(source_dir('no_files_inside'))
FileUtils.rm_rf(dest_dir('no_files_inside'))
end
should "keep the parent directory" do
assert File.exist?(dest_dir('no_files_inside'))
end
should "keep the child directory" do
assert File.exist?(dest_dir('no_files_inside/child_dir'))
end
should "keep the file" do
assert File.exist?(File.join(dest_dir('no_files_inside/child_dir'), 'index.html'))
end
end
end
|