You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@trafficcontrol.apache.org by ne...@apache.org on 2016/11/10 17:56:02 UTC

[1/2] incubator-trafficcontrol git commit: create `DeleteDeliveryService` method

Repository: incubator-trafficcontrol
Updated Branches:
  refs/heads/master 579be2a96 -> b48bdf595


create `DeleteDeliveryService` method


Project: http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/commit/04d1f92d
Tree: http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/tree/04d1f92d
Diff: http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/diff/04d1f92d

Branch: refs/heads/master
Commit: 04d1f92d887d7220c1d3203aeeafbc35fd3c2372
Parents: 579be2a
Author: Mike Ball <mi...@gmail.com>
Authored: Fri Nov 4 09:59:46 2016 -0400
Committer: Dave Neuman <ne...@apache.org>
Committed: Thu Nov 10 10:53:57 2016 -0700

----------------------------------------------------------------------
 traffic_ops/client/delivery_service.go          | 15 ++++++
 .../client/delivery_service_resources.go        |  5 ++
 traffic_ops/client/fixtures/delivery_service.go | 23 +++++++---
 .../client/tests/delivery_service_test.go       | 48 ++++++++++++++++++++
 4 files changed, 85 insertions(+), 6 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/04d1f92d/traffic_ops/client/delivery_service.go
----------------------------------------------------------------------
diff --git a/traffic_ops/client/delivery_service.go b/traffic_ops/client/delivery_service.go
index bc902f5..82a677f 100644
--- a/traffic_ops/client/delivery_service.go
+++ b/traffic_ops/client/delivery_service.go
@@ -70,6 +70,17 @@ func (to *Session) UpdateDeliveryService(id string, ds *DeliveryService) (*Deliv
 	return &data, nil
 }
 
+// DeleteDeliveryService deletes the DeliveryService matching the ID it's passed
+func (to *Session) DeleteDeliveryService(id string) (*DeleteDeliveryServiceResponse, error) {
+	var data DeleteDeliveryServiceResponse
+	err := del(to, deliveryServiceEp(id), &data)
+	if err != nil {
+		return nil, err
+	}
+
+	return &data, nil
+}
+
 // DeliveryServiceState gets the DeliveryServiceState for the ID it's passed
 func (to *Session) DeliveryServiceState(id string) (*DeliveryServiceState, error) {
 	var data DeliveryServiceStateResponse
@@ -159,6 +170,10 @@ func put(to *Session, endpoint string, body []byte, respStruct interface{}) erro
 	return makeReq(to, "PUT", endpoint, body, respStruct)
 }
 
+func del(to *Session, endpoint string, respStruct interface{}) error {
+	return makeReq(to, "DELETE", endpoint, nil, respStruct)
+}
+
 func makeReq(to *Session, method, endpoint string, body []byte, respStruct interface{}) error {
 	resp, err := to.request(method, endpoint, body)
 	if err != nil {

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/04d1f92d/traffic_ops/client/delivery_service_resources.go
----------------------------------------------------------------------
diff --git a/traffic_ops/client/delivery_service_resources.go b/traffic_ops/client/delivery_service_resources.go
index 91e8a01..a65734c 100644
--- a/traffic_ops/client/delivery_service_resources.go
+++ b/traffic_ops/client/delivery_service_resources.go
@@ -28,6 +28,11 @@ type DeliveryServiceResponse struct {
 	Alerts   []DeliveryServiceAlert `json:"alerts"`
 }
 
+// DeleteDeliveryServiceResponse ...
+type DeleteDeliveryServiceResponse struct {
+	Alerts []DeliveryServiceAlert `json:"alerts"`
+}
+
 // DeliveryService ...
 type DeliveryService struct {
 	ID                   string                 `json:"id"`

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/04d1f92d/traffic_ops/client/fixtures/delivery_service.go
----------------------------------------------------------------------
diff --git a/traffic_ops/client/fixtures/delivery_service.go b/traffic_ops/client/fixtures/delivery_service.go
index 45d2ef5..6c7bf74 100644
--- a/traffic_ops/client/fixtures/delivery_service.go
+++ b/traffic_ops/client/fixtures/delivery_service.go
@@ -51,16 +51,27 @@ func DeliveryServices() *client.GetDeliveryServiceResponse {
 	}
 }
 
+func alerts() []client.DeliveryServiceAlert {
+	return []client.DeliveryServiceAlert{
+		client.DeliveryServiceAlert{
+			Level: "level",
+			Text:  "text",
+		},
+	}
+}
+
 // DeliveryService returns a default DeliveryServiceResponse to be used for testing.
 func DeliveryService() *client.DeliveryServiceResponse {
 	return &client.DeliveryServiceResponse{
 		Response: DeliveryServices().Response[0],
-		Alerts: []client.DeliveryServiceAlert{
-			client.DeliveryServiceAlert{
-				Level: "level",
-				Text:  "text",
-			},
-		},
+		Alerts:   alerts(),
+	}
+}
+
+// DeleteDeliveryService returns a default DeleteDeliveryServiceResponse to be used for testing.
+func DeleteDeliveryService() *client.DeleteDeliveryServiceResponse {
+	return &client.DeleteDeliveryServiceResponse{
+		Alerts: alerts(),
 	}
 }
 

http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/blob/04d1f92d/traffic_ops/client/tests/delivery_service_test.go
----------------------------------------------------------------------
diff --git a/traffic_ops/client/tests/delivery_service_test.go b/traffic_ops/client/tests/delivery_service_test.go
index 5fe2343..d8691b5 100644
--- a/traffic_ops/client/tests/delivery_service_test.go
+++ b/traffic_ops/client/tests/delivery_service_test.go
@@ -234,6 +234,54 @@ func TestUpdateDeliveryServiceUnauthorized(t *testing.T) {
 	}
 }
 
+func TestDeleteDeliveryService(t *testing.T) {
+	resp := fixtures.DeleteDeliveryService()
+	server := testHelper.ValidHTTPServer(resp)
+	defer server.Close()
+
+	var httpClient http.Client
+	to := client.Session{
+		URL:       server.URL,
+		UserAgent: &httpClient,
+	}
+
+	testHelper.Context(t, "Given the need to test a successful Traffic Ops request to delete a DeliveryService")
+
+	ds, err := to.DeleteDeliveryService("123")
+	if err != nil {
+		testHelper.Error(t, "Should be able to make a request to Traffic Ops")
+	} else {
+		testHelper.Success(t, "Should be able to make a request to Traffic Ops")
+	}
+
+	actual := ds.Alerts[0].Text
+	if actual != "text" {
+		testHelper.Error(t, "Should get back \"text\" for \"Alerts[0].Text\", got: %s", actual)
+	} else {
+		testHelper.Success(t, "Should get back \"text\" for \"Alerts[0].Text\"")
+	}
+}
+
+func TestDeleteDeliveryServiceUnauthorized(t *testing.T) {
+	server := testHelper.InvalidHTTPServer(http.StatusUnauthorized)
+	defer server.Close()
+
+	var httpClient http.Client
+	to := client.Session{
+		URL:       server.URL,
+		UserAgent: &httpClient,
+	}
+
+	testHelper.Context(t, "Given the need to test a failed Traffic Ops request to delete a DeliveryService")
+
+	_, err := to.DeleteDeliveryService("123")
+	if err == nil {
+		testHelper.Error(t, "Should not be able to make a request to Traffic Ops")
+	} else {
+		testHelper.Success(t, "Should not be able to make a request to Traffic Ops")
+	}
+}
+
 func TestDeliveryServiceState(t *testing.T) {
 	resp := fixtures.DeliveryServiceState()
 	server := testHelper.ValidHTTPServer(resp)


[2/2] incubator-trafficcontrol git commit: This closes #52

Posted by ne...@apache.org.
This closes #52


Project: http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/commit/b48bdf59
Tree: http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/tree/b48bdf59
Diff: http://git-wip-us.apache.org/repos/asf/incubator-trafficcontrol/diff/b48bdf59

Branch: refs/heads/master
Commit: b48bdf5952b4658ef1c9546a4b4c824a0cf80173
Parents: 04d1f92
Author: Dave Neuman <ne...@apache.org>
Authored: Thu Nov 10 10:55:37 2016 -0700
Committer: Dave Neuman <ne...@apache.org>
Committed: Thu Nov 10 10:55:37 2016 -0700

----------------------------------------------------------------------

----------------------------------------------------------------------