Example #1
0
def test_localize_text(monkeypatch):
    translation = "translation"
    monkeypatch.setattr("flask_babel.gettext", lambda: translation)

    assert localize_text(translation) == translation

    # Test no-string input
    with pytest.raises(AssertionError):
        localize_text(1)

    # Test None input
    with pytest.raises(AssertionError):
        localize_text(None)
Example #2
0
 def post(self):
     request_body = request.get_json()
     if request_body is None:
         message = localize_text("empty_post_body")
         raise BadRequestError(message=message)
     try:
         data = self.schema().load(request_body)
     except SchemaValidationError as err:
         raise ValidationError(errors=err.messages)
     item = self._service().create(data)
     return APIResponse().create_response(item=item, schema=self.schema)
Example #3
0
 def put(self, id: int):
     self._update_params({"id": id})
     request_body = request.get_json()
     if request_body is None:
         message = localize_text("empty_put_body")
         raise BadRequestError(message=message)
     schema = self.schema
     assert schema is not None and issubclass(schema, BaseSchema)
     try:
         data = schema().load(request_body)
     except SchemaValidationError as err:
         raise ValidationError(errors=err.messages)
     item = self._get_item_by_id_or_not_found(id)
     item = self._service().update(item, data)
     return APIResponse().create_response(item=item, schema=schema)
Example #4
0
 def index(self, args):
     items_per_page: int = args.get("items_per_page") or DEFAULT_ITEMS_PER_PAGE
     page_index: Optional[int] = args.get("page_index")
     start_index: Optional[int] = args.get("start_index")
     if page_index is None and start_index is None:
         error_message = localize_text("missing_page_and_start_index")
         raise BadRequestError(message=error_message)
     query = self._service().list()
     return APIResponse().create_paginated_response(
         query=query,
         items_per_page=items_per_page,
         page_index=page_index,
         start_index=start_index,
         schema=self.schema,
     )
 def __init__(self, **kwargs):
     super().__init__(**kwargs)
     self.message = localize_text("error_validation")
 def __init__(self, **kwargs):
     super().__init__(**kwargs)
     self.message = localize_text("error_not_found")
 def __init__(self, message=None, **kwargs):
     super().__init__(**kwargs)
     self.message = message or localize_text("error_bad_request")
 def doing(self):
     return localize_text(self.value[2])
 def done(self):
     return localize_text(self.value[1])
Example #10
0
 def do(self):
     return localize_text(self.value[0])