Skip to content

Commit

Permalink
PR review changes
Browse files Browse the repository at this point in the history
  • Loading branch information
uittenbroekrobbert committed Jun 27, 2024
1 parent 8887aae commit d34c1ff
Show file tree
Hide file tree
Showing 5 changed files with 24 additions and 14 deletions.
9 changes: 8 additions & 1 deletion script/translate
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,13 @@

if [ "$#" -ne 1 ]
then

echo "Usage: ./translate command"
echo "command is init (caution: only needed once, it creates empty translation files), update, compile"
elif [ "$1" = "compile" ]
exit 1
fi

if [ "$1" = "compile" ]
then
./script/pybabel-for-tad compile -d tad/locale
elif [ "$1" = "init" ]
Expand All @@ -17,4 +21,7 @@ elif [ "$1" = "update" ]
then
./script/pybabel-for-tad extract -F babel-mapping.ini . -o tad/locale/base.pot
./script/pybabel-for-tad update -i tad/locale/base.pot -d tad/locale
else
echo "Unknown command"
exit 1
fi
2 changes: 1 addition & 1 deletion tad/api/deps.py
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ def _create_env(
env.add_extension("jinja2.ext.i18n") # type: ignore
return env # type: ignore

def LocaleTemplateResponse(self, *args: typing.Any, **kwargs: typing.Any) -> _TemplateResponse:
def TemplateResponse(self, *args: typing.Any, **kwargs: typing.Any) -> _TemplateResponse:
content_language = get_supported_translation(get_requested_language(kwargs["request"]))
translations = get_translation(content_language)
kwargs["headers"] = {"Content-Language": ",".join(supported_translations)}
Expand Down
2 changes: 1 addition & 1 deletion tad/api/routes/pages.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,4 +21,4 @@ async def default_layout(
"tasks_service": tasks_service,
"statuses_service": status_service,
}
return templates.LocaleTemplateResponse(request=request, name="default_layout.jinja", context=context)
return templates.TemplateResponse(request=request, name="default_layout.jinja", context=context)
4 changes: 2 additions & 2 deletions tad/api/routes/tasks.py
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,8 @@ async def move_task(
moved_task.next_sibling_id,
)
# todo(Robbert) add error handling for input error or task error handling
return templates.LocaleTemplateResponse(request=request, name="task.jinja", context={"task": task})
return templates.TemplateResponse(request=request, name="task.jinja", context={"task": task})
except Exception:
return templates.LocaleTemplateResponse(
return templates.TemplateResponse(
status_code=status.HTTP_500_INTERNAL_SERVER_ERROR, request=request, name="error.jinja"
)
21 changes: 12 additions & 9 deletions tests/e2e/test_change_lang.py
Original file line number Diff line number Diff line change
@@ -1,13 +1,10 @@
from playwright.sync_api import Cookie, Page, expect


def test_change_language(browser: Page) -> Cookie | None:
# TODO: (Christopher) figure out what we want to do with
# pyright complaining about accessing dict values, which
# we ingnore now.
def get_lang_cookie(browser: Page):
def test_change_language(browser: Page):
def get_lang_cookie(browser: Page) -> Cookie | None:
for cookie in browser.context.cookies():
if cookie["name"] == "lang": # type: ignore
if "name" in cookie and cookie["name"] == "lang":
return cookie
return None

Expand All @@ -20,14 +17,20 @@ def get_lang_cookie(browser: Page):
browser.click("#langselect-nl")
expect(browser.locator("#langselect-nl.selected")).to_be_visible()
lang_cookie = get_lang_cookie(browser)
assert lang_cookie["value"] == "nl" # type: ignore
assert lang_cookie is not None
assert "value" in lang_cookie
assert lang_cookie["value"] == "nl"

browser.click("#langselect-fy")
expect(browser.locator("#langselect-fy.selected")).to_be_visible()
lang_cookie = get_lang_cookie(browser)
assert lang_cookie["value"] == "fy" # type: ignore
assert lang_cookie is not None
assert "value" in lang_cookie
assert lang_cookie["value"] == "fy"

browser.click("#langselect-en")
expect(browser.locator("#langselect-en.selected")).to_be_visible()
lang_cookie = get_lang_cookie(browser)
assert lang_cookie["value"] == "en" # type: ignore
assert lang_cookie is not None
assert "value" in lang_cookie
assert lang_cookie["value"] == "en"

0 comments on commit d34c1ff

Please sign in to comment.