Exemplo n.º 1
0
    def test_import_zero_modules(self) -> None:
        '''torment.helpers.import_directory(module_base, './mock_import_directories/zero')'''

        self.fail('implement me')

        helpers.import_directory(self.__module__, 'mock_import_directories/zero')

        self.assertFalse(self.mocked_importlib.import_module.called)
Exemplo n.º 2
0
    def test_import_zero_modules(self) -> None:
        '''torment.helpers.import_directory(module_base, './mock_import_directories/zero')'''

        self.fail('implement me')

        helpers.import_directory(self.__module__,
                                 'mock_import_directories/zero')

        self.assertFalse(self.mocked_importlib.import_module.called)
Exemplo n.º 3
0
    def description(self) -> str:
        return super(
        ).description[:-1] + '{0.parameters[services]}) → {0.error}'.format(
            self)

    def run(self) -> None:
        with self.context.assertRaises(self.error.__class__,
                                       msg=self.error.args[0]) as error:
            compose.up(**self.parameters)

        self.exception = error.exception

    def check(self) -> None:
        self.context.assertEqual(self.exception.args, self.error.args)


helpers.import_directory(__name__, os.path.dirname(__file__))


class CallWrapperUnitTest(contexts.TestContext,
                          metaclass=contexts.MetaContext):
    fixture_classes = (CallWrapperFixture, )

    mocks = set()  # type: Set[str]

    mocks.add('call')

    @decorators.mock('_call')
    def mock_call(self) -> None:
        self.patch('_call')
Exemplo n.º 4
0
    def check(self) -> None:
        self.context.assertEqual(self.expected, self.result)


class PowersetFixture(fixtures.Fixture):
    @property
    def description(self) -> str:
        return super().description + '.powerset({0.parameters[iterable]}) == {0.expected}'.format(self)

    def run(self) -> None:
        self.result = list(helpers.powerset(self.parameters['iterable']))

    def check(self) -> None:
        self.context.assertEqual(self.expected, self.result)

helpers.import_directory(__name__, os.path.dirname(__file__))


class HelperUnitTest(contexts.TestContext, metaclass = contexts.MetaContext):
    fixture_classes = (
        EvertFixture,
        ExtendFixture,
        MergeFixture,
        PowersetFixture,
    )


class ImportDirectoryUnitTest(unittest.TestCase):
    def setUp(self) -> None:
        _ = unittest.mock.patch('helpers.importlib', wraps = importlib)
        self.mocked_importlib = _.start()
Exemplo n.º 5
0
            url = self.context.host

        _ = unittest.mock.patch.object(AsyncEtcdClient, '_request', unittest.mock.MagicMock())
        self.mocked_request = _.start()
        self.context.addCleanup(_.stop)

        self.client = AsyncEtcdClient(url, retries = 0)

    def run(self) -> None:
        self.context.loop.run_until_complete(self.client.get(**self.parameters['kwargs']))

    def check(self) -> None:
        self.mocked_request.assert_called_once_with(method = 'GET', **self.expected)


helpers.import_directory(__name__, os.path.dirname(__file__), sort_key = lambda _: -_.count('_') )


class ClientUnitTest(contexts.TestContext, metaclass = contexts.MetaContext):
    mocks = set()  # type: Set[str]

    fixture_classes = (
        AsyncEtcdClientInitFixture,
        AsyncEtcdClientPropertyFixture,
        AsyncEtcdClientGetFixture,
    )

    def __init__(self, *args, **kwargs) -> None:
        super().__init__(*args, **kwargs)

        self.loop = asyncio.get_event_loop()