예제 #1
0
 def _report_traceback(self, exc_info, tb_label='traceback'):
     id_gen = self._traceback_id_gens.setdefault(
         tb_label, itertools.count(0))
     tb_id = advance_iterator(id_gen)
     if tb_id:
         tb_label = '%s-%d' % (tb_label, tb_id)
     self.addDetail(tb_label, content.TracebackContent(exc_info, self))
예제 #2
0
    def getUniqueInteger(self):
        """Get an integer unique to this test.

        Returns an integer that is guaranteed to be unique to this instance.
        Use this when you need an arbitrary integer in your test, or as a
        helper for custom anonymous factory methods.
        """
        return advance_iterator(self._unique_id_gen)
예제 #3
0
    def getUniqueInteger(self):
        """Get an integer unique to this test.

        Returns an integer that is guaranteed to be unique to this instance.
        Use this when you need an arbitrary integer in your test, or as a
        helper for custom anonymous factory methods.
        """
        return advance_iterator(self._unique_id_gen)
예제 #4
0
def combine_details(source_details, target_details):
    """Add every value from source to target deduping common keys."""
    for name, content_object in source_details.items():
        new_name = name
        disambiguator = itertools.count(1)
        while new_name in target_details:
            new_name = '%s-%d' % (name, advance_iterator(disambiguator))
        name = new_name
        target_details[name] = content_object
예제 #5
0
def combine_details(source_details, target_details):
    """Add every value from source to target deduping common keys."""
    for name, content_object in source_details.items():
        new_name = name
        disambiguator = itertools.count(1)
        while new_name in target_details:
            new_name = '%s-%d' % (name, advance_iterator(disambiguator))
        name = new_name
        target_details[name] = content_object
예제 #6
0
 def _report_traceback(self, exc_info, tb_label='traceback'):
     id_gen = self._traceback_id_gens.setdefault(
         tb_label, itertools.count(0))
     while True:
         tb_id = advance_iterator(id_gen)
         if tb_id:
             tb_label = '%s-%d' % (tb_label, tb_id)
         if tb_label not in self.getDetails():
             break
     self.addDetail(tb_label, content.TracebackContent(
         exc_info, self, capture_locals=getattr(
             self, '__testtools_tb_locals__', False)))
예제 #7
0
파일: testcase.py 프로젝트: zaneb/testtools
 def _report_traceback(self, exc_info, tb_label='traceback'):
     id_gen = self._traceback_id_gens.setdefault(
         tb_label, itertools.count(0))
     while True:
         tb_id = advance_iterator(id_gen)
         if tb_id:
             tb_label = '%s-%d' % (tb_label, tb_id)
         if tb_label not in self.getDetails():
             break
     self.addDetail(tb_label, content.TracebackContent(
         exc_info, self, capture_locals=getattr(
             self, '__testtools_tb_locals__', False)))
예제 #8
0
def gather_details(source_dict, target_dict):
    """Merge the details from `source_dict` into `target_dict`.

    :param source_dict: A dictionary of details will be gathered.
    :param target_dict: A dictionary into which details will be gathered.
    """
    for name, content_object in source_dict.items():
        new_name = name
        disambiguator = itertools.count(1)
        while new_name in target_dict:
            new_name = "%s-%d" % (name, advance_iterator(disambiguator))
        name = new_name
        target_dict[name] = _copy_content(content_object)
예제 #9
0
def gather_details(source_dict, target_dict):
    """Merge the details from ``source_dict`` into ``target_dict``.

    :param source_dict: A dictionary of details will be gathered.
    :param target_dict: A dictionary into which details will be gathered.
    """
    for name, content_object in source_dict.items():
        new_name = name
        disambiguator = itertools.count(1)
        while new_name in target_dict:
            new_name = '%s-%d' % (name, advance_iterator(disambiguator))
        name = new_name
        target_dict[name] = _copy_content(content_object)
예제 #10
0
 def _gather_details(self, getDetails):
     """Merge the details from getDetails() into self.getDetails()."""
     details = getDetails()
     my_details = self.getDetails()
     for name, content_object in details.items():
         new_name = name
         disambiguator = itertools.count(1)
         while new_name in my_details:
             new_name = '%s-%d' % (name, advance_iterator(disambiguator))
         name = new_name
         content_bytes = list(content_object.iter_bytes())
         content_callback = lambda:content_bytes
         self.addDetail(name,
             content.Content(content_object.content_type, content_callback))
예제 #11
0
def gather_details(source_dict, target_dict):
    """Merge the details from ``source_dict`` into ``target_dict``.

    ``gather_details`` evaluates all details in ``source_dict``. Do not use it
    if the details are not ready to be evaluated.

    :param source_dict: A dictionary of details will be gathered.
    :param target_dict: A dictionary into which details will be gathered.
    """
    for name, content_object in source_dict.items():
        new_name = name
        disambiguator = itertools.count(1)
        while new_name in target_dict:
            new_name = '%s-%d' % (name, advance_iterator(disambiguator))
        name = new_name
        target_dict[name] = _copy_content(content_object)
예제 #12
0
def gather_details(source_dict, target_dict):
    """Merge the details from ``source_dict`` into ``target_dict``.

    ``gather_details`` evaluates all details in ``source_dict``. Do not use it
    if the details are not ready to be evaluated.

    :param source_dict: A dictionary of details will be gathered.
    :param target_dict: A dictionary into which details will be gathered.
    """
    for name, content_object in source_dict.items():
        new_name = name
        disambiguator = itertools.count(1)
        while new_name in target_dict:
            new_name = "%s-%d" % (name, advance_iterator(disambiguator))
        name = new_name
        target_dict[name] = _copy_content(content_object)