def test_load_order_component(self):
        loader.set_component('mod1', MockModule('mod1'))
        loader.set_component('mod2', MockModule('mod2', ['mod1']))
        loader.set_component('mod3', MockModule('mod3', ['mod2']))

        self.assertEqual(
            ['mod1', 'mod2', 'mod3'], loader.load_order_component('mod3'))

        # Create circular dependency
        loader.set_component('mod1', MockModule('mod1', ['mod3']))

        self.assertEqual([], loader.load_order_component('mod3'))

        # Depend on non-existing component
        loader.set_component('mod1', MockModule('mod1', ['nonexisting']))

        self.assertEqual([], loader.load_order_component('mod1'))

        # Try to get load order for non-existing component
        self.assertEqual([], loader.load_order_component('mod1'))
:param FilePath top_level: The top-level of the flocker repository.
dataset/ETHPy150Open home-assistant/home-assistant/tests/test_loader.py/TestLoader.test_load_order_component--crossover with--dataset/ETHPy150Open ClusterHQ/flocker/admin/acceptance.py/RunOptions.__init__