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
|
# frozen_string_literal: true
require "jekyll-default-layout"
RSpec.configure do |config|
config.expect_with :rspec do |expectations|
expectations.include_chain_clauses_in_custom_matcher_descriptions = true
end
config.mock_with :rspec do |mocks|
mocks.verify_partial_doubles = true
end
config.filter_run_when_matching :focus
config.example_status_persistence_file_path = "spec/examples.txt"
config.disable_monkey_patching!
config.default_formatter = "doc" if config.files_to_run.one?
config.order = :random
Kernel.srand config.seed
end
def fixture_path(fixture)
File.expand_path "./fixtures/#{fixture}", File.dirname(__FILE__)
end
def fixture_site(fixture, override = {})
default_config = {
"source" => fixture_path(fixture),
"destination" => fixture_path("#{fixture}/_site"),
"quiet" => true,
}
config = Jekyll::Utils.deep_merge_hashes(default_config, override)
config = Jekyll.configuration(config)
Jekyll::Site.new(config)
end
def page_by_path(site, path)
site.pages.find { |p| p.path == path }
end
def content_of_file(path)
File.read(File.join(fixture_path("site"), "_site", path))
end
|