Current section
Files
Jump to
Current section
Files
test/api_test.exs
defmodule ApiTest do
use ExUnit.Case, async: false
use ExVCR.Mock, adapter: ExVCR.Adapter.Hackney
alias Exfacebook.Api
alias Exfacebook.Params
setup_all do
ExVCR.Config.cassette_library_dir("fixture/vcr_cassettes")
:ok
end
# Lets use access_token of test user that was created for one of the
# facebook apps via Dashboard -> Roles -> Test Users
@access_token "EAADGJ4ZBWmDcBALXxlygc6GoIubjuCsNlLZAd6tPGpYsIppJ1TINhgwlg6bfGDyQWK7p0bZA1L12Wx41iEoApQheGPms8eIm1rT4w6htIcEzcl2aaF8Dh4G7hu3jJPE9iQJYrwAk71ZBcJ027QmJeXwDbTNNklQjZAkjgoTZBJOOajh5o9Wsmi"
test "get_object for facebook" do
use_cassette "get_object#me_fields_id_name" do
params = %Params{access_token: @access_token, fields: "id,name"}
{:ok, %{"id" => id, "name" => name}} = Api.get_object(:me, params)
assert id == "127016687734698"
assert name == "Richard Alabgiajbgak Thurnman"
end
end
test "get_connections for authenticated user for feed" do
use_cassette "get_connections#me_fields_id_name" do
params = %Params{access_token: @access_token, fields: "id,name"}
{:ok, %{"data" => collection}} = Api.get_connections("me", :feed, params)
assert Enum.count(collection) == 0
end
end
test "get_connections for feed of page" do
use_cassette "get_connections#majesticcasual_fields_id_name" do
params = %Params{fields: "id,name"}
{:ok, %{"data" => collection}} = Api.get_connections("majesticcasual", :posts, params)
assert Enum.count(collection) == 25
end
end
test "next and prev page for get_connections request" do
use_cassette "get_connections#majesticcasual_fields_id_name" do
response1 = Api.get_connections("majesticcasual", :posts, %Params{fields: "id,name"})
use_cassette "get_connections#majesticcasual_fields_id_name_next_page1" do
response2 = response1 |> Api.next_page
{:ok, %{"data" => [item1 | _]}} = response1
{:ok, %{"data" => [item2 | _]}} = response2
assert item1["id"] != item2["id"]
use_cassette "get_connections#majesticcasual_fields_id_name_prev_page1" do
response3 = response2 |> Api.prev_page
{:ok, %{"data" => [item3 | _]}} = response3
assert item1["id"] == item3["id"]
end
end
end
end
end