Ich habe die folgenden Filter-Cache zu löschen:Wie Test "Cache-Control" in HTTP-Antwort auf Einheit - Feder mvc Anwendung
public class CacheControlFilter implements Filter {
@Override
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
logger.info("doFilter method called clearing cache");
HttpServletResponse resp = (HttpServletResponse) response;
resp.setDateHeader("Expires", 0);
resp.setHeader("Last-Modified", new Date().toString());
resp.setHeader("Cache-Control", "no-store, no-cache, must-revalidate, max-age=0, post-check=0, pre-check=0");
resp.setHeader("Pragma", "no-cache");
chain.doFilter(request, response);
}
}
Ich mag einen Unit-Test durchzuführen, wenn die Cache-Control
zu testen gesetzt werden zu no-cache
, wenn der obige Code ausgeführt wird.
Grundsätzlich wollte ich einige Dummy-Wert in der Cache-Control
Antwortheader hinzufügen und führen Sie meine Unit-Test, um zu überprüfen, ob es zum Beispiel auf no-cache
gesetzt wird.
Ich verwende Mockito und das ist mein Ausgangspunkt, um die Prüfung durchzuführen, aber ich weiß nicht, wie ein Dummy-Wert Cache-Control
auf die Antwort auf wie unten gezeigt:
public class CacheControlFilterTest {
@InjectMocks CacheControlFilter cacheControlFilter;
@Mock ServletRequest request;
@Mock HttpServletResponse response ;
@Mock FilterChain filterChain;
public CacheControlFilterTest() {}
@Test
public void doFilterTest() throws IOException, ServletException {
cacheControlFilter.doFilter(request, response, filterChain);
}
}
Jede Beratung ist sehr willkommen .
Vielen Dank es mit Feder feinen Arbeits Mock ein – user1999453