def _uniqueTests(self, things):
        """
        Gather unique suite objects from loaded things. This will guarantee
        uniqueness of inherited methods on TestCases which would otherwise hash
        to same value and collapse to one test unexpectedly if using simpler
        means: e.g. set().
        """
        seen = set()
        for thing in things:
            if isinstance(thing, types.MethodType):
                thing = (thing, thing.im_class)
            else:
                thing = (thing,)

            if thing not in seen:
                yield thing[0]
                seen.add(thing)

        Gather unique suite objects from loaded things. This will guarantee
        uniqueness of inherited methods on TestCases which would otherwise hash
        to same value and collapse to one test unexpectedly if using simpler
        means: e.g. set().
        
stackoverflow/venv/lib/python3.6/site-packages/twisted/trial/runner.py