[Happydoc-checkins] CVS: HappyDoc3/happydoclib tests.py,1.1,1.2
Brought to you by:
doughellmann,
krlosaqp
|
From: Doug H. <dou...@us...> - 2003-03-16 16:25:08
|
Update of /cvsroot/happydoc/HappyDoc3/happydoclib
In directory sc8-pr-cvs1:/tmp/cvs-serv29191/happydoclib
Modified Files:
tests.py
Log Message:
Write test output to a directory based on the test id.
Move some test logic into the HappyDocRunTest so it can be shared by
different docset tests.
Index: tests.py
===================================================================
RCS file: /cvsroot/happydoc/HappyDoc3/happydoclib/tests.py,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** tests.py 15 Dec 2002 17:01:11 -0000 1.1
--- tests.py 16 Mar 2003 16:25:05 -0000 1.2
***************
*** 63,70 ****
--- 63,72 ----
#
import happydoclib
+ from happydoclib.scanner import Scanner
#
# Module
#
+ __proctor_ignore_module__ = 1
class HappyDocRunTest(unittest.TestCase):
***************
*** 72,87 ****
TEST_OUTPUT_DIRECTORY_BASE = 'TestOutput'
- def getTestName(self):
- return self._TestCase__testMethodName
-
def getOutputDirectory(self):
! return os.path.join(self.TEST_OUTPUT_DIRECTORY_BASE,
! self.getTestName(),
! )
def runHappyDoc(self, *args):
default_args = ( '-q',
'-d', self.getOutputDirectory(),
! '-t', self.getTestName(),
)
#default_args = ( '-d', self.getOutputDirectory(), )
--- 74,90 ----
TEST_OUTPUT_DIRECTORY_BASE = 'TestOutput'
def getOutputDirectory(self):
! id = self.id()
! id_parts = id.split('.')
! id = os.sep.join(id_parts)
! output_dir = os.path.join(self.TEST_OUTPUT_DIRECTORY_BASE,
! id,
! )
! return output_dir
def runHappyDoc(self, *args):
default_args = ( '-q',
'-d', self.getOutputDirectory(),
! '--title', self.id(),
)
#default_args = ( '-d', self.getOutputDirectory(), )
***************
*** 89,91 ****
--- 92,184 ----
happydoc = happydoclib.HappyDoc(all_args)
happydoc.run()
+ return
+
+ def testAllExpectedFilesCreated(self):
+ #
+ # Run HappyDoc to generate output using our docset.
+ #
+ self.runHappyDoc( '-T', self.TEST_DOCSET,
+ os.path.join('TestCases', 'testScanner') )
+ #
+ # Scan the output directory to find what files are there.
+ #
+ scanner = Scanner([self.getOutputDirectory()])
+ #
+ # Build up the list of expected directories,
+ # and make sure they are all present.
+ #
+ root = os.path.join( self.getOutputDirectory(), 'testScanner' )
+ expected_dirs = [ ('levelOne',),
+ ('levelOne', 'levelTwo'),
+ ]
+ expected_dirs = [ apply(os.path.join, (root,) + ed)
+ for ed in expected_dirs
+ ]
+ for dirname in expected_dirs:
+ self.failUnless(os.path.isdir(dirname),
+ '%s is not a directory' % dirname,
+ )
+
+ #
+ # Build up the list of expected files,
+ # and make sure they are all present.
+ #
+ expected_files = [ ('levelOne', 'index.html'),
+ ('levelOne', 'Existing.html'),
+ ('levelOne', 'README.html'),
+ ('levelOne', 'one.html'),
+ ('levelOne', 'levelTwo'),
+ ]
+ expected_files = [ apply(os.path.join, (root,) + ef) for ef in expected_files ]
+ for filename in expected_files:
+ self.failUnless(os.path.exists(filename),
+ '%s does not exist' % filename,
+ )
+ return
+
+ def testSelfDoc(self):
+ #
+ # Run HappyDoc against itself.
+ #
+ self.runHappyDoc( '-T', self.TEST_DOCSET,
+ '-i', 'TestCases',
+ '-i', 'TestOutput',
+ '-i', '^tests.py$',
+ '-i', '^test_.*.py$',
+ os.getcwd(),
+ )
+
+ #
+ # Create a scanner to find the output files generated.
+ #
+ scanner = Scanner([self.getOutputDirectory()])
+ root = self.getOutputDirectory()
+
+ #
+ # Directories to ignore
+ #
+ expected_dirs = [ ('HappyDoc3', 'levelOne',),
+ ('HappyDoc3', 'levelOne', 'levelTwo'),
+ ]
+ expected_dirs = [ apply(os.path.join, (root,) + ed)
+ for ed in expected_dirs
+ ]
+ for dirname in expected_dirs:
+ if os.path.isdir(dirname):
+ self.fail('%s should have been ignored' % dirname)
+
+ #
+ # Directories to document
+ #
+ expected_dirs = [ ('HappyDoc3', 'happydoclib',),
+ ('HappyDoc3', 'happydoclib', 'docset'),
+ ('HappyDoc3', 'happydoclib', 'docstring'),
+ ('HappyDoc3', 'happydoclib', 'parseinfo'),
+ ]
+ expected_dirs = [ apply(os.path.join, (root,) + ed)
+ for ed in expected_dirs
+ ]
+ for dirname in expected_dirs:
+ if not os.path.isdir(dirname):
+ self.fail('%s should not have been ignored' % dirname)
return
|