1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 package org.apache.hc.client5.http.fluent;
29
30 import java.lang.reflect.Method;
31 import java.net.URI;
32 import java.util.Arrays;
33
34 import org.apache.hc.core5.http.ClassicHttpRequest;
35 import org.junit.Assert;
36 import org.junit.Test;
37 import org.junit.runner.RunWith;
38 import org.junit.runners.Parameterized;
39
40 @RunWith(Parameterized.class)
41 public class TestRequest {
42
43 private static final String URI_STRING_FIXTURE = "http://localhost";
44 private static final URI URI_FIXTURE = URI.create(URI_STRING_FIXTURE);
45
46 @Parameterized.Parameters(name = "{index}: {0} => {1}")
47 public static Iterable<Object[]> data() {
48 return Arrays.asList(new Object[][]{
49
50 {"delete", "DELETE"},
51 {"get", "GET"},
52 {"head", "HEAD"},
53 {"options", "OPTIONS"},
54 {"patch", "PATCH"},
55 {"post", "POST"},
56 {"put", "PUT"},
57 {"trace", "TRACE"}
58
59 });
60 }
61
62 private final String methodName;
63 private final String expectedMethod;
64
65 public TestRequest(final String methodName, final String expectedMethod) {
66 this.methodName = methodName;
67 this.expectedMethod = expectedMethod;
68 }
69
70 @Test
71 public void testCreateFromString() throws Exception {
72 final Method method = Request.class.getMethod(methodName, String.class);
73 final Request request = (Request) method.invoke(null, URI_STRING_FIXTURE);
74 final ClassicHttpRequest classicHttpRequest = request.getRequest();
75 Assert.assertEquals(expectedMethod, classicHttpRequest.getMethod());
76 }
77
78 @Test
79 public void testCreateFromURI() throws Exception {
80 final Method method = Request.class.getMethod(methodName, URI.class);
81 final Request request = (Request) method.invoke(null, URI_FIXTURE);
82 final ClassicHttpRequest classicHttpRequest = request.getRequest();
83 Assert.assertEquals(expectedMethod, classicHttpRequest.getMethod());
84 }
85
86 }