Skip to content
This repository was archived by the owner on Apr 19, 2026. It is now read-only.

Commit b7e38d6

Browse files
committed
add tests for x-http-method-override
1 parent a2d469b commit b7e38d6

2 files changed

Lines changed: 51 additions & 1 deletion

File tree

endpoints-control/src/main/java/com/google/api/control/ConfigFilter.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -197,7 +197,8 @@ public void destroy() {
197197
// unused
198198
}
199199

200-
private static String getRequestMethodOverride(HttpServletRequest request) {
200+
@VisibleForTesting
201+
static String getRequestMethodOverride(HttpServletRequest request) {
201202
Enumeration headerNames = request.getHeaderNames();
202203
String methodOverride = null;
203204
while (headerNames.hasMoreElements()) {
Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
package com.google.api.control;
2+
3+
import static com.google.common.truth.Truth.assertThat;
4+
import static org.mockito.Mockito.when;
5+
6+
import java.util.Vector;
7+
import javax.servlet.http.HttpServletRequest;
8+
import org.junit.Before;
9+
import org.junit.Test;
10+
import org.junit.runner.RunWith;
11+
import org.mockito.Mock;
12+
import org.mockito.runners.MockitoJUnitRunner;
13+
14+
@RunWith(MockitoJUnitRunner.class)
15+
public class ConfigFilterTest {
16+
@Mock private HttpServletRequest request;
17+
18+
@Before
19+
public void setUp() {
20+
}
21+
22+
@Test
23+
public void getRequestMethodOverride() {
24+
Vector<String> headers = new Vector<>();
25+
headers.add("x-http-method-override");
26+
when(request.getHeaderNames()).thenReturn(headers.elements());
27+
when(request.getHeader("x-http-method-override")).thenReturn("post");
28+
assertThat(ConfigFilter.getRequestMethodOverride(request)).isEqualTo("POST");
29+
}
30+
31+
@Test
32+
public void getRequestMethodOverride_noHeader() {
33+
Vector<String> headers = new Vector<>();
34+
when(request.getHeaderNames()).thenReturn(headers.elements());
35+
assertThat(ConfigFilter.getRequestMethodOverride(request)).isNull();
36+
}
37+
38+
@Test
39+
public void getRealHttpMethod() {
40+
when(request.getAttribute(ConfigFilter.HTTP_METHOD_OVERRIDE_ATTRIBUTE)).thenReturn("foo");
41+
assertThat(ConfigFilter.getRealHttpMethod(request)).isEqualTo("foo");
42+
}
43+
44+
@Test
45+
public void getRealHttpMethod_noAttribute() {
46+
when(request.getMethod()).thenReturn("bar");
47+
assertThat(ConfigFilter.getRealHttpMethod(request)).isEqualTo("bar");
48+
}
49+
}

0 commit comments

Comments
 (0)