Skip to content

Commit f247d49

Browse files
committed
fix: Covering all patterns and preventing errors
1 parent 5ee4baa commit f247d49

File tree

1 file changed

+14
-8
lines changed

1 file changed

+14
-8
lines changed

lib/extwitter/api/auth.ex

Lines changed: 14 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -7,14 +7,20 @@ defmodule ExTwitter.API.Auth do
77
def request_token(redirect_url \\ nil) do
88
oauth = ExTwitter.Config.get_tuples |> verify_params
99
params = if redirect_url, do: [{"oauth_callback", redirect_url}], else: []
10-
{:ok, {{_, 200, _}, _headers, body}} =
10+
response =
1111
ExTwitter.OAuth.request(:post, request_url("oauth/request_token"),
1212
params, oauth[:consumer_key], oauth[:consumer_secret], "", "")
1313

14-
Elixir.URI.decode_query(to_string body)
15-
|> Enum.map(fn {k,v} -> {String.to_atom(k), v} end)
16-
|> Enum.into(%{})
17-
|> ExTwitter.Parser.parse_request_token
14+
case response do
15+
{:ok, {{_, 200, _}, _headers, body}} ->
16+
token =
17+
Elixir.URI.decode_query(to_string body)
18+
|> Enum.map(fn {k,v} -> {String.to_atom(k), v} end)
19+
|> Enum.into(%{})
20+
|> ExTwitter.Parser.parse_request_token
21+
{:ok, token}
22+
_ -> {:error, :unknown}
23+
end
1824
end
1925

2026
def authorize_url(oauth_token, options \\ %{}) do
@@ -32,16 +38,16 @@ defmodule ExTwitter.API.Auth do
3238
def access_token(verifier, request_token) do
3339
oauth = ExTwitter.Config.get_tuples |> verify_params
3440
response = ExTwitter.OAuth.request(:post, request_url("oauth/access_token"),
35-
[oauth_verifier: verifier], oauth[:consumer_key], oauth[:consumer_secret], request_token, nil)
41+
[{"oauth_verifier", verifier}], oauth[:consumer_key], oauth[:consumer_secret], request_token, nil)
3642
case response do
3743
{:ok, {{_, 200, _}, _headers, body}} ->
3844
access_token = Elixir.URI.decode_query(to_string body)
3945
|> Enum.map(fn {k,v} -> {String.to_atom(k), v} end)
4046
|> Enum.into(%{})
4147
|> ExTwitter.Parser.parse_access_token
4248
{:ok, access_token}
43-
{:ok, {{_, code, _}, _, _}} ->
44-
{:error, code}
49+
_ -> {:error, :unknown}
4550
end
4651
end
4752
end
53+

0 commit comments

Comments
 (0)