Files
Michael Jones e98c23737e Added more test cases
Tests for Layout, LayoutFactory and setup(app). Resulted in structuring
some code so that LayoutFactory uses other factories to generate the
helpers and handlers for the Layout.
2010-01-09 15:04:28 +00:00

81 lines
2.0 KiB
Python

import unittest
import os
import sphinxtogithub
class MockRenamer(object):
def __call__(self, from_, to):
self.from_ = from_
self.to = to
class TestDirectoryHandler(unittest.TestCase):
def setUp(self):
self.directory = "_static"
self.new_directory = "static"
self.root = os.path.join("build", "html")
renamer = MockRenamer()
self.dir_handler = sphinxtogithub.DirectoryHandler(self.directory, self.root, renamer)
def tearDown(self):
self.dir_handler = None
def testPath(self):
self.assertEqual(self.dir_handler.path(), os.path.join(self.root, self.directory))
def testRelativePath(self):
dir_name = "css"
dir_path = os.path.join(self.root, self.directory, dir_name)
filename = "cssfile.css"
self.assertEqual(
self.dir_handler.relative_path(dir_path, filename),
os.path.join(self.directory, dir_name, filename)
)
def testNewRelativePath(self):
dir_name = "css"
dir_path = os.path.join(self.root, self.directory, dir_name)
filename = "cssfile.css"
self.assertEqual(
self.dir_handler.new_relative_path(dir_path, filename),
os.path.join(self.new_directory, dir_name, filename)
)
def testProcess(self):
self.dir_handler.process()
self.assertEqual(
self.dir_handler.renamer.to,
os.path.join(self.root, self.new_directory)
)
self.assertEqual(
self.dir_handler.renamer.from_,
os.path.join(self.root, self.directory)
)
def testSuite():
suite = unittest.TestSuite()
suite.addTest(TestDirectoryHandler("testPath"))
suite.addTest(TestDirectoryHandler("testRelativePath"))
suite.addTest(TestDirectoryHandler("testNewRelativePath"))
suite.addTest(TestDirectoryHandler("testProcess"))
return suite