def test_finishWithBadException(self):
        logger = MemoryLogger()
        action = Action(logger, "unique", TaskLevel(level=[]), "sys:thename")
        class BadException(Exception):
            def __str__(self):
                raise TypeError()
        action.finish(BadException())
        self.assertEqual(logger.messages[0]["reason"],
                         "eliot: unknown, unicode() raised exception")
Scan the path for distributions and populate the cache with
dataset/ETHPy150Open ClusterHQ/eliot/eliot/tests/test_action.py/ActionTests.test_finishWithBadException--crossover with--dataset/ETHPy150Open anzev/hedwig/build/pip/pip/_vendor/distlib/database.py/DistributionPath._generate_cache