old_contents: """Test export functions."""
  import unittest
  import unittest.mock
  import io
  import shutil
  import os
  
  from pywal import export
  from pywal import util
  
  
  COLORS = util.read_file_json("tests/test_files/test_file.json")
  COLORS["colors"].update(COLORS["special"])
  
  TMP_DIR = "/tmp/wal"
  
  
  class TestExportColors(unittest.TestCase):
      """Test the export functions."""
  
      def setUp(self):
          """> Setup export tests."""
          util.create_dir(TMP_DIR)
  
      def tearDown(self):
          """> Clean up export tests."""
          shutil.rmtree(TMP_DIR, ignore_errors=True)
  
      def is_file(self, tmp_file):
          """> Test is something is a file."""
          result = os.path.isfile(tmp_file)
          self.assertTrue(result)
  
      def is_file_contents(self, tmp_file, pattern):
          """> Check for pattern in file."""
          content = util.read_file(tmp_file)
          self.assertEqual(content[7], pattern)
  
      def test_all_templates(self):
          """> Test substitutions in template file."""
          tmp_file = os.path.join(TMP_DIR, "colors.sh")
          export.every(COLORS, TMP_DIR)
  
          self.is_file(tmp_file)
          self.is_file_contents(tmp_file, "foreground='#F5F1F4'")
  
      def test_css_template(self):
          """> Test substitutions in template file (css)."""
          tmp_file = os.path.join(TMP_DIR, "test.css")
          export.color(COLORS, "css", tmp_file)
  
          self.is_file(tmp_file)
          self.is_file_contents(tmp_file, "    --background: #1F211E;")
  
  
  class TestInvalidExport(unittest.TestCase):
      """Test export function error handling."""
  
      def test_invalid_template(self):
          """> Test template validation."""
          error_msg = "warning: template 'dummy' doesn't exist."
          tmp_file = os.path.join(TMP_DIR, "test.css")
  
          # Since this function prints a message on fail we redirect
          # it's output so that we can read it.
          with unittest.mock.patch('sys.stdout', new=io.StringIO()) as fake_out:
              export.color(COLORS, "dummy", tmp_file)
              self.assertEqual(fake_out.getvalue().strip(), error_msg)
  
  
  if __name__ == "__main__":
      unittest.main()
  
new_contents: """Test export functions."""
  import unittest
  import unittest.mock
  import io
  import shutil
  import os
  
  from pywal import export
  from pywal import util
  
  
  COLORS = util.read_file_json("tests/test_files/test_file.json")
  COLORS["colors"].update(COLORS["special"])
  
  TMP_DIR = "/tmp/wal"
  
  
  class TestExportColors(unittest.TestCase):
      """Test the export functions."""
  
      def setUp(self):
          """> Setup export tests."""
          util.create_dir(TMP_DIR)
  
      def tearDown(self):
          """> Clean up export tests."""
          shutil.rmtree(TMP_DIR, ignore_errors=True)
  
      def is_file(self, tmp_file):
          """> Test is something is a file."""
          result = os.path.isfile(tmp_file)
          self.assertTrue(result)
  
      def is_file_contents(self, tmp_file, pattern):
          """> Check for pattern in file."""
          content = util.read_file(tmp_file)
          self.assertEqual(content[6], pattern)
  
      def test_all_templates(self):
          """> Test substitutions in template file."""
          tmp_file = os.path.join(TMP_DIR, "colors.sh")
          export.every(COLORS, TMP_DIR)
  
          self.is_file(tmp_file)
          self.is_file_contents(tmp_file, "foreground='#F5F1F4'")
  
      def test_css_template(self):
          """> Test substitutions in template file (css)."""
          tmp_file = os.path.join(TMP_DIR, "test.css")
          export.color(COLORS, "css", tmp_file)
  
          self.is_file(tmp_file)
          self.is_file_contents(tmp_file, "    --background: #1F211E;")
  
  
  class TestInvalidExport(unittest.TestCase):
      """Test export function error handling."""
  
      def test_invalid_template(self):
          """> Test template validation."""
          error_msg = "warning: template 'dummy' doesn't exist."
          tmp_file = os.path.join(TMP_DIR, "test.css")
  
          # Since this function prints a message on fail we redirect
          # it's output so that we can read it.
          with unittest.mock.patch('sys.stdout', new=io.StringIO()) as fake_out:
              export.color(COLORS, "dummy", tmp_file)
              self.assertEqual(fake_out.getvalue().strip(), error_msg)
  
  
  if __name__ == "__main__":
      unittest.main()
  
subject: Fix test