new_contents: """Test that a default build of --demo works."""
  
  import io
  import os
  import shutil
  import sys
  
  import pytest
  
  import nikola.plugins.command.init
  from nikola import __main__
  from nikola.utils import LocaleBorg
  
  from ..base import cd
  
  LOCALE_DEFAULT = os.environ.get('NIKOLA_LOCALE_DEFAULT', 'en')
  
  
  def test_index_in_sitemap(build, output_dir):
      sitemap_path = os.path.join(output_dir, "sitemap.xml")
      with io.open(sitemap_path, "r", encoding="utf8") as inf:
          sitemap_data = inf.read()
  
      assert '<loc>https://example.com/</loc>' in sitemap_data
  
  
  def test_avoid_double_slash_in_rss(build, output_dir):
      rss_path = os.path.join(output_dir, "rss.xml")
      with io.open(rss_path, "r", encoding="utf8") as inf:
          rss_data = inf.read()
  
      assert 'https://example.com//' not in rss_data
  
  
  def test_archive_exists(build, output_dir):
      """Ensure the build did something."""
      index_path = os.path.join(output_dir, "archive.html")
      assert os.path.isfile(index_path)
  
  
  @pytest.fixture
  def build(target_dir):
      """Fill the site with demo content and build it."""
      init_command = nikola.plugins.command.init.CommandInit()
      init_command.copy_sample_site(target_dir)
      init_command.create_configuration(target_dir)
  
      src1 = os.path.join(os.path.dirname(__file__),
                          '..', 'data', '1-nolinks.rst')
      dst1 = os.path.join(target_dir, 'posts', '1.rst')
      shutil.copy(src1, dst1)
      # File for Issue #374 (empty post text)
      with io.open(os.path.join(target_dir, 'posts', 'empty.txt'), "w+", encoding="utf8") as outf:
          outf.write(
              ".. title: foobar\n"
              ".. slug: foobar\n"
              ".. date: 2013-03-06 19:08:15\n"
          )
  
      with cd(target_dir):
          __main__.main(["build"])
  
  
  @pytest.fixture
  def output_dir(target_dir):
      return os.path.join(target_dir, "output")
  
  
  @pytest.fixture
  def target_dir(tmpdir):
      tdir = os.path.join(str(tmpdir), 'target')
      yield tdir
  
  
  @pytest.fixture(autouse=True)
  def fixIssue438():
      try:
          yield
      finally:
          try:
              del sys.modules['conf']
          except KeyError:
              pass
  
  
  @pytest.fixture(autouse=True)
  def localeborg_setup():
      """
      Reset the LocaleBorg before and after every test.
      """
      LocaleBorg.reset()
      LocaleBorg.initialize({}, LOCALE_DEFAULT)
      try:
          yield
      finally:
          LocaleBorg.reset()
  
subject: Make the demo build available with pytest.