예제 #1
0
파일: globals.py 프로젝트: tribe29/checkmk
    def __init__(
            self,
            req: http.Request,
            resp: http.Response,
            funnel: OutputFunnel,
            config_obj: Config,
            user: LoggedInUser,  # pylint: disable=redefined-outer-name
            html_obj: Optional[htmllib.html] = None,
            timeout_manager: Optional[TimeoutManager] = None,  # pylint: disable=redefined-outer-name
            theme: Optional[Theme] = None,  # pylint: disable=redefined-outer-name
            display_options: Optional[DisplayOptions] = None,  # pylint: disable=redefined-outer-name
            prefix_logs_with_url: bool = True,
            endpoint: Optional[Endpoint] = None,  # pylint: disable=redefined-outer-name
    ):
        self.html = html_obj
        self.auth_type: Optional[str] = None
        self.timeout_manager = timeout_manager
        self.theme = theme
        self.display_options = display_options
        self.session: Optional[userdb.Session] = None
        self.flashes: Optional[List[str]] = None
        self.translation: Optional[Translation] = None
        self._prefix_logs_with_url = prefix_logs_with_url

        self.endpoint = endpoint
        self.request = req
        self.response = resp
        self.output_funnel = funnel
        self.config = config_obj
        self._user = user
        self.user_errors = UserErrors()

        self._prepend_url_filter = _PrependURLFilter()
        self._web_log_handler: Optional[logging.Handler] = None
예제 #2
0
파일: globals.py 프로젝트: petrows/checkmk
    def __init__(
        self,
        req: http.Request,
        resp: http.Response,
        funnel: OutputFunnel,
        config_obj: Config,
        html_obj: Optional[htmllib.html] = None,
        timeout_manager: Optional[TimeoutManager] = None,  # pylint: disable=redefined-outer-name
        theme: Optional[Theme] = None,  # pylint: disable=redefined-outer-name
        display_options: Optional[DisplayOptions] = None,  # pylint: disable=redefined-outer-name
        prefix_logs_with_url: bool = True,
    ):
        self.html = html_obj
        self.auth_type: Optional[str] = None
        self.timeout_manager = timeout_manager
        self.theme = theme
        self.display_options = display_options
        self.session: Optional[userdb.Session] = None
        self.flashes: Optional[List[str]] = None
        self._prefix_logs_with_url = prefix_logs_with_url

        self.request = req
        self.response = resp
        self.output_funnel = funnel
        self.config = config_obj

        # TODO: cyclical import with config -> globals -> config -> ...
        from cmk.gui.utils.logged_in import LoggedInNobody
        self._user: LoggedInUser = LoggedInNobody()
        # TODO: This needs to be a helper of LoggedInUser
        self.transactions = TransactionManager(req, self._user)
        self.user_errors = UserErrors()

        self._prepend_url_filter = _PrependURLFilter()
        self._web_log_handler: Optional[logging.Handler] = None
예제 #3
0
def test_user_errors_overwrite() -> None:
    errors = UserErrors()
    assert not errors
    errors.add(MKUserError("varname", "Ding"))
    assert errors["varname"] == "Ding"

    errors.add(MKUserError("varname", "Dong"))
    assert errors["varname"] == "Dong"
예제 #4
0
def test_user_errors_non_field_specific_error() -> None:
    errors = UserErrors()
    assert not errors

    errors.add(MKUserError(None, "abc"))

    assert errors
    assert errors[None] == "abc"
예제 #5
0
def test_user_errors_convert_exception_to_str() -> None:
    errors = UserErrors()
    assert not errors
    errors.add(MKUserError("ding", "Ding"))
    assert errors["ding"] == "Ding"
예제 #6
0
def test_user_errors_iter() -> None:
    errors = UserErrors()
    errors.add(MKUserError(None, "abc"))
    errors.add(MKUserError("ding", "aaa"))
    assert sorted(list(errors.values())) == sorted(["aaa", "abc"])
예제 #7
0
def test_user_errors_get_not_existing() -> None:
    assert UserErrors().get("not_existing") is None
예제 #8
0
def test_user_errors_get() -> None:
    errors = UserErrors()
    errors.add(MKUserError("var", "abc"))
    assert errors["var"] == "abc"
    assert errors.get("var") == "abc"