a
    4ñ»j¤  ã                   @   s    d dl mZ G dd„ deƒZdS )é    )ÚStatusc                   @   s(   e Zd ZdZdd„ Zdd„ Zdd„ ZdS )	ÚReportera[  
    Base class for all reporters.
    A reporter provides an extension point (variant point) for the runner logic.
    A reporter is called after a model element is processed
    (and its result status is known).
    Otherwise, a reporter is similar to a formatter, but it has a simpler API.

    Processing Logic (simplified)::

        config.reporters = ...  #< Configuration (and provision).
        runner.run():
            for feature in runner.features:
                feature.run()     # And feature scenarios, too.
                for reporter in config.reporters:
                    reporter.feature(feature)
            # -- FINALLY:
            for reporter in config.reporters:
                reporter.end()

    An existing formatter can be reused as reporter by using
    :class:`behave.report.formatter_reporter.FormatterAsReporter`.
    c                 C   s
   || _ d S )N)Úconfig)Úselfr   © r   ú:E:\soccer\ml_env\Lib\site-packages\behave/reporter/base.pyÚ__init__   s    zReporter.__init__c                 C   s   |j tjksJ ‚t‚dS )zƒ
        Called after a feature was processed.

        :param feature:  Feature object (as :class:`behave.model.Feature`)
        N)Ústatusr   Z	undefinedÚNotImplementedError)r   Úfeaturer   r   r   r       s    zReporter.featurec                 C   s   dS )zP
        Called after all model elements are processed (optional-hook).
        Nr   )r   r   r   r   Úend)   s    zReporter.endN)Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   r   r   r   r   r      s   	r   N)Zbehave.model_corer   Úobjectr   r   r   r   r   Ú<module>   s   