Current section

Files

Jump to
ex_openpay test openpay token_test.exs
Raw

test/openpay/token_test.exs

defmodule ExOpenpay.TokenTest do
use ExUnit.Case
use ExVCR.Mock, adapter: ExVCR.Adapter.Hackney
setup_all do
use_cassette "token_test/setup", match_requests_on: [:query, :request_body] do
customer = Helper.create_test_customer "customer_test2@gmail.com"
new_token = [
card_number: "4111111111111111",
holder_name: "Juan Perez Ramirez",
expiration_year: "20",
expiration_month: "12",
cvv2: "110"
# device_session_id: "",
]
new_token2 = [
card_number: "4111111111111111",
holder_name: "Paco Sanchez Ramirez",
expiration_year: "19",
expiration_month: "10",
cvv2: "210"
# device_session_id: "",
]
case ExOpenpay.Tokens.create new_token2 do
{:ok, token2} ->
case ExOpenpay.Tokens.create new_token do
{:ok, token} -> {:ok, [token: token, token2: token2, customer: customer]}
{:error, err} -> flunk err
end
{:error, err} -> flunk err
end
end
end
@tag disabled: false
test "Create token", %{token: token, token2: _, customer: _} do
assert Map.get(token.card, "card_number") == "411111XXXXXX1111"
end
@tag disabled: false
test "Create works", %{token: token, token2: _, customer: _} do
assert Map.get(token, :id)
end
@tag disabled: false
test "Retrieve single works", %{token: token, token2: _, customer: _} do
use_cassette "token_test/get", match_requests_on: [:query, :request_body] do
case ExOpenpay.Tokens.get Map.get(token, :id) do
{:ok, found} -> assert Map.get(found, :id) == Map.get(token, :id)
{:error, err} -> flunk err
end
end
end
@tag disabled: false
test "Create card with token", %{token: token, token2: _, customer: customer} do
use_cassette "token_test/card_token", match_requests_on: [:query, :request_body] do
card_with_token_params = [
token_id: Map.get(token, :id),
device_session_id: "8VIoXj0hN5dswYHQ9X1mVCiB72M7FY9o"
]
case ExOpenpay.Cards.create :customer, customer.id, card_with_token_params do
{:ok, found} -> assert Map.get(found, :id) == Map.get(token, :id)
{:error, err} -> flunk err
end
end
end
end