/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

  • Committer: Aaron Bentley
  • Date: 2007-07-17 13:27:14 UTC
  • mfrom: (2624 +trunk)
  • mto: This revision was merged to the branch mainline in revision 2631.
  • Revision ID: abentley@panoramicfeedback.com-20070717132714-tmzx9khmg9501k51
Merge from bzr.dev

Show diffs side-by-side

added added

removed removed

Lines of Context:
165
165
    def __init__(self, stream, descriptions, verbosity,
166
166
                 bench_history=None,
167
167
                 num_tests=None,
168
 
                 use_numbered_dirs=False,
169
168
                 ):
170
169
        """Construct new TestResult.
171
170
 
196
195
        self.skip_count = 0
197
196
        self.unsupported = {}
198
197
        self.count = 0
199
 
        self.use_numbered_dirs = use_numbered_dirs
200
198
        self._overall_start_time = time.time()
201
199
    
202
200
    def extractBenchmarkTime(self, testCase):
303
301
        for test, err in errors:
304
302
            self.stream.writeln(self.separator1)
305
303
            self.stream.write("%s: " % flavour)
306
 
            if self.use_numbered_dirs:
307
 
                self.stream.write('#%d ' % test.number)
308
304
            self.stream.writeln(self.getDescription(test))
309
305
            if getattr(test, '_get_log', None) is not None:
310
306
                print >>self.stream
333
329
                 bench_history=None,
334
330
                 num_tests=None,
335
331
                 pb=None,
336
 
                 use_numbered_dirs=False,
337
332
                 ):
338
333
        ExtendedTestResult.__init__(self, stream, descriptions, verbosity,
339
 
            bench_history, num_tests, use_numbered_dirs)
 
334
            bench_history, num_tests)
340
335
        if pb is None:
341
336
            self.pb = self.ui.nested_progress_bar()
342
337
            self._supplied_pb = False
378
373
                + self._shortened_test_description(test))
379
374
 
380
375
    def _test_description(self, test):
381
 
        if self.use_numbered_dirs:
382
 
            return '#%d %s' % (self.count,
383
 
                               self._shortened_test_description(test))
384
 
        else:
385
 
            return self._shortened_test_description(test)
 
376
        return self._shortened_test_description(test)
386
377
 
387
378
    def report_error(self, test, err):
388
379
        self.pb.note('ERROR: %s\n    %s\n', 
447
438
        # width needs space for 6 char status, plus 1 for slash, plus 2 10-char
448
439
        # numbers, plus a trailing blank
449
440
        # when NUMBERED_DIRS: plus 5 chars on test number, plus 1 char on space
450
 
        if self.use_numbered_dirs:
451
 
            self.stream.write('%5d ' % self.count)
452
 
            self.stream.write(self._ellipsize_to_right(name,
453
 
                                osutils.terminal_width()-36))
454
 
        else:
455
 
            self.stream.write(self._ellipsize_to_right(name,
456
 
                                osutils.terminal_width()-30))
 
441
        self.stream.write(self._ellipsize_to_right(name,
 
442
                          osutils.terminal_width()-30))
457
443
        self.stream.flush()
458
444
 
459
445
    def _error_summary(self, err):
460
446
        indent = ' ' * 4
461
 
        if self.use_numbered_dirs:
462
 
            indent += ' ' * 6
463
447
        return '%s%s' % (indent, err[1])
464
448
 
465
449
    def report_error(self, test, err):
507
491
                 descriptions=0,
508
492
                 verbosity=1,
509
493
                 bench_history=None,
510
 
                 use_numbered_dirs=False,
511
494
                 list_only=False
512
495
                 ):
513
496
        self.stream = unittest._WritelnDecorator(stream)
514
497
        self.descriptions = descriptions
515
498
        self.verbosity = verbosity
516
499
        self._bench_history = bench_history
517
 
        self.use_numbered_dirs = use_numbered_dirs
518
500
        self.list_only = list_only
519
501
 
520
502
    def run(self, test):
529
511
                              self.verbosity,
530
512
                              bench_history=self._bench_history,
531
513
                              num_tests=test.countTestCases(),
532
 
                              use_numbered_dirs=self.use_numbered_dirs,
533
514
                              )
534
515
        result.stop_early = self.stop_on_failure
535
516
        result.report_starting()
1356
1337
            if isinstance(args[0], (list, basestring)):
1357
1338
                args = args[0]
1358
1339
        else:
1359
 
            ## symbol_versioning.warn(zero_eighteen % "passing varargs to run_bzr",
1360
 
            ##         DeprecationWarning, stacklevel=2)
1361
 
            # not done yet, because too many tests would need to  be updated -
1362
 
            # but please don't do this in new code.  -- mbp 20070626
1363
 
            pass
 
1340
            symbol_versioning.warn(zero_eighteen % "passing varargs to run_bzr",
 
1341
                                   DeprecationWarning, stacklevel=3)
1364
1342
 
1365
1343
        out, err = self._run_bzr_autosplit(args=args,
1366
1344
            retcode=retcode,
1388
1366
        :param kwargs: Keyword arguments which are interpreted by run_bzr
1389
1367
            This function changes the default value of retcode to be 3,
1390
1368
            since in most cases this is run when you expect bzr to fail.
 
1369
 
1391
1370
        :return: (out, err) The actual output of running the command (in case
1392
1371
            you want to do more inspection)
1393
1372
 
1403
1382
                               'commit', '--strict', '-m', 'my commit comment')
1404
1383
        """
1405
1384
        kwargs.setdefault('retcode', 3)
1406
 
        out, err = self.run_bzr(error_regexes=error_regexes, *args, **kwargs)
 
1385
        kwargs['error_regexes'] = error_regexes
 
1386
        out, err = self.run_bzr(*args, **kwargs)
1407
1387
        return out, err
1408
1388
 
1409
1389
    def run_bzr_subprocess(self, *args, **kwargs):
1895
1875
    """
1896
1876
 
1897
1877
    OVERRIDE_PYTHON = 'python'
1898
 
    use_numbered_dirs = False
1899
1878
 
1900
1879
    def check_file_contents(self, filename, expect):
1901
1880
        self.log("check contents of file %s" % filename)
2174
2153
              stop_on_failure=False,
2175
2154
              transport=None, lsprof_timed=None, bench_history=None,
2176
2155
              matching_tests_first=None,
2177
 
              numbered_dirs=None,
2178
2156
              list_only=False,
2179
2157
              random_seed=None,
2180
2158
              exclude_pattern=None,
2181
2159
              ):
2182
 
    use_numbered_dirs = bool(numbered_dirs)
2183
 
 
2184
2160
    TestCase._gather_lsprof_in_benchmarks = lsprof_timed
2185
 
    if numbered_dirs is not None:
2186
 
        TestCaseInTempDir.use_numbered_dirs = use_numbered_dirs
2187
2161
    if verbose:
2188
2162
        verbosity = 2
2189
2163
    else:
2192
2166
                            descriptions=0,
2193
2167
                            verbosity=verbosity,
2194
2168
                            bench_history=bench_history,
2195
 
                            use_numbered_dirs=use_numbered_dirs,
2196
2169
                            list_only=list_only,
2197
2170
                            )
2198
2171
    runner.stop_on_failure=stop_on_failure
2230
2203
             lsprof_timed=None,
2231
2204
             bench_history=None,
2232
2205
             matching_tests_first=None,
2233
 
             numbered_dirs=None,
2234
2206
             list_only=False,
2235
2207
             random_seed=None,
2236
2208
             exclude_pattern=None):
2257
2229
                     lsprof_timed=lsprof_timed,
2258
2230
                     bench_history=bench_history,
2259
2231
                     matching_tests_first=matching_tests_first,
2260
 
                     numbered_dirs=numbered_dirs,
2261
2232
                     list_only=list_only,
2262
2233
                     random_seed=random_seed,
2263
2234
                     exclude_pattern=exclude_pattern)
2272
2243
    suite on a global basis, but it is not encouraged.
2273
2244
    """
2274
2245
    testmod_names = [
 
2246
                   'bzrlib.util.tests.test_bencode',
2275
2247
                   'bzrlib.tests.test_ancestry',
2276
2248
                   'bzrlib.tests.test_annotate',
2277
2249
                   'bzrlib.tests.test_api',
2313
2285
                   'bzrlib.tests.test_https_ca_bundle',
2314
2286
                   'bzrlib.tests.test_identitymap',
2315
2287
                   'bzrlib.tests.test_ignores',
 
2288
                   'bzrlib.tests.test_index',
2316
2289
                   'bzrlib.tests.test_info',
2317
2290
                   'bzrlib.tests.test_inv',
2318
2291
                   'bzrlib.tests.test_knit',
2457
2430
            raise
2458
2431
 
2459
2432
 
2460
 
def clean_selftest_output(root=None, quiet=False):
2461
 
    """Remove all selftest output directories from root directory.
2462
 
 
2463
 
    :param  root:   root directory for clean
2464
 
                    (if ommitted or None then clean current directory).
2465
 
    :param  quiet:  suppress report about deleting directories
2466
 
    """
2467
 
    import re
2468
 
    re_dir = re.compile(r'''test\d\d\d\d\.tmp''')
2469
 
    if root is None:
2470
 
        root = u'.'
2471
 
    for i in os.listdir(root):
2472
 
        if os.path.isdir(i) and re_dir.match(i):
2473
 
            if not quiet:
2474
 
                print 'delete directory:', i
2475
 
            _rmtree_temp_dir(i)
2476
 
 
2477
 
 
2478
2433
class Feature(object):
2479
2434
    """An operating system Feature."""
2480
2435