use of retrofit2.http.POST in project retrofit by square.
the class RequestBuilderTest method formEncodedWithEncodedNameFieldParam.
@Test
public void formEncodedWithEncodedNameFieldParam() {
class Example {
//
@FormUrlEncoded
//
@POST("/foo")
Call<ResponseBody> method(@Field(value = "na%20me", encoded = true) String foo) {
return null;
}
}
Request request = buildRequest(Example.class, "ba%20r");
assertBody(request.body(), "na%20me=ba%20r");
}
use of retrofit2.http.POST in project retrofit by square.
the class RequestBuilderTest method multipartOkHttpPartWithFilename.
@Test
public void multipartOkHttpPartWithFilename() throws IOException {
class Example {
//
@Multipart
//
@POST("/foo/bar/")
Call<ResponseBody> method(@Part MultipartBody.Part part) {
return null;
}
}
MultipartBody.Part part = MultipartBody.Part.createFormData("kit", "kit.txt", RequestBody.create(null, "kat"));
Request request = buildRequest(Example.class, part);
assertThat(request.method()).isEqualTo("POST");
assertThat(request.headers().size()).isZero();
assertThat(request.url().toString()).isEqualTo("http://example.com/foo/bar/");
RequestBody body = request.body();
Buffer buffer = new Buffer();
body.writeTo(buffer);
String bodyString = buffer.readUtf8();
assertThat(bodyString).contains("Content-Disposition: form-data;").contains("name=\"kit\"; filename=\"kit.txt\"\r\n").contains("\r\nkat\r\n--");
}
use of retrofit2.http.POST in project retrofit by square.
the class RequestBuilderTest method multipartOkHttpPart.
@Test
public void multipartOkHttpPart() throws IOException {
class Example {
//
@Multipart
//
@POST("/foo/bar/")
Call<ResponseBody> method(@Part MultipartBody.Part part) {
return null;
}
}
MultipartBody.Part part = MultipartBody.Part.createFormData("kit", "kat");
Request request = buildRequest(Example.class, part);
assertThat(request.method()).isEqualTo("POST");
assertThat(request.headers().size()).isZero();
assertThat(request.url().toString()).isEqualTo("http://example.com/foo/bar/");
RequestBody body = request.body();
Buffer buffer = new Buffer();
body.writeTo(buffer);
String bodyString = buffer.readUtf8();
assertThat(bodyString).contains("Content-Disposition: form-data;").contains("name=\"kit\"\r\n").contains("\r\nkat\r\n--");
}
use of retrofit2.http.POST in project retrofit by square.
the class RequestBuilderTest method formEncodedFieldPrimitiveArray.
@Test
public void formEncodedFieldPrimitiveArray() {
class Example {
//
@FormUrlEncoded
//
@POST("/foo")
Call<ResponseBody> method(@Field("foo") int[] fields, @Field("kit") String kit) {
return null;
}
}
int[] values = { 1, 2, 3 };
Request request = buildRequest(Example.class, values, "kat");
assertBody(request.body(), "foo=1&foo=2&foo=3&kit=kat");
}
use of retrofit2.http.POST in project retrofit by square.
the class RequestBuilderTest method formEncodedFieldList.
@Test
public void formEncodedFieldList() {
class Example {
//
@FormUrlEncoded
//
@POST("/foo")
Call<ResponseBody> method(@Field("foo") List<Object> fields, @Field("kit") String kit) {
return null;
}
}
List<Object> values = Arrays.<Object>asList("foo", "bar", null, 3);
Request request = buildRequest(Example.class, values, "kat");
assertBody(request.body(), "foo=foo&foo=bar&foo=3&kit=kat");
}
Aggregations