153 lines
4.1 KiB
Ruby
153 lines
4.1 KiB
Ruby
require 'spec_helper'
|
|
|
|
describe "JekyllMinifier" do
|
|
let(:overrides) { Hash.new }
|
|
let(:config) do
|
|
Jekyll.configuration(Jekyll::Utils.deep_merge_hashes({
|
|
"full_rebuild" => true,
|
|
"source" => source_dir,
|
|
"destination" => dest_dir,
|
|
"show_drafts" => true,
|
|
"url" => "http://example.org",
|
|
"name" => "My awesome site",
|
|
"author" => {
|
|
"name" => "Dr. Jekyll"
|
|
},
|
|
"collections" => {
|
|
"my_collection" => { "output" => true },
|
|
"other_things" => { "output" => false }
|
|
}
|
|
}, overrides))
|
|
end
|
|
let(:site) { Jekyll::Site.new(config) }
|
|
let(:context) { make_context(site: site) }
|
|
before(:each) do
|
|
allow(ENV).to receive(:[]).and_call_original
|
|
allow(ENV).to receive(:[]).with('JEKYLL_ENV').and_return('production')
|
|
site.process
|
|
end
|
|
|
|
context "test_atom" do
|
|
it "creates a atom.xml file" do
|
|
expect(Pathname.new(dest_dir("atom.xml"))).to exist
|
|
end
|
|
|
|
let(:atom) { File.read(dest_dir("atom.xml")) }
|
|
|
|
it "puts all the posts in the atom.xml file" do
|
|
expect(atom).to match "http://example.org/random/random.html"
|
|
expect(atom).to match "http://example.org/reviews/test-review-1.html"
|
|
expect(atom).to match "http://example.org/reviews/test-review-2.html"
|
|
end
|
|
|
|
let(:feed) { RSS::Parser.parse(atom) }
|
|
|
|
it "outputs an RSS feed" do
|
|
expect(feed.feed_type).to eql("atom")
|
|
expect(feed.feed_version).to eql("1.0")
|
|
expect(feed.encoding).to eql("UTF-8")
|
|
end
|
|
|
|
it "outputs the link" do
|
|
expect(feed.link.href).to eql("http://example.org/atom.xml")
|
|
end
|
|
end
|
|
|
|
context "test_css" do
|
|
it "creates a assets/css/style.css file" do
|
|
expect(Pathname.new(dest_dir("assets/css/style.css"))).to exist
|
|
end
|
|
|
|
let(:file) { File.read(dest_dir("assets/css/style.css")) }
|
|
|
|
it "ensures assets/css/style.css file has length" do
|
|
expect(file.length).to be > 0
|
|
end
|
|
end
|
|
|
|
context "test_404" do
|
|
it "creates a 404.html file" do
|
|
expect(Pathname.new(dest_dir("404.html"))).to exist
|
|
end
|
|
|
|
let(:file) { File.read(dest_dir("404.html")) }
|
|
|
|
it "ensures 404.html file has length" do
|
|
expect(file.length).to be > 0
|
|
end
|
|
end
|
|
|
|
context "test_index" do
|
|
it "creates a index.html file" do
|
|
expect(Pathname.new(dest_dir("index.html"))).to exist
|
|
end
|
|
|
|
let(:file) { File.read(dest_dir("index.html")) }
|
|
|
|
it "ensures index.html file has length" do
|
|
expect(file.length).to be > 0
|
|
end
|
|
end
|
|
|
|
context "test_random_index" do
|
|
it "creates a random/index.html file" do
|
|
expect(Pathname.new(dest_dir("random/index.html"))).to exist
|
|
end
|
|
|
|
let(:file) { File.read(dest_dir("random/index.html")) }
|
|
|
|
it "ensures random/index.html file has length" do
|
|
expect(file.length).to be > 0
|
|
end
|
|
end
|
|
|
|
context "test_random_random" do
|
|
it "creates a random/random.html file" do
|
|
expect(Pathname.new(dest_dir("random/random.html"))).to exist
|
|
end
|
|
|
|
let(:file) { File.read(dest_dir("random/random.html")) }
|
|
|
|
it "ensures random/random.html file has length" do
|
|
expect(file.length).to be > 0
|
|
end
|
|
end
|
|
|
|
context "test_reviews_index" do
|
|
it "creates a reviews/index.html file" do
|
|
expect(Pathname.new(dest_dir("reviews/index.html"))).to exist
|
|
end
|
|
|
|
let(:file) { File.read(dest_dir("reviews/index.html")) }
|
|
|
|
it "ensures reviews/index.html file has length" do
|
|
expect(file.length).to be > 0
|
|
end
|
|
end
|
|
|
|
context "test_reviews_test-review-1" do
|
|
it "creates a reviews/test-review-1.html file" do
|
|
expect(Pathname.new(dest_dir("reviews/test-review-1.html"))).to exist
|
|
end
|
|
|
|
let(:file) { File.read(dest_dir("reviews/test-review-1.html")) }
|
|
|
|
it "ensures reviews/test-review-1.html file has length" do
|
|
expect(file.length).to be > 0
|
|
end
|
|
end
|
|
|
|
context "test_reviews_test-review-2" do
|
|
it "creates a reviews/test-review-2.html file" do
|
|
expect(Pathname.new(dest_dir("reviews/test-review-2.html"))).to exist
|
|
end
|
|
|
|
let(:file) { File.read(dest_dir("reviews/test-review-2.html")) }
|
|
|
|
it "ensures reviews/test-review-2.html file has length" do
|
|
expect(file.length).to be > 0
|
|
end
|
|
end
|
|
|
|
end
|