diff options
author | Tiago Freire <tcfonnet@gmail.com> | 2016-08-19 17:45:04 -0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-08-19 17:45:04 -0300 |
commit | f1cc7e14125c629a831c9dc3f584d2ba11a68e5f (patch) | |
tree | fd70caed1308864436d4852445fa4f4e300fa8e8 | |
parent | Add tests to uptade Record (diff) | |
parent | merge master conflicts (diff) |
Merge pull request #3 from akaKuruma/delete_zone
Merge branch "delete_zone" into "master"
4 files changed, 8 insertions, 9 deletions
diff --git a/lib/powerdnsex/managers/zones_manager.ex b/lib/powerdnsex/managers/zones_manager.ex index 9561be6..ebad7fe 100644 --- a/lib/powerdnsex/managers/zones_manager.ex +++ b/lib/powerdnsex/managers/zones_manager.ex @@ -26,6 +26,7 @@ defmodule PowerDNSex.ZonesManager do server_name |> zone_path(zone_name) |> HttpClient.delete! + |> process_request_response end ### @@ -42,6 +43,7 @@ defmodule PowerDNSex.ZonesManager do defp process_request_response(%Response{body: body, status_code: status}) do case status do + s when s == 204 -> :ok s when s < 300 -> body |> Poison.decode!(as: %Zone{rrsets: [ %ResourceRecordSet{ diff --git a/test/lib/powerdnsex/managers/zones_manager_test.exs b/test/lib/powerdnsex/managers/zones_manager_test.exs index 9f1c324..b3aa5ef 100644 --- a/test/lib/powerdnsex/managers/zones_manager_test.exs +++ b/test/lib/powerdnsex/managers/zones_manager_test.exs @@ -104,18 +104,15 @@ defmodule PowerDNSex.ZonesManagerTest do @tag :zones_manager_delete test "return given correct params" do use_cassette "zones_manager/delete/success" do - req_status = ZonesManager.delete("success-delete.com").status_code - assert req_status == 204 + assert ZonesManager.delete(@valid_zone_test.name) == :ok end end @tag :zones_manager_delete test "return error when zone don't exists" do use_cassette "zones_manager/delete/not_found" do - req = ZonesManager.delete("not_found.com") - assert req.status_code == 422 - assert req.body == - "{\"error\": \"Could not find domain 'not_found.com.'\"}" + response = ZonesManager.delete(@unknown_name) + assert response.error == "Could not find domain '#{@unknown_name}'" end end end diff --git a/test/support/cassettes/zones_manager/delete/not_found.json b/test/support/cassettes/zones_manager/delete/not_found.json index ab1540c..0637299 100644 --- a/test/support/cassettes/zones_manager/delete/not_found.json +++ b/test/support/cassettes/zones_manager/delete/not_found.json @@ -8,10 +8,10 @@ "method": "delete", "options": [], "request_body": "", - "url": "http://cpro36999.systemintegration.locaweb.com.br/api/v1/servers/localhost/zones/not_found.com" + "url": "http://cpro36999.systemintegration.locaweb.com.br/api/v1/servers/localhost/zones/it-will-never-exist.on.the.art." }, "response": { - "body": "{\"error\": \"Could not find domain 'not_found.com.'\"}", + "body": "{\"error\": \"Could not find domain 'it-will-never-exist.on.the.art.'\"}", "headers": { "Access-Control-Allow-Origin": "*", "Connection": "close", diff --git a/test/support/cassettes/zones_manager/delete/success.json b/test/support/cassettes/zones_manager/delete/success.json index 655ebe7..2f3fe90 100644 --- a/test/support/cassettes/zones_manager/delete/success.json +++ b/test/support/cassettes/zones_manager/delete/success.json @@ -8,7 +8,7 @@ "method": "delete", "options": [], "request_body": "", - "url": "http://cpro36999.systemintegration.locaweb.com.br/api/v1/servers/localhost/zones/success-delete.com" + "url": "http://cpro36999.systemintegration.locaweb.com.br/api/v1/servers/localhost/zones/my-domain.art." }, "response": { "body": "", |