Skip to content

Commit 93666c4

Browse files
committed
update tests
1 parent b84cc7d commit 93666c4

File tree

1 file changed

+20
-11
lines changed

1 file changed

+20
-11
lines changed

2-0-servlet-api/2-0-1-date-servlet-api/src/test/java/com/bobocode/DateServletTest.java

Lines changed: 20 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,10 @@
1717
import java.lang.reflect.InvocationTargetException;
1818
import java.lang.reflect.Method;
1919
import java.time.LocalDate;
20+
import java.util.Optional;
2021
import java.util.Set;
21-
import static org.assertj.core.api.AssertionsForClassTypes.assertThat;
22-
2322

23+
import static org.assertj.core.api.AssertionsForClassTypes.assertThat;
2424
import static org.mockito.Mockito.verify;
2525
import static org.mockito.Mockito.when;
2626

@@ -66,27 +66,35 @@ void dateServletExtendsHttpServlet() {
6666
Set<Class<? extends HttpServlet>> httpServlets =
6767
reflections.getSubTypesOf(HttpServlet.class);
6868

69-
httpServlets.stream()
69+
Optional<String> anyDateHttpServlet = httpServlets.stream()
7070
.map(Class::getSimpleName)
7171
.filter(servlet -> servlet.equals(DATE_SERVLET))
72-
.findAny()
73-
.orElseThrow();
72+
.findAny();
73+
assertThat(anyDateHttpServlet).isNotEmpty();
7474
}
7575

7676
@Test
7777
@Order(3)
7878
void dateServletIsMarkedAsWebServlet() {
7979
Set<Class<?>> servlets =
8080
reflections.getTypesAnnotatedWith(WebServlet.class);
81-
servlets.stream()
81+
Optional<String> anyMarkedDateServlet = servlets.stream()
8282
.map(Class::getSimpleName)
8383
.filter(servlet -> servlet.equals(DATE_SERVLET))
84-
.findAny()
85-
.orElseThrow();
84+
.findAny();
85+
assertThat(anyMarkedDateServlet).isNotEmpty();
8686
}
8787

8888
@Test
8989
@Order(4)
90+
void dateServletIsMarkedWithProperPath() throws ClassNotFoundException {
91+
String[] value = Class.forName(SERVLET_PACKAGE + "." + DATE_SERVLET)
92+
.getAnnotation(WebServlet.class).value();
93+
assertThat(value).contains("/date");
94+
}
95+
96+
@Test
97+
@Order(5)
9098
void dateServletContentTypeIsProper() throws IllegalAccessException,
9199
InvocationTargetException, NoSuchMethodException, IOException {
92100
Method doGetMethod = getDoGetMethod();
@@ -100,16 +108,17 @@ void dateServletContentTypeIsProper() throws IllegalAccessException,
100108
}
101109

102110
@Test
103-
@Order(5)
111+
@Order(6)
104112
void dateServletReturnsDateInResponse() throws IOException, NoSuchMethodException, InvocationTargetException,
105113
IllegalAccessException {
114+
Method doGetMethod = getDoGetMethod();
115+
106116
StringWriter stringWriter = new StringWriter();
107117
PrintWriter printWriter = new PrintWriter(stringWriter);
108118
when(response.getWriter()).thenReturn(printWriter);
109-
Method doGetMethod = getDoGetMethod();
110119

111120
doGetMethod.invoke(dateServletObject, request, response);
112-
assertThat(stringWriter.getBuffer().toString().contains(LocalDate.now().toString())).isTrue();
121+
assertThat(stringWriter.getBuffer().toString()).contains(LocalDate.now().toString());
113122
}
114123

115124
private Method getDoGetMethod() throws NoSuchMethodException {

0 commit comments

Comments
 (0)