#!/usr/bin/env python
#
# $Id: tests.py,v 1.7 2006/12/05 13:10:45 doughellmann Exp $
#
# Copyright 2002 Doug Hellmann.
#
#
# All Rights Reserved
#
# Permission to use, copy, modify, and distribute this software and
# its documentation for any purpose and without fee is hereby
# granted, provided that the above copyright notice appear in all
# copies and that both that copyright notice and this permission
# notice appear in supporting documentation, and that the name of Doug
# Hellmann not be used in advertising or publicity pertaining to
# distribution of the software without specific, written prior
# permission.
#
# DOUG HELLMANN DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
# INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN
# NO EVENT SHALL DOUG HELLMANN BE LIABLE FOR ANY SPECIAL, INDIRECT OR
# CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS
# OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
# NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
# CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
#
"""Tests for docsets.
"""
__rcs_info__ = {
#
# Creation Information
#
'module_name' : '$RCSfile: tests.py,v $',
'rcs_id' : '$Id: tests.py,v 1.7 2006/12/05 13:10:45 doughellmann Exp $',
'creator' : 'Doug Hellmann',
'project' : 'HappyDoc',
'created' : 'Sun, 17-Nov-2002 14:09:33 EST',
#
# Current Information
#
'author' : '$Author: doughellmann $',
'version' : '$Revision: 1.7 $',
'date' : '$Date: 2006/12/05 13:10:45 $',
}
try:
__version__ = __rcs_info__['version'].split(' ')[1]
except:
__version__ = '0.0'
#
# Import system modules
#
import unittest
#
# Import Local modules
#
from happydoclib.docset import base
#
# Module
#
class TestDocSetBase(unittest.TestCase):
PROCTOR_TEST_CATEGORIES = ( 'docset',
)
def testRequiresWrite(self):
docset = base.DocSetBase(
scanner=None,
title=self.__class__.__name__,
outputDirectory='/tmp',
)
try:
docset.write()
except NotImplementedError:
pass
else:
self.fail('Did not raise NotImplementedError')
return
class TestDocSet(unittest.TestCase):
PROCTOR_TEST_CATEGORIES = ( 'docset',
)
def testFilterNames(self):
docset = base.DocSet(
scanner=None,
title=self.__class__.__name__,
outputDirectory='/tmp',
includePrivateNames=0,
)
name_list = [ 'foo',
'_bar',
'__blah',
'__foobar__',
]
expected = [ 'foo',
'__blah',
'__foobar__',
]
actual = docset._filterNames(name_list)
self.failUnlessEqual(actual, expected)
return
def testNoFilterNames(self):
docset = base.DocSet(
scanner=None,
title=self.__class__.__name__,
outputDirectory='/tmp',
includePrivateNames=1,
)
name_list = [ 'foo',
'_bar',
'__blah',
'__foobar__',
]
expected = name_list
actual = docset._filterNames(name_list)
self.failUnlessEqual(actual, expected)
return
class TestMultiFileDocSet(unittest.TestCase):
PROCTOR_TEST_CATEGORIES = ( 'docset',
'MultiFile',
)
def testRequiresWriteTOCFile(self):
docset = base.MultiFileDocSet(
scanner=None,
title=self.__class__.__name__,
outputDirectory='/tmp',
)
try:
docset.writeTOCFile(None)
except NotImplementedError:
pass
else:
self.fail('Did not raise NotImplementedError')
return
def testRequiresWriteFileHeader(self):
docset = base.MultiFileDocSet(
scanner=None,
title=self.__class__.__name__,
outputDirectory='/tmp',
)
try:
docset.writeFileHeader(None, None)
except NotImplementedError:
pass
else:
self.fail('Did not raise NotImplementedError')
return
def testRequiresWriteFileFooter(self):
docset = base.MultiFileDocSet(
scanner=None,
title=self.__class__.__name__,
outputDirectory='/tmp',
)
try:
docset.writeFileFooter(None)
except NotImplementedError:
pass
else:
self.fail('Did not raise NotImplementedError')
return
def testRequiresProcessPythonFile(self):
docset = base.MultiFileDocSet(
scanner=None,
title=self.__class__.__name__,
outputDirectory='/tmp',
)
try:
docset.processPythonFile(None)
except NotImplementedError:
pass
else:
self.fail('Did not raise NotImplementedError')
return
if __name__ == '__main__':
unittest.main()
|