JAVA-4010: Moved 3 articles from this module
This commit is contained in:
+2
-4
@@ -8,12 +8,10 @@ import org.springframework.test.context.junit4.SpringRunner;
|
||||
import com.baeldung.responseheaders.ResponseHeadersApplication;
|
||||
|
||||
@RunWith(SpringRunner.class)
|
||||
@SpringBootTest(classes = { ResponseHeadersApplication.class,
|
||||
com.baeldung.web.upload.app.UploadApplication.class,
|
||||
})
|
||||
@SpringBootTest(classes = { ResponseHeadersApplication.class })
|
||||
public class SpringContextTest {
|
||||
|
||||
@Test
|
||||
public void whenSpringContextIsBootstrapped_thenNoExceptions() {
|
||||
public void whenSpringContextIsBootstrapped_thenNoExceptions() {
|
||||
}
|
||||
}
|
||||
|
||||
-109
@@ -1,109 +0,0 @@
|
||||
package com.baeldung.resttemplate;
|
||||
|
||||
import org.assertj.core.api.Assertions;
|
||||
import org.junit.Assert;
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
import org.springframework.core.io.FileSystemResource;
|
||||
import org.springframework.http.HttpHeaders;
|
||||
import org.springframework.http.HttpMethod;
|
||||
import org.springframework.http.converter.HttpMessageConverter;
|
||||
import org.springframework.util.StreamUtils;
|
||||
import org.springframework.web.client.RestTemplate;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileOutputStream;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class LargeFileDownloadIntegrationTest {
|
||||
|
||||
static String FILE_URL = "http://ovh.net/files/1Mio.dat";
|
||||
|
||||
RestTemplate restTemplate;
|
||||
|
||||
@Before
|
||||
public void setUp() {
|
||||
restTemplate = new RestTemplate();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void givenResumableUrl_whenUrlCalledByHeadOption_thenExpectHeadersAvailable() {
|
||||
HttpHeaders headers = restTemplate.headForHeaders(FILE_URL);
|
||||
Assertions
|
||||
.assertThat(headers.get("Accept-Ranges"))
|
||||
.contains("bytes");
|
||||
Assertions
|
||||
.assertThat(headers.getContentLength())
|
||||
.isGreaterThan(0);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void givenResumableUrl_whenDownloadCompletely_thenExpectCorrectFileSize() {
|
||||
HttpHeaders headers = restTemplate.headForHeaders(FILE_URL);
|
||||
long contentLength = headers.getContentLength();
|
||||
File file = restTemplate.execute(FILE_URL, HttpMethod.GET, null, clientHttpResponse -> {
|
||||
File ret = File.createTempFile("download", "tmp");
|
||||
StreamUtils.copy(clientHttpResponse.getBody(), new FileOutputStream(ret));
|
||||
return ret;
|
||||
});
|
||||
|
||||
Assert.assertNotNull(file);
|
||||
Assertions
|
||||
.assertThat(file.length())
|
||||
.isEqualTo(contentLength);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void givenResumableUrl_whenDownloadRange_thenExpectFileSizeEqualOrLessThanRange() {
|
||||
int range = 10;
|
||||
File file = restTemplate.execute(FILE_URL, HttpMethod.GET, clientHttpRequest -> clientHttpRequest
|
||||
.getHeaders()
|
||||
.set("Range", String.format("bytes=0-%d", range - 1)), clientHttpResponse -> {
|
||||
File ret = File.createTempFile("download", "tmp");
|
||||
StreamUtils.copy(clientHttpResponse.getBody(), new FileOutputStream(ret));
|
||||
return ret;
|
||||
});
|
||||
|
||||
Assert.assertNotNull(file);
|
||||
Assertions
|
||||
.assertThat(file.length())
|
||||
.isLessThanOrEqualTo(range);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void givenResumableUrl_whenPauseDownloadAndResume_thenExpectCorrectFileSize() {
|
||||
|
||||
int range = 10;
|
||||
|
||||
HttpHeaders headers = restTemplate.headForHeaders(FILE_URL);
|
||||
long contentLength = headers.getContentLength();
|
||||
|
||||
File file = restTemplate.execute(FILE_URL, HttpMethod.GET, clientHttpRequest -> clientHttpRequest
|
||||
.getHeaders()
|
||||
.set("Range", String.format("bytes=0-%d", range - 1)), clientHttpResponse -> {
|
||||
File ret = File.createTempFile("download", "tmp");
|
||||
StreamUtils.copy(clientHttpResponse.getBody(), new FileOutputStream(ret));
|
||||
return ret;
|
||||
});
|
||||
|
||||
Assert.assertNotNull(file);
|
||||
|
||||
Assertions
|
||||
.assertThat(file.length())
|
||||
.isLessThanOrEqualTo(range);
|
||||
|
||||
restTemplate.execute(FILE_URL, HttpMethod.GET, clientHttpRequest -> clientHttpRequest
|
||||
.getHeaders()
|
||||
.set("Range", String.format("bytes=%d-%d", file.length(), contentLength)), clientHttpResponse -> {
|
||||
StreamUtils.copy(clientHttpResponse.getBody(), new FileOutputStream(file, true));
|
||||
return file;
|
||||
});
|
||||
|
||||
Assertions
|
||||
.assertThat(file.length())
|
||||
.isEqualTo(contentLength);
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user