~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to bzrlib/tests/__init__.py

(vila) Rename assertWarns in test_config to avoid clashing with unittest2
 assertWarns. (Vincent Ladeuil)

Show diffs side-by-side

added added

removed removed

Lines of Context:
32
32
import errno
33
33
import itertools
34
34
import logging
 
35
import math
35
36
import os
36
37
import platform
37
38
import pprint
359
360
            return float(''.join(details['benchtime'].iter_bytes()))
360
361
        return getattr(testCase, "_benchtime", None)
361
362
 
 
363
    def _delta_to_float(self, a_timedelta, precision):
 
364
        # This calls ceiling to ensure that the most pessimistic view of time
 
365
        # taken is shown (rather than leaving it to the Python %f operator
 
366
        # to decide whether to round/floor/ceiling. This was added when we
 
367
        # had pyp3 test failures that suggest a floor was happening.
 
368
        shift = 10 ** precision
 
369
        return math.ceil((a_timedelta.days * 86400.0 + a_timedelta.seconds +
 
370
            a_timedelta.microseconds / 1000000.0) * shift) / shift
 
371
 
362
372
    def _elapsedTestTimeString(self):
363
373
        """Return a time string for the overall time the current test has taken."""
364
374
        return self._formatTime(self._delta_to_float(
365
 
            self._now() - self._start_datetime))
 
375
            self._now() - self._start_datetime, 3))
366
376
 
367
377
    def _testTimeString(self, testCase):
368
378
        benchmark_time = self._extractBenchmarkTime(testCase)
3792
3802
 
3793
3803
    :return: (absents, duplicates) absents is a list containing the test found
3794
3804
        in id_list but not in test_suite, duplicates is a list containing the
3795
 
        test found multiple times in test_suite.
 
3805
        tests found multiple times in test_suite.
3796
3806
 
3797
3807
    When using a prefined test id list, it may occurs that some tests do not
3798
3808
    exist anymore or that some tests use the same id. This function warns the
4341
4351
    """Copy test and apply scenario to it.
4342
4352
 
4343
4353
    :param test: A test to adapt.
4344
 
    :param scenario: A tuple describing the scenarion.
 
4354
    :param scenario: A tuple describing the scenario.
4345
4355
        The first element of the tuple is the new test id.
4346
4356
        The second element is a dict containing attributes to set on the
4347
4357
        test.