detect(nil) return error
This commit is contained in:
parent
0743f21847
commit
3fa056a1a3
@ -10,7 +10,7 @@ by adding `localizator` to your list of dependencies in `mix.exs`:
|
||||
```elixir
|
||||
def deps do
|
||||
[
|
||||
{:localizator, "~> 0.1.15"}
|
||||
{:localizator, "~> 0.1.16"}
|
||||
]
|
||||
end
|
||||
```
|
||||
|
@ -8,6 +8,10 @@ defmodule Localizator.Translator.Microsoft do
|
||||
|
||||
@behaviour Localizator.Translator.Base
|
||||
|
||||
@impl true
|
||||
@spec detect(nil) :: {:error, message}
|
||||
def detect(nil), do: {:error, "Couldn't detect language"}
|
||||
|
||||
@impl true
|
||||
@spec detect(text) :: {:ok, locale} | {:error, message}
|
||||
def detect(text) when is_bitstring(text) do
|
||||
@ -21,11 +25,7 @@ defmodule Localizator.Translator.Microsoft do
|
||||
@spec detect(map) :: {:ok, locale} | {:error, message}
|
||||
def detect(map) when is_map(map) do
|
||||
{:ok, sample} = Map.fetch(map, List.first(Map.keys(map)))
|
||||
|
||||
case MicrosoftTranslator.detect(sample) do
|
||||
%{languageCode: locale} -> {:ok, locale}
|
||||
%{} -> {:error, "Couldn't detect language"}
|
||||
end
|
||||
detect(sample)
|
||||
end
|
||||
|
||||
@impl true
|
||||
|
@ -8,6 +8,10 @@ defmodule Localizator.Translator.Yandex do
|
||||
|
||||
@behaviour Localizator.Translator.Base
|
||||
|
||||
@impl true
|
||||
@spec detect(nil) :: {:error, message}
|
||||
def detect(nil), do: {:error, "Couldn't detect language"}
|
||||
|
||||
@impl true
|
||||
@spec detect(text) :: {:ok, locale} | {:error, message}
|
||||
def detect(text) when is_bitstring(text) do
|
||||
@ -21,11 +25,7 @@ defmodule Localizator.Translator.Yandex do
|
||||
@spec detect(map) :: {:ok, locale} | {:error, message}
|
||||
def detect(map) when is_map(map) do
|
||||
{:ok, sample} = Map.fetch(map, List.first(Map.keys(map)))
|
||||
|
||||
case YandexTranslate.detect(sample) do
|
||||
%{languageCode: locale} -> {:ok, locale}
|
||||
%{} -> {:error, "Couldn't detect language"}
|
||||
end
|
||||
detect(sample)
|
||||
end
|
||||
|
||||
@impl true
|
||||
|
Loading…
x
Reference in New Issue
Block a user