diff options
author | Kiran Kamineni <kiran.k.kamineni@intel.com> | 2019-03-14 15:38:13 -0700 |
---|---|---|
committer | Kiran Kamineni <kiran.k.kamineni@intel.com> | 2019-03-22 13:44:09 -0700 |
commit | 4cd4539c71919a322180713c225fe23edf0eb12e (patch) | |
tree | d4dadcf9b98f83dd7edb552b460c6ec177b924cf /src/k8splugin/api/defhandler.go | |
parent | 838ddaa50041ac4c33adeb2c8a33340fdfe2c952 (diff) |
Use httptest instead of http in unit tests
Use httptest instead of http in unit tests similar to:
https://golang.org/pkg/net/http/httptest/#example_ResponseRecorder
Update empty body checking to account for change
Issue-ID: MULTICLOUD-545
Change-Id: Ib9775078c2c9ae2878b714363b569d8d79bd7698
Signed-off-by: Kiran Kamineni <kiran.k.kamineni@intel.com>
Diffstat (limited to 'src/k8splugin/api/defhandler.go')
-rw-r--r-- | src/k8splugin/api/defhandler.go | 20 |
1 files changed, 10 insertions, 10 deletions
diff --git a/src/k8splugin/api/defhandler.go b/src/k8splugin/api/defhandler.go index 44521dd1..f72247ab 100644 --- a/src/k8splugin/api/defhandler.go +++ b/src/k8splugin/api/defhandler.go @@ -18,6 +18,7 @@ package api import ( "encoding/json" + "io" "io/ioutil" "k8splugin/internal/rb" "net/http" @@ -37,13 +38,12 @@ type rbDefinitionHandler struct { func (h rbDefinitionHandler) createHandler(w http.ResponseWriter, r *http.Request) { var v rb.Definition - if r.Body == nil { + err := json.NewDecoder(r.Body).Decode(&v) + switch { + case err == io.EOF: http.Error(w, "Empty body", http.StatusBadRequest) return - } - - err := json.NewDecoder(r.Body).Decode(&v) - if err != nil { + case err != nil: http.Error(w, err.Error(), http.StatusUnprocessableEntity) return } @@ -74,17 +74,17 @@ func (h rbDefinitionHandler) uploadHandler(w http.ResponseWriter, r *http.Reques vars := mux.Vars(r) uuid := vars["rbdID"] - if r.Body == nil { - http.Error(w, "Empty Body", http.StatusBadRequest) - return - } - inpBytes, err := ioutil.ReadAll(r.Body) if err != nil { http.Error(w, "Unable to read body", http.StatusBadRequest) return } + if len(inpBytes) == 0 { + http.Error(w, "Empty body", http.StatusBadRequest) + return + } + err = h.client.Upload(uuid, inpBytes) if err != nil { http.Error(w, err.Error(), http.StatusInternalServerError) |