Best Python code snippet using behave
_registry.py
Source:_registry.py
...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)...
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.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!