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
----------------------------------------------------------------------
----------------------------------------------------------------------