5748: Return the real decoder error for unparseable trash and pull requests.
authorTom Clegg <tom@curoverse.com>
Thu, 7 May 2015 16:38:12 +0000 (12:38 -0400)
committerTom Clegg <tom@curoverse.com>
Fri, 8 May 2015 18:07:46 +0000 (14:07 -0400)
services/keepstore/handler_test.go
services/keepstore/handlers.go

index 5b65cd897fe353cfad0cf0e76047aeb73ac0d7cc..6823ad0fc68f9b86b78a298648d204086aa3b95c 100644 (file)
@@ -636,7 +636,7 @@ func TestPullHandler(t *testing.T) {
                        "Invalid pull request from the data manager",
                        RequestTester{"/pull", data_manager_token, "PUT", bad_json},
                        http.StatusBadRequest,
-                       "Bad Request\n",
+                       "",
                },
        }
 
@@ -740,7 +740,7 @@ func TestTrashHandler(t *testing.T) {
                        "Invalid trash list from the data manager",
                        RequestTester{"/trash", data_manager_token, "PUT", bad_json},
                        http.StatusBadRequest,
-                       "Bad Request\n",
+                       "",
                },
        }
 
@@ -798,7 +798,7 @@ func ExpectBody(
        testname string,
        expected_body string,
        response *httptest.ResponseRecorder) {
-       if response.Body.String() != expected_body {
+       if expected_body != "" && response.Body.String() != expected_body {
                t.Errorf("%s: expected response body '%s', got %+v",
                        testname, expected_body, response)
        }
index e0e3c6174ada43a2e60c09a01b319831d6ff0d70..cf5dfcac57a2e93b1bde9fa8a2bfcc60d01a186c 100644 (file)
@@ -409,7 +409,7 @@ func PullHandler(resp http.ResponseWriter, req *http.Request) {
        var pr []PullRequest
        r := json.NewDecoder(req.Body)
        if err := r.Decode(&pr); err != nil {
-               http.Error(resp, BadRequestError.Error(), BadRequestError.HTTPCode)
+               http.Error(resp, err.Error(), BadRequestError.HTTPCode)
                return
        }
 
@@ -443,7 +443,7 @@ func TrashHandler(resp http.ResponseWriter, req *http.Request) {
        var trash []TrashRequest
        r := json.NewDecoder(req.Body)
        if err := r.Decode(&trash); err != nil {
-               http.Error(resp, BadRequestError.Error(), BadRequestError.HTTPCode)
+               http.Error(resp, err.Error(), BadRequestError.HTTPCode)
                return
        }