/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to bzrlib/tests/__init__.py

Warn if a config variable can't be interpreted as a boolean

Show diffs side-by-side

added added

removed removed

Lines of Context:
14
14
# along with this program; if not, write to the Free Software
15
15
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
16
16
 
17
 
"""Testing framework extensions"""
18
17
 
19
18
# TODO: Perhaps there should be an API to find out if bzr running under the
20
19
# test suite -- some plugins might want to avoid making intrusive changes if
1313
1312
            f.close()
1314
1313
        self.assertEqualDiff(content, s)
1315
1314
 
1316
 
    def assertDocstring(self, expected_docstring, obj):
1317
 
        """Fail if obj does not have expected_docstring"""
1318
 
        if __doc__ is None:
1319
 
            # With -OO the docstring should be None instead
1320
 
            self.assertIs(obj.__doc__, None)
1321
 
        else:
1322
 
            self.assertEqual(expected_docstring, obj.__doc__)
1323
 
 
1324
1315
    def failUnlessExists(self, path):
1325
1316
        """Fail unless path or paths, which may be abs or relative, exist."""
1326
1317
        if not isinstance(path, basestring):
3201
3192
    return result
3202
3193
 
3203
3194
 
3204
 
def workaround_zealous_crypto_random():
3205
 
    """Crypto.Random want to help us being secure, but we don't care here.
3206
 
 
3207
 
    This workaround some test failure related to the sftp server. Once paramiko
3208
 
    stop using the controversial API in Crypto.Random, we may get rid of it.
3209
 
    """
3210
 
    try:
3211
 
        from Crypto.Random import atfork
3212
 
        atfork()
3213
 
    except ImportError:
3214
 
        pass
3215
 
 
3216
 
 
3217
3195
def fork_for_tests(suite):
3218
3196
    """Take suite and start up one runner per CPU by forking()
3219
3197
 
3243
3221
        c2pread, c2pwrite = os.pipe()
3244
3222
        pid = os.fork()
3245
3223
        if pid == 0:
3246
 
            workaround_zealous_crypto_random()
3247
3224
            try:
3248
3225
                os.close(c2pread)
3249
3226
                # Leave stderr and stdout open so we can see test noise
3819
3796
 
3820
3797
 
3821
3798
def _test_suite_modules_to_doctest():
3822
 
    """Return the list of modules to doctest."""
3823
 
    if __doc__ is None:
3824
 
        # GZ 2009-03-31: No docstrings with -OO so there's nothing to doctest
3825
 
        return []
 
3799
    """Return the list of modules to doctest."""   
3826
3800
    return [
3827
3801
        'bzrlib',
3828
3802
        'bzrlib.branchbuilder',