コード例 #1
0
    def __init__(self, paths):
        self.paths = paths

        if is_python3():
            self._node_transformer = nodetransformers.TransformToSpecsPython3NodeTransformer()
        else:
            self._node_transformer = nodetransformers.TransformToSpecsNodeTransformer()
コード例 #2
0
ファイル: loader.py プロジェクト: jsenin/mamba
    def _load_helper_methods(self, klass, example_group):
        helper_methods = [method for name, method in self._methods_for(klass) if not self._is_example(method)]

        for method in helper_methods:
            if is_python3():
                example_group.helpers[method.__name__] = method
            else:
                example_group.helpers[method.__name__] = method.im_func
コード例 #3
0
ファイル: loader.py プロジェクト: dex4er/mamba
    def _load_helper_methods_to_execution_context(self, klass, execution_context):
        helper_methods = [method for name, method in self._methods_for(klass) if not self._is_example(method)]

        for method in helper_methods:
            if is_python3():
                setattr(execution_context, method.__name__, types.MethodType(method, execution_context))
            else:
                setattr(execution_context, method.__name__, types.MethodType(method.im_func, execution_context, execution_context.__class__))
コード例 #4
0
    def create_settings(self):
        settings_ = settings.Settings()
        settings_.slow_test_threshold = self.arguments.slow
        settings_.enable_code_coverage = self.arguments.enable_coverage

        if not is_python3():
            settings_.enable_file_watcher = self.arguments.watch

        return settings_
コード例 #5
0
ファイル: example_collector.py プロジェクト: vicdoz/mamba
    def __init__(self, paths):
        self.paths = paths

        if is_python3():
            self._node_transformer = nodetransformers.TransformToSpecsPython3NodeTransformer(
            )
        else:
            self._node_transformer = nodetransformers.TransformToSpecsNodeTransformer(
            )
コード例 #6
0
ファイル: cli.py プロジェクト: deusz/mamba
def _parse_arguments():
    parser = argparse.ArgumentParser()

    parser.add_argument('--version',
                        '-v',
                        default=False,
                        action='store_true',
                        help='Display the version.')
    parser.add_argument(
        '--slow',
        '-s',
        default=0.075,
        type=float,
        help='Slow test threshold in seconds (default: %(default)s)')
    parser.add_argument(
        '--enable-coverage',
        default=False,
        action='store_true',
        help='Enable code coverage measurement (default: %(default)s)')
    parser.add_argument('--coverage-file',
                        default='.coverage',
                        action='store',
                        help='Coverage file (default: %(default)s)')
    parser.add_argument('--format',
                        '-f',
                        default='progress',
                        action='store',
                        choices=['documentation', 'progress'],
                        help='Output format (default: %(default)s)')
    parser.add_argument(
        'specs',
        default=['spec', 'specs'],
        nargs='*',
        help='Specs or directories with specs to run (default: %(default)s)')
    parser.add_argument(
        '--no-color',
        default=False,
        action='store_true',
        help='Turn off all output coloring (default: %(default)s)')
    parser.add_argument('--name',
                        default='',
                        action='store',
                        help='Match name (default: %(default)s)')

    if not is_python3():
        parser.add_argument(
            '--watch',
            '-w',
            default=False,
            action='store_true',
            help=
            'Enable file watching support - not available with python3 (default: %(default)s)'
        )

    return parser.parse_args()
コード例 #7
0
    def create_settings(self):
        settings_ = settings.Settings()
        settings_.slow_test_threshold = self.arguments.slow
        settings_.enable_code_coverage = self.arguments.enable_coverage
        settings_.code_coverage_file = self.arguments.coverage_file
        settings_.format = self.arguments.format
        settings_.no_color = self.arguments.no_color

        if not is_python3():
            settings_.enable_file_watcher = self.arguments.watch

        return settings_
コード例 #8
0
ファイル: cli.py プロジェクト: jvrsantacruz/mamba
def _parse_arguments():
    parser = argparse.ArgumentParser()

    parser.add_argument('--slow', '-s', default=0.075, type=float, help='slow test threshold in seconds (default: %(default)s)')
    parser.add_argument('--enable-coverage', default=False, action='store_true', help='enable code coverage measurement (default: %(default)s)')
    parser.add_argument('specs', default=['spec'], nargs='*', help='specs or directories with specs to run (default: %(default)s)')

    if not is_python3():
        parser.add_argument('--watch', '-w', default=False, action='store_true', help='enable file watching support - not available with python3 (default: %(default)s)')

    args = parser.parse_args()
    return args
コード例 #9
0
def _parse_arguments():
    parser = argparse.ArgumentParser()

    parser.add_argument('--version', '-v', default=False, action='store_true', help='Display the version.')
    parser.add_argument('--slow', '-s', default=0.075, type=float, help='Slow test threshold in seconds (default: %(default)s)')
    parser.add_argument('--enable-coverage', default=False, action='store_true', help='Enable code coverage measurement (default: %(default)s)')
    parser.add_argument('--format', '-f', default='documentation', action='store', choices=['documentation', 'progress', 'expects_docs'], help='Output format (default: %(default)s)')
    parser.add_argument('specs', default=['spec', 'specs'], nargs='*', help='Specs or directories with specs to run (default: %(default)s)')
    parser.add_argument('--no-color', default=False, action='store_true', help='Turn off all output coloring (default: %(default)s)')

    if not is_python3():
        parser.add_argument('--watch', '-w', default=False, action='store_true', help='Enable file watching support - not available with python3 (default: %(default)s)')

    return parser.parse_args()
コード例 #10
0
    def _load_helper_methods_to_execution_context(self, klass,
                                                  execution_context):
        helper_methods = [
            method for name, method in self._methods_for(klass)
            if not self._is_example(method)
        ]

        for method in helper_methods:
            if is_python3():
                setattr(execution_context, method.__name__,
                        types.MethodType(method, execution_context))
            else:
                setattr(
                    execution_context, method.__name__,
                    types.MethodType(method.im_func, execution_context,
                                     execution_context.__class__))
コード例 #11
0
 def _methods_for(self, klass):
     return inspect.getmembers(
         klass, inspect.isfunction if is_python3() else inspect.ismethod)
コード例 #12
0
ファイル: loader.py プロジェクト: javierj/mamba
 def __init__(self):
     self._predicate_for_examples = inspect.isfunction if is_python3() else inspect.ismethod
コード例 #13
0
ファイル: loader.py プロジェクト: dex4er/mamba
 def _methods_for(self, klass):
     return inspect.getmembers(klass, inspect.isfunction if is_python3() else inspect.ismethod)
コード例 #14
0
# -*- coding: utf-8 -*-

from mamba.infrastructure import is_python3

if not is_python3():
    import time
    from watchdog.observers import Observer
    from watchdog.events import LoggingEventHandler, PatternMatchingEventHandler

    class FileWatcher(object):
        def __init__(self, runner):
            self.runner = runner

        def wait_for_events(self):
            event_handler = _RunnerEventHandler(self.runner)
            observer = Observer()
            observer.schedule(event_handler, path='.', recursive=True)
            observer.start()
            try:
                while True:
                    time.sleep(5)
            except KeyboardInterrupt:
                observer.stop()
            observer.join()

    class _RunnerEventHandler(PatternMatchingEventHandler):
        def __init__(self, runner):
            super(_RunnerEventHandler, self).__init__(patterns=['*.py'])
            self.runner = runner

        def on_modified(self, event):
コード例 #15
0
ファイル: file_watcher.py プロジェクト: CrazyPit/mamba
# -*- coding: utf-8 -*-

from mamba.infrastructure import is_python3

if not is_python3():
    import time
    from watchdog.observers import Observer
    from watchdog.events import LoggingEventHandler, PatternMatchingEventHandler


    class FileWatcher(object):

        def __init__(self, runner):
            self.runner = runner

        def wait_for_events(self):
            event_handler = _RunnerEventHandler(self.runner)
            observer = Observer()
            observer.schedule(event_handler, path='.', recursive=True)
            observer.start()
            try:
                while True:
                    time.sleep(5)
            except KeyboardInterrupt:
                observer.stop()
            observer.join()


    class _RunnerEventHandler(PatternMatchingEventHandler):

        def __init__(self, runner):