vars := mux.Vars(r)
name := vars["project-name"]
- err := h.client.DeleteProject(name)
+ _, err := h.client.GetProject(name)
+ if err != nil {
+ http.Error(w, err.Error(), http.StatusNotFound)
+ return
+ }
+
+ err = h.client.DeleteProject(name)
if err != nil {
http.Error(w, err.Error(), http.StatusInternalServerError)
return
label: "Delete Project",
expectedCode: http.StatusNoContent,
name: "testProject",
- projectClient: &mockProjectManager{},
+ projectClient: &mockProjectManager{
+ //Items that will be returned by the mocked Client
+ Items: []moduleLib.Project{
+ {
+ MetaData: moduleLib.ProjectMetaData{
+ Name: "testProject",
+ Description: "Test Project used for unit testing",
+ UserData1: "data1",
+ UserData2: "data2",
+ },
+ },
+ },
+ },
},
{
label: "Delete Non-Exiting Project",
- expectedCode: http.StatusInternalServerError,
+ expectedCode: http.StatusNotFound,
name: "testProject",
projectClient: &mockProjectManager{
Err: pkgerrors.New("Internal Error"),