summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTiago Freire <tcfonnet@gmail.com>2016-08-19 17:45:04 -0300
committerGitHub <noreply@github.com>2016-08-19 17:45:04 -0300
commitf1cc7e14125c629a831c9dc3f584d2ba11a68e5f (patch)
treefd70caed1308864436d4852445fa4f4e300fa8e8
parentAdd tests to uptade Record (diff)
parentmerge master conflicts (diff)
Merge pull request #3 from akaKuruma/delete_zone
Merge branch "delete_zone" into "master"
-rw-r--r--lib/powerdnsex/managers/zones_manager.ex2
-rw-r--r--test/lib/powerdnsex/managers/zones_manager_test.exs9
-rw-r--r--test/support/cassettes/zones_manager/delete/not_found.json4
-rw-r--r--test/support/cassettes/zones_manager/delete/success.json2
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": "",