Модульный тест (который написан для имитации файлов деталей путем загрузки файлов из папки тестовых ресурсов) не удался в конвейере битбакета, пока он работает в локальной среде.
Ниже моего теста
@Test
fun `get example submitted file png file`() {
val listofParts: MutableList<Part> = ArrayList()
listofParts.add(convertMockPart("example.png"));
val inputs= uploadPartFiles(listofParts);
this.server.expect(MockRestRequestMatchers.requestTo("${example.url}/send/file"))
.andRespond(MockRestResponseCreators.withSuccess(body, MediaType.APPLICATION_JSON_UTF8))
Assertions.assertThat(this.service.submittFileUpload(inputs))
.hasFieldOrPropertyWithValue("status","success")
}
fun `convertMockPart`(file: String): Part {
val byteArray= ClassUtil.getResourceAsStream(file).readBytes() // Failed in this line
var contentType = file.split(".")[1];
var mockFile= MockPart(file, file, byteArray);
if(contentType.equals("png")){
mockFile.headers.setContentType(MediaType.IMAGE_PNG);
} else if(contentType.equals("jpg")) {
mockFile.headers.setContentType(MediaType.IMAGE_JPEG);
} else if(contentType.equals("pdf")) {
mockFile.headers.setContentType(MediaType.APPLICATION_PDF);
} else {
mockFile.headers.setContentType(MediaType.APPLICATION_JSON);
}
return mockFile;
}
У меня проблема ниже
java.lang.IllegalStateException: ClassUtil.getResourceAsStream(file) must not be null
java.lang.IllegalStateException: ClassUtil.getResourceAsStream(file) must not be null
at net.sunrise.app.service.EtfRefundFormIntegrationServiceTest.convertMockPart(example.kt:62)
Это кодирование работает нормально в моей локальной среде и сборке (gradle
), но когда я фиксирую свой код в bitbucket, в конвейере битовой памяти происходит сбой, как указано выше. , я использую gradle-5.5