예제 #1
0
파일: core.py 프로젝트: Zeliboba5/flaskTest
    def runTest(self):
        from noseapp.core import extensions

        extensions.set('test', dict(test='test'))
        self.assertEqual(extensions.get('test').get('test'), 'test')

        extensions.clear()
        self.assertRaises(extensions.ExtensionNotFound, extensions.get, 'test')
예제 #2
0
    def shared_data(name, data):
        """
        Shared extension to TestCase classes.
        Data will be copied during installation.

        :param name: this is property name in case class
        :type name: str
        :param data: any object
        """
        logger.debug('Shared data "%s"', name)

        return extensions.set(name, data, to_transport=False)
예제 #3
0
파일: base.py 프로젝트: allavlasova/task1
    def shared_extension(name=None, cls=None, args=None, kwargs=None):
        """
        Shared extension to Suite and TestCase instances.
        Use require param on noseapp.Suite class for connect.

        Example::

            import random

            app = NoseApp('my_app')
            app.shared_extension(name='random_int', cls=random.randint, args=(0, 100))

        :param name: extension name
        :type name: str

        :param cls: extension class or callable object
        :type cls: object, callable

        :param args: cls init args
        :type args: tuple

        :param kwargs: cls init kwargs
        :type kwargs: dict

        :raises: ValueError, AttributeError
        """
        if cls is None:
            raise ValueError('cls param is required')

        if name is None and not hasattr(cls, 'name'):
            raise AttributeError(
                '"{}" does not have "name" attribute'.format(cls.__name__),
            )
        elif name is None:
            name = cls.name

        logger.debug('Shared extension "%s"', name)

        return extensions.set(name, cls, to_transport=True, args=args, kwargs=kwargs)
예제 #4
0
파일: base.py 프로젝트: allavlasova/task1
    def shared_data(name, data):
        """
        Shared data to Suite and TestCase instances.
        Data will be copied during installation.

        Example::

            data = {
                'a': 1,
                'b': 2,
                'c': 3,
            }
            app = NoseApp('my_app')
            add.shared_data('data', data)

        :param name: extension name
        :type name: str

        :param data: any object
        """
        logger.debug('Shared data "%s"', name)

        return extensions.set(name, data, to_transport=False)
예제 #5
0
    def shared_extension(name=None, cls=None, args=None, kwargs=None):
        """
        Shared extension to TestCase classes. Use require param in noseapp.Suite class.

        :param name: extension name. this is property name in case class.
        :type name: str
        :param cls: extension class
        :param args, kwargs: class init arguments
        :type args: tuple
        :type kwargs: dict
        """
        if cls is None:
            raise ValueError('cls param is required')

        if name is None and not hasattr(cls, 'name'):
            raise AttributeError(
                '"{}" does not have "name" attribute'.format(cls.__name__),
            )
        elif name is None:
            name = cls.name

        logger.debug('Shared extension "%s"', name)

        return extensions.set(name, cls, to_transport=True, args=args, kwargs=kwargs)