UpdateStatusServlet.java

1
package com.popx.presentazione;
2
3
import com.popx.modello.OrdineBean;
4
import com.popx.persistenza.OrdineDAO;
5
import com.popx.persistenza.OrdineDAOImpl;
6
7
import javax.servlet.ServletException;
8
import javax.servlet.annotation.WebServlet;
9
import javax.servlet.http.*;
10
import java.io.IOException;
11
12
@WebServlet("/UpdateOrderStatus")
13
public class UpdateStatusServlet extends HttpServlet {
14
15
    private final OrdineDAO ordineDAO;
16
17
    // �� production
18
    public UpdateStatusServlet() {
19
        this.ordineDAO = new OrdineDAOImpl();
20
    }
21
22
    // �� test
23
    public UpdateStatusServlet(OrdineDAO ordineDAO) {
24
        this.ordineDAO = ordineDAO;
25
    }
26
27
    @Override
28
    public void doGet(HttpServletRequest request, HttpServletResponse response)
29
            throws ServletException, IOException {
30
31 1 1. doGet : removed call to javax/servlet/http/HttpServletResponse::setContentType → SURVIVED
        response.setContentType("application/json");
32
33
        String idParam = request.getParameter("id");
34
        String newStatus = request.getParameter("status");
35
36 2 1. doGet : negated conditional → KILLED
2. doGet : negated conditional → KILLED
        if (idParam == null || newStatus == null) {
37 1 1. doGet : removed call to javax/servlet/http/HttpServletResponse::setStatus → KILLED
            response.setStatus(HttpServletResponse.SC_BAD_REQUEST);
38 1 1. doGet : removed call to java/io/PrintWriter::write → SURVIVED
            response.getWriter().write("{\"success\": false}");
39
            return;
40
        }
41
42
        int orderId;
43
        try {
44
            orderId = Integer.parseInt(idParam);
45
        } catch (NumberFormatException e) {
46 1 1. doGet : removed call to javax/servlet/http/HttpServletResponse::setStatus → NO_COVERAGE
            response.setStatus(HttpServletResponse.SC_BAD_REQUEST);
47 1 1. doGet : removed call to java/io/PrintWriter::write → NO_COVERAGE
            response.getWriter().write("{\"success\": false}");
48
            return;
49
        }
50
51
        try {
52
            OrdineBean ordine = ordineDAO.getOrdineById(orderId);
53 1 1. doGet : negated conditional → KILLED
            if (ordine == null) {
54 1 1. doGet : removed call to javax/servlet/http/HttpServletResponse::setStatus → KILLED
                response.setStatus(HttpServletResponse.SC_NOT_FOUND);
55 1 1. doGet : removed call to java/io/PrintWriter::write → SURVIVED
                response.getWriter().write("{\"success\": false}");
56
                return;
57
            }
58
59 1 1. doGet : removed call to com/popx/modello/OrdineBean::setStatus → SURVIVED
            ordine.setStatus(newStatus);
60
            boolean success = ordineDAO.updateStatus(ordine);
61
62 1 1. doGet : removed call to java/io/PrintWriter::write → KILLED
            response.getWriter().write("{\"success\": " + success + "}");
63
64
        } catch (Exception e) {
65 1 1. doGet : removed call to java/lang/Exception::printStackTrace → SURVIVED
            e.printStackTrace();
66 1 1. doGet : removed call to javax/servlet/http/HttpServletResponse::setStatus → KILLED
            response.setStatus(HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
67 1 1. doGet : removed call to java/io/PrintWriter::write → SURVIVED
            response.getWriter().write("{\"success\": false}");
68
        }
69
    }
70
}

Mutations

31

1.1
Location : doGet
Killed by : none
removed call to javax/servlet/http/HttpServletResponse::setContentType → SURVIVED

36

1.1
Location : doGet
Killed by : com.popx.integration.presentazione.UpdateStatusServletTest.[engine:junit-jupiter]/[class:com.popx.integration.presentazione.UpdateStatusServletTest]/[method:updateStatus_exception_returns500()]
negated conditional → KILLED

2.2
Location : doGet
Killed by : com.popx.integration.presentazione.UpdateStatusServletTest.[engine:junit-jupiter]/[class:com.popx.integration.presentazione.UpdateStatusServletTest]/[method:updateStatus_exception_returns500()]
negated conditional → KILLED

37

1.1
Location : doGet
Killed by : com.popx.integration.presentazione.UpdateStatusServletTest.[engine:junit-jupiter]/[class:com.popx.integration.presentazione.UpdateStatusServletTest]/[method:updateStatus_missingParams_returns400()]
removed call to javax/servlet/http/HttpServletResponse::setStatus → KILLED

38

1.1
Location : doGet
Killed by : none
removed call to java/io/PrintWriter::write → SURVIVED

46

1.1
Location : doGet
Killed by : none
removed call to javax/servlet/http/HttpServletResponse::setStatus → NO_COVERAGE

47

1.1
Location : doGet
Killed by : none
removed call to java/io/PrintWriter::write → NO_COVERAGE

53

1.1
Location : doGet
Killed by : com.popx.integration.presentazione.UpdateStatusServletTest.[engine:junit-jupiter]/[class:com.popx.integration.presentazione.UpdateStatusServletTest]/[method:updateStatus_orderNotFound_returns404()]
negated conditional → KILLED

54

1.1
Location : doGet
Killed by : com.popx.integration.presentazione.UpdateStatusServletTest.[engine:junit-jupiter]/[class:com.popx.integration.presentazione.UpdateStatusServletTest]/[method:updateStatus_orderNotFound_returns404()]
removed call to javax/servlet/http/HttpServletResponse::setStatus → KILLED

55

1.1
Location : doGet
Killed by : none
removed call to java/io/PrintWriter::write → SURVIVED

59

1.1
Location : doGet
Killed by : none
removed call to com/popx/modello/OrdineBean::setStatus → SURVIVED

62

1.1
Location : doGet
Killed by : com.popx.integration.presentazione.UpdateStatusServletTest.[engine:junit-jupiter]/[class:com.popx.integration.presentazione.UpdateStatusServletTest]/[method:updateStatus_success()]
removed call to java/io/PrintWriter::write → KILLED

65

1.1
Location : doGet
Killed by : none
removed call to java/lang/Exception::printStackTrace → SURVIVED

66

1.1
Location : doGet
Killed by : com.popx.integration.presentazione.UpdateStatusServletTest.[engine:junit-jupiter]/[class:com.popx.integration.presentazione.UpdateStatusServletTest]/[method:updateStatus_exception_returns500()]
removed call to javax/servlet/http/HttpServletResponse::setStatus → KILLED

67

1.1
Location : doGet
Killed by : none
removed call to java/io/PrintWriter::write → SURVIVED

Active mutators

Tests examined


Report generated by PIT 1.15.2