В интернете оказалось маловато информации-руководства о том как использовать корректно эту библиотеку с объектами((
class AddServletTest { MockHttpServletRequest request = new MockHttpServletRequest(); MockHttpServletResponse response = new MockHttpServletResponse(); Model model = Model.getInstance(); AddServlet servlet = new AddServlet(); @Test void doPost() throws ServletException, IOException, ParseException { request.setParameter("name", "some pills"); request.setParameter("action", "headache"); request.setParameter("form", "liquid"); request.setParameter("date", "2021-01-01"); //servlet.service(request, response); - assertion error - в список значение по названиям пилюль не добавляется servlet.doPost(request, response); //java.lang.IllegalStateException: ServletConfig has not been initialized Pills pill = new Pills("some pill", "headache", "liquid", new SimpleDateFormat("yyyy-MM-dd").parse("2021-01-01")); assertEquals(model.list().size(), 1); assertEquals(model.list().get(0), pill); model.list().clear(); }
из стектрейса можно догадаться, что следует переопределить метод init() ServletConfig, но я новичок в этом деле и даже не могу представить, как это можно сделать. Помогите, пожалуйста(
Возможно можно использовать mockito для имитации того что tomcat вызвал метод init() сервлета, но, к сожалению ,я так же не представляю как это выглядит(