diff options
Diffstat (limited to 'test/zendex/ticket_test.exs')
-rw-r--r-- | test/zendex/ticket_test.exs | 36 |
1 files changed, 29 insertions, 7 deletions
diff --git a/test/zendex/ticket_test.exs b/test/zendex/ticket_test.exs index 6bc4436..2b5a3ce 100644 --- a/test/zendex/ticket_test.exs +++ b/test/zendex/ticket_test.exs @@ -1,16 +1,38 @@ defmodule Zendex.TicketTest do - use ExUnit.Case, async: true + use ExUnit.Case, async: false setup do - [conn: Zendex.Connection.setup("http://test.zendesk.com", "User", "Passw")] + %{conn: Zendex.Connection.setup("http://test.zendesk.com", "User", "Passw")} end - test "getting tickets", context do - assert "ticket" == Zendex.Ticket.list(context[:conn]) + setup_all do + :meck.new(HTTPoison) + on_exit fn -> :meck.unload end + :ok end - test "creating a ticket", context do - assert "Ticket created successfully!" == - Zendex.Ticket.create(context[:conn], %{"ticket": %{}}) + test "getting tickets", %{conn: conn} do + expected = "ticket" + + stub = fn("http://test.zendesk.com/api/v2/tickets.json", _headers) -> + %HTTPoison.Response{body: Poison.encode!(expected)} + end + :meck.expect(HTTPoison, :get!, stub) + + assert expected == Zendex.Ticket.list(conn) + end + + test "creating a ticket", %{conn: conn} do + expected = "Ticket created successfully!" + + stub = fn("http://test.zendesk.com/api/v2/tickets.json", + "{\"ticket\":{\"title\":\"HELP!\"}}", + _headers) -> + %HTTPoison.Response{body: Poison.encode!(expected)} + end + :meck.expect(HTTPoison, :post!, stub) + + assert expected == + Zendex.Ticket.create(conn, %{"ticket": %{"title": "HELP!"}}) end end |