diff options
author | kaniini <nenolod@gmail.com> | 2019-07-10 13:27:59 +0000 |
---|---|---|
committer | kaniini <nenolod@gmail.com> | 2019-07-10 13:27:59 +0000 |
commit | f295b9fba9c8e54bd5a92447d55d0c60c0a0cc0c (patch) | |
tree | 0aaf9f3b762f624faee78d409f805feb535780fb /test | |
parent | 42422f3ff2d3a918f04e2d73b8d2f6867a51b5a7 (diff) | |
parent | ed8ce21a224b7b8d7753f2c4f66bfdfd3d9a0e68 (diff) | |
download | pleroma-f295b9fba9c8e54bd5a92447d55d0c60c0a0cc0c.tar.gz |
Merge branch 'localization' into 'develop'
Error Localization
See merge request pleroma/pleroma!1396
Diffstat (limited to 'test')
-rw-r--r-- | test/plugs/set_locale_plug_test.exs | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/test/plugs/set_locale_plug_test.exs b/test/plugs/set_locale_plug_test.exs new file mode 100644 index 000000000..b6c4c1cea --- /dev/null +++ b/test/plugs/set_locale_plug_test.exs @@ -0,0 +1,46 @@ +# Pleroma: A lightweight social networking server +# Copyright © 2017-2018 Pleroma Authors <https://pleroma.social/> +# SPDX-License-Identifier: AGPL-3.0-only + +defmodule Pleroma.Plugs.SetLocalePlugTest do + use ExUnit.Case, async: true + use Plug.Test + + alias Pleroma.Plugs.SetLocalePlug + alias Plug.Conn + + test "default locale is `en`" do + conn = + :get + |> conn("/cofe") + |> SetLocalePlug.call([]) + + assert "en" == Gettext.get_locale() + assert %{locale: "en"} == conn.assigns + end + + test "use supported locale from `accept-language`" do + conn = + :get + |> conn("/cofe") + |> Conn.put_req_header( + "accept-language", + "ru, fr-CH, fr;q=0.9, en;q=0.8, *;q=0.5" + ) + |> SetLocalePlug.call([]) + + assert "ru" == Gettext.get_locale() + assert %{locale: "ru"} == conn.assigns + end + + test "use default locale if locale from `accept-language` is not supported" do + conn = + :get + |> conn("/cofe") + |> Conn.put_req_header("accept-language", "tlh") + |> SetLocalePlug.call([]) + + assert "en" == Gettext.get_locale() + assert %{locale: "en"} == conn.assigns + end +end |