How to use select_formatter_class method in Behave

Best Python code snippet using behave

_registry.py

Source:_registry.py Github

copy

Full Screen

...59 formatter_class = getattr(formatter_module, class_name, None)60 if formatter_class is None:61 raise ImportError("CLASS NOT FOUND: %s" % scoped_class_name)62 return formatter_class63def select_formatter_class(formatter_name):64 """Resolve the formatter class by:65 * using one of the registered ones66 * loading a user-specified formatter class (like: my.module_name:MyClass)67 :param formatter_name: Name of the formatter or scoped name (as string).68 :return: Formatter class69 :raises: LookupError, if not found.70 :raises: ImportError, if a user-specific formatter class cannot be loaded.71 :raises: ValueError, if formatter name is invalid.72 """73 try:74 return _formatter_registry[formatter_name]75 except KeyError:76 # -- NOT-FOUND:77 if ":" not in formatter_name:78 raise79 # -- OTHERWISE: SCOPED-NAME, try to load a user-specific formatter.80 # MAY RAISE: ImportError81 return load_formatter_class(formatter_name)82def is_formatter_valid(formatter_name):83 """Checks if the formatter is known (registered) or loadable.84 :param formatter_name: Format(ter) name to check (as string).85 :return: True, if formatter is known or can be loaded.86 """87 try:88 formatter_class = select_formatter_class(formatter_name)89 return issubclass(formatter_class, Formatter)90 except (LookupError, ImportError, ValueError):91 return False92def make_formatters(config, stream_openers):93 """Build a list of formatter, used by a behave runner.94 :param config: Configuration object to use.95 :param stream_openers: List of stream openers to use (for formatters).96 :return: List of formatters.97 :raises: LookupError/KeyError if a formatter class is unknown.98 :raises: ImportError, if a formatter class cannot be loaded/resolved.99 """100 # -- BUILD: Formatter list101 default_stream_opener = StreamOpener(stream=sys.stdout)102 formatter_list = []103 for i, name in enumerate(config.format):104 stream_opener = default_stream_opener105 if i < len(stream_openers):106 stream_opener = stream_openers[i]107 formatter_class = select_formatter_class(name)108 formatter_object = formatter_class(stream_opener, config)109 formatter_list.append(formatter_object)...

Full Screen

Full Screen

Automation Testing Tutorials

Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.

LambdaTest Learning Hubs:

YouTube

You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.

Run Behave automation tests on LambdaTest cloud grid

Perform automation testing on 3000+ real desktop and mobile devices online.

Try LambdaTest Now !!

Get 100 minutes of automation test minutes FREE!!

Next-Gen App & Browser Testing Cloud

Was this article helpful?

Helpful

NotHelpful