```ruby
$LOAD_PATH.unshift File.expand_path('../../lib', __FILE__)
require 'jekyll'
require 'jekyll-seo-tag'
require 'html/proofer'

ENV["JEKYLL_LOG_LEVEL"] = "error"

def dest_dir
  File.expand_path("../tmp/dest",   File.dirname(__FILE__))
end

def source_dir
  File.expand_path("./fixtures", File.dirname(__FILE__))
end

CONFIG_DEFAULTS = {
  "source"      => source_dir,
  "destination" => dest_dir,
  "gems"        => ["jekyll-seo-tag"]
}

def page(options={})
  page = Jekyll::Page.new site, CONFIG_DEFAULTS["source"], "", "page.md"
  page.data = options
  page
end

def post(options={})
  page = Jekyll::Post.new site, CONFIG_DEFAULTS["source"], "", "2015-01-01-post.md"
  page.data = options
  page
end

def site(options={})
  config = Jekyll.configuration CONFIG_DEFAULTS.merge(options)
  Jekyll::Site.new(config)
end

def context(registers={})
  Liquid::Context.new({}, {}, { :site => site, :page => page }.merge(registers))
end
```

Update tests to work with Jekyll 3
user
```ruby
$LOAD_PATH.unshift File.expand_path('../../lib', __FILE__)
require 'jekyll'
require 'jekyll-seo-tag'
require 'html/proofer'

ENV["JEKYLL_LOG_LEVEL"] = "error"

def dest_dir
  File.expand_path("../tmp/dest",   File.dirname(__FILE__))
end

def source_dir
  File.expand_path("./fixtures", File.dirname(__FILE__))
end

CONFIG_DEFAULTS = {
  "source"      => source_dir,
  "destination" => dest_dir,
  "gems"        => ["jekyll-seo-tag"]
}

def page(options={})
  page = Jekyll::Page.new site, CONFIG_DEFAULTS["source"], "", "page.md"
  page.data = options
  page
end

def post(options={})
  filename = File.expand_path("2015-01-01-post.md", CONFIG_DEFAULTS["source"])
  config = { :site => site, :collection => site.collections["posts"] }
  page = Jekyll::Document.new filename, config
  page.merge_data!(options)
  page
end

def site(options={})
  config = Jekyll.configuration CONFIG_DEFAULTS.merge(options)
  Jekyll::Site.new(config)
end

def context(registers={})
  Liquid::Context.new({}, {}, { :site => site, :page => page }.merge(registers))
end
```
assistant