JUnit знает только об исключениях, которые вызываются методом теста (в вашем примере testInvalidFileFormat()
. Поэтому он может только проверять эти исключения.
Вы перехватываете каждое исключение, которое выдается mockMvc.perform(...)
и вместо этого выведите AssertionError
из строки
fail(e.toString());
Это - AssertionError
, который вы видите в результатах теста.
Если вы хотите проверить исключения, вы не должны ловитьих в вашем тесте:
@Test(expected = FileStorageException.class)
public void testInvalidFileFormat() throws Exception
{
MockMultipartFile testInput = new MockMultipartFile(
"file", "filename.txt", "text/plain", "some json".getBytes()
);
mockMvc.perform(MockMvcRequestBuilders.multipart("/uploadFile").file(testInput))
// .andExpect(status().isInternalServerError()).andExpect(content().string("Wrong
// file format. Allowed: JSON."))
.andDo(print());
}
Кстати, вам не нужно явно добавлять конструктор по умолчанию и можно удалять строки
/**
*
*/
public UploadTest()
{
// default constructor
}
Он называется конструктором по умолчанию, потому что этоавтоматически там.