Rubocop fixes for test/test_new_command.rb

This commit is contained in:
Brint O'Hearn 2016-05-15 23:20:48 -05:00
parent ad98883843
commit c76b458dd5
2 changed files with 27 additions and 28 deletions

View File

@ -76,7 +76,6 @@ AllCops:
- test/test_filters.rb
- test/test_kramdown.rb
- test/test_liquid_renderer.rb
- test/test_new_command.rb
- test/test_page.rb
- test/test_path_sanitization.rb
- test/test_plugin_manager.rb

View File

@ -1,10 +1,10 @@
require 'helper'
require 'jekyll/commands/new'
require "helper"
require "jekyll/commands/new"
class TestNewCommand < JekyllUnitTest
def dir_contents(path)
Dir["#{path}/**/*"].each do |file|
file.gsub! path, ''
file.gsub! path, ""
end
end
@ -12,9 +12,9 @@ class TestNewCommand < JekyllUnitTest
File.expand_path("../lib/site_template", File.dirname(__FILE__))
end
context 'when args contains a path' do
context "when args contains a path" do
setup do
@path = 'new-site'
@path = "new-site"
@args = [@path]
@full_path = File.expand_path(@path, Dir.pwd)
end
@ -23,7 +23,7 @@ class TestNewCommand < JekyllUnitTest
FileUtils.rm_r @full_path
end
should 'create a new directory' do
should "create a new directory" do
refute_exist @full_path
Jekyll::Commands::New.process(@args)
assert_exist @full_path
@ -34,43 +34,43 @@ class TestNewCommand < JekyllUnitTest
refute_exist @full_path
capture_stdout { Jekyll::Commands::New.process(@args) }
assert_exist gemfile
assert_match /gem "jekyll", "#{Jekyll::VERSION}"/, File.read(gemfile)
assert_match /gem "github-pages"/, File.read(gemfile)
assert_match(/gem "jekyll", "#{Jekyll::VERSION}"/, File.read(gemfile))
assert_match(/gem "github-pages"/, File.read(gemfile))
end
should 'display a success message' do
should "display a success message" do
Jekyll::Commands::New.process(@args)
output = Jekyll.logger.messages.last
success_message = "New jekyll site installed in #{@full_path}."
assert_includes output, success_message
end
should 'copy the static files in site template to the new directory' do
should "copy the static files in site template to the new directory" do
static_template_files = dir_contents(site_template).reject do |f|
File.extname(f) == '.erb'
File.extname(f) == ".erb"
end
static_template_files << "/Gemfile"
capture_stdout { Jekyll::Commands::New.process(@args) }
new_site_files = dir_contents(@full_path).reject do |f|
File.extname(f) == '.markdown'
File.extname(f) == ".markdown"
end
assert_same_elements static_template_files, new_site_files
end
should 'process any ERB files' do
should "process any ERB files" do
erb_template_files = dir_contents(site_template).select do |f|
File.extname(f) == '.erb'
File.extname(f) == ".erb"
end
stubbed_date = '2013-01-01'
stubbed_date = "2013-01-01"
allow_any_instance_of(Time).to receive(:strftime) { stubbed_date }
erb_template_files.each do |f|
f.chomp! '.erb'
f.gsub! '0000-00-00', stubbed_date
f.chomp! ".erb"
f.gsub! "0000-00-00", stubbed_date
end
capture_stdout { Jekyll::Commands::New.process(@args) }
@ -82,22 +82,22 @@ class TestNewCommand < JekyllUnitTest
assert_same_elements erb_template_files, new_site_files
end
should 'create blank project' do
should "create blank project" do
blank_contents = %w(/_drafts /_layouts /_posts /index.html)
capture_stdout { Jekyll::Commands::New.process(@args, '--blank') }
capture_stdout { Jekyll::Commands::New.process(@args, "--blank") }
assert_same_elements blank_contents, dir_contents(@full_path)
end
should 'force created folder' do
should "force created folder" do
capture_stdout { Jekyll::Commands::New.process(@args) }
output = capture_stdout { Jekyll::Commands::New.process(@args, '--force') }
output = capture_stdout { Jekyll::Commands::New.process(@args, "--force") }
assert_match(/New jekyll site installed in/, output)
end
end
context 'when multiple args are given' do
context "when multiple args are given" do
setup do
@site_name_with_spaces = 'new site name'
@site_name_with_spaces = "new site name"
@multiple_args = @site_name_with_spaces.split
end
@ -105,23 +105,23 @@ class TestNewCommand < JekyllUnitTest
FileUtils.rm_r File.expand_path(@site_name_with_spaces, Dir.pwd)
end
should 'create a new directory' do
should "create a new directory" do
refute_exist @site_name_with_spaces
capture_stdout { Jekyll::Commands::New.process(@multiple_args) }
assert_exist @site_name_with_spaces
end
end
context 'when no args are given' do
context "when no args are given" do
setup do
@empty_args = []
end
should 'raise an ArgumentError' do
should "raise an ArgumentError" do
exception = assert_raises ArgumentError do
Jekyll::Commands::New.process(@empty_args)
end
assert_equal 'You must specify a path.', exception.message
assert_equal "You must specify a path.", exception.message
end
end
end