Skip to content

Commit 31c7804

Browse files
committed
change test and rename
1 parent 8908ffe commit 31c7804

File tree

8 files changed

+42
-33
lines changed

8 files changed

+42
-33
lines changed

instrumentation/servlet/servlet-3.0/javaagent-unit-tests/src/test/java/io/opentelemetry/javaagent/instrumentation/servlet/v3_0/snippet/InjectionTest.java

Lines changed: 23 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,10 @@
77

88
import static io.opentelemetry.javaagent.instrumentation.servlet.v3_0.snippet.TestUtil.readFile;
99
import static org.assertj.core.api.AssertionsForClassTypes.assertThat;
10+
import static org.mockito.Mockito.mock;
11+
import static org.mockito.Mockito.when;
1012

11-
import io.opentelemetry.javaagent.bootstrap.servlet.SnippetHolder;
13+
import io.opentelemetry.javaagent.bootstrap.servlet.ExperimentalSnippetHolder;
1214
import java.io.IOException;
1315
import java.io.StringWriter;
1416
import java.nio.charset.StandardCharsets;
@@ -21,13 +23,16 @@ class InjectionTest {
2123
@Test
2224
void testInjectionForStringContainHeadTag() throws IOException {
2325
String testSnippet = "\n <script type=\"text/javascript\"> Test </script>";
24-
SnippetHolder.setSnippet(testSnippet);
26+
ExperimentalSnippetHolder.setSnippet(testSnippet);
2527
// read the originalFile
2628
String original = readFile("staticHtmlOrigin.html");
2729
// read the correct answer
2830
String correct = readFile("staticHtmlAfter.html");
2931
byte[] originalBytes = original.getBytes(StandardCharsets.UTF_8);
30-
InjectionState obj = new InjectionState(StandardCharsets.UTF_8.name());
32+
SnippetInjectingResponseWrapper response = mock(SnippetInjectingResponseWrapper.class);
33+
when(response.isCommitted()).thenReturn(false);
34+
when(response.getCharacterEncoding()).thenReturn(StandardCharsets.UTF_8.name());
35+
InjectionState obj = new InjectionState(response);
3136

3237
StringWriter writer = new StringWriter();
3338

@@ -54,13 +59,16 @@ public void write(int b) throws IOException {
5459
@Disabled
5560
void testInjectionForChinese() throws IOException {
5661
String testSnippet = "\n <script type=\"text/javascript\"> Test </script>";
57-
SnippetHolder.setSnippet(testSnippet);
62+
ExperimentalSnippetHolder.setSnippet(testSnippet);
5863
// read the originalFile
5964
String original = readFile("staticHtmlChineseOrigin.html");
6065
// read the correct answer
6166
String correct = readFile("staticHtmlChineseAfter.html");
6267
byte[] originalBytes = original.getBytes(StandardCharsets.UTF_8);
63-
InjectionState obj = new InjectionState(StandardCharsets.UTF_8.name());
68+
SnippetInjectingResponseWrapper response = mock(SnippetInjectingResponseWrapper.class);
69+
when(response.isCommitted()).thenReturn(false);
70+
when(response.getCharacterEncoding()).thenReturn(StandardCharsets.UTF_8.name());
71+
InjectionState obj = new InjectionState(response);
6472

6573
StringWriter writer = new StringWriter();
6674

@@ -86,12 +94,15 @@ public void write(int b) throws IOException {
8694
@Test
8795
void testInjectionForStringWithoutHeadTag() throws IOException {
8896
String testSnippet = "\n <script type=\"text/javascript\"> Test </script>";
89-
SnippetHolder.setSnippet(testSnippet);
97+
ExperimentalSnippetHolder.setSnippet(testSnippet);
9098
// read the originalFile
9199
String original = readFile("htmlWithoutHeadTag.html");
92100

93101
byte[] originalBytes = original.getBytes(StandardCharsets.UTF_8);
94-
InjectionState obj = new InjectionState(StandardCharsets.UTF_8.name());
102+
SnippetInjectingResponseWrapper response = mock(SnippetInjectingResponseWrapper.class);
103+
when(response.isCommitted()).thenReturn(false);
104+
when(response.getCharacterEncoding()).thenReturn(StandardCharsets.UTF_8.name());
105+
InjectionState obj = new InjectionState(response);
95106
StringWriter writer = new StringWriter();
96107

97108
ServletOutputStream sp =
@@ -115,11 +126,14 @@ public void write(int b) throws IOException {
115126
@Test
116127
void testHalfHeadTag() throws IOException {
117128
String testSnippet = "\n <script type=\"text/javascript\"> Test </script>";
118-
SnippetHolder.setSnippet(testSnippet);
129+
ExperimentalSnippetHolder.setSnippet(testSnippet);
119130
// read the original string
120131
String originalFirstPart = "<!DOCTYPE html>\n" + "<html lang=\"en\">\n" + "<he";
121132
byte[] originalFirstPartBytes = originalFirstPart.getBytes(StandardCharsets.UTF_8);
122-
InjectionState obj = new InjectionState(StandardCharsets.UTF_8.name());
133+
SnippetInjectingResponseWrapper response = mock(SnippetInjectingResponseWrapper.class);
134+
when(response.isCommitted()).thenReturn(false);
135+
when(response.getCharacterEncoding()).thenReturn(StandardCharsets.UTF_8.name());
136+
InjectionState obj = new InjectionState(response);
123137
StringWriter writer = new StringWriter();
124138

125139
ServletOutputStream sp =

instrumentation/servlet/servlet-3.0/javaagent-unit-tests/src/test/java/io/opentelemetry/javaagent/instrumentation/servlet/v3_0/snippet/SnippetInjectingResponseWrapperTest.java

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
import static org.mockito.Mockito.mock;
1111
import static org.mockito.Mockito.when;
1212

13-
import io.opentelemetry.javaagent.bootstrap.servlet.SnippetHolder;
13+
import io.opentelemetry.javaagent.bootstrap.servlet.ExperimentalSnippetHolder;
1414
import java.io.IOException;
1515
import java.io.PrintWriter;
1616
import java.io.StringWriter;
@@ -33,7 +33,7 @@ void testInjectToTextHtml() throws IOException {
3333
when(response.containsHeader("content-type")).thenReturn(true);
3434
StringWriter writer = new StringWriter();
3535
when(response.getWriter()).thenReturn(new PrintWriter(writer));
36-
SnippetHolder.setSnippet("\n <script type=\"text/javascript\"> Test </script>");
36+
ExperimentalSnippetHolder.setSnippet("\n <script type=\"text/javascript\"> Test </script>");
3737
SnippetInjectingResponseWrapper responseWrapper = new SnippetInjectingResponseWrapper(response);
3838
responseWrapper.getWriter().write(original);
3939
responseWrapper.getWriter().flush();
@@ -58,7 +58,7 @@ void testInjectToChineseTextHtml() throws IOException {
5858

5959
StringWriter writer = new StringWriter();
6060
when(response.getWriter()).thenReturn(new PrintWriter(writer));
61-
SnippetHolder.setSnippet("\n <script type=\"text/javascript\"> Test </script>");
61+
ExperimentalSnippetHolder.setSnippet("\n <script type=\"text/javascript\"> Test </script>");
6262
SnippetInjectingResponseWrapper responseWrapper = new SnippetInjectingResponseWrapper(response);
6363
responseWrapper.getWriter().write(original);
6464
responseWrapper.getWriter().flush();
@@ -84,7 +84,7 @@ void shouldNotInjectToTextHtml() throws IOException {
8484
when(response.containsHeader("content-type")).thenReturn(true);
8585

8686
when(response.getWriter()).thenReturn(new PrintWriter(writer, true));
87-
SnippetHolder.setSnippet("\n <script type=\"text/javascript\"> Test </script>");
87+
ExperimentalSnippetHolder.setSnippet("\n <script type=\"text/javascript\"> Test </script>");
8888

8989
SnippetInjectingResponseWrapper responseWrapper = new SnippetInjectingResponseWrapper(response);
9090
responseWrapper.getWriter().write(original);
@@ -110,7 +110,7 @@ void testWriteInt() throws IOException {
110110
StringWriter writer = new StringWriter();
111111
// StringWriter correctWriter = new StringWriter();
112112
when(response.getWriter()).thenReturn(new PrintWriter(writer));
113-
SnippetHolder.setSnippet("\n <script type=\"text/javascript\"> Test </script>");
113+
ExperimentalSnippetHolder.setSnippet("\n <script type=\"text/javascript\"> Test </script>");
114114
SnippetInjectingResponseWrapper responseWrapper = new SnippetInjectingResponseWrapper(response);
115115
byte[] originalBytes = original.getBytes(Charset.defaultCharset().name());
116116
// byte[] correctBytes = correct.getBytes(UTF_8);
@@ -142,7 +142,7 @@ void testWriteCharArray() throws IOException {
142142

143143
StringWriter writer = new StringWriter();
144144
when(response.getWriter()).thenReturn(new PrintWriter(writer));
145-
SnippetHolder.setSnippet("\n <script type=\"text/javascript\"> Test </script>");
145+
ExperimentalSnippetHolder.setSnippet("\n <script type=\"text/javascript\"> Test </script>");
146146
SnippetInjectingResponseWrapper responseWrapper = new SnippetInjectingResponseWrapper(response);
147147
char[] originalChars = original.toCharArray();
148148
responseWrapper.getWriter().write(originalChars, 0, originalChars.length);
@@ -171,7 +171,7 @@ void testWriteWithOffset() throws IOException {
171171

172172
StringWriter writer = new StringWriter();
173173
when(response.getWriter()).thenReturn(new PrintWriter(writer));
174-
SnippetHolder.setSnippet("\n <script type=\"text/javascript\"> Test </script>");
174+
ExperimentalSnippetHolder.setSnippet("\n <script type=\"text/javascript\"> Test </script>");
175175
SnippetInjectingResponseWrapper responseWrapper = new SnippetInjectingResponseWrapper(response);
176176

177177
responseWrapper

instrumentation/servlet/servlet-3.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/servlet/v3_0/Servlet3Advice.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,8 @@
1313
import io.opentelemetry.javaagent.bootstrap.CallDepth;
1414
import io.opentelemetry.javaagent.bootstrap.Java8BytecodeBridge;
1515
import io.opentelemetry.javaagent.bootstrap.servlet.AppServerBridge;
16+
import io.opentelemetry.javaagent.bootstrap.servlet.ExperimentalSnippetHolder;
1617
import io.opentelemetry.javaagent.bootstrap.servlet.MappingResolver;
17-
import io.opentelemetry.javaagent.bootstrap.servlet.SnippetHolder;
1818
import io.opentelemetry.javaagent.instrumentation.servlet.ServletRequestContext;
1919
import io.opentelemetry.javaagent.instrumentation.servlet.v3_0.snippet.SnippetInjectingResponseWrapper;
2020
import javax.servlet.Servlet;
@@ -43,7 +43,7 @@ public static void onEnter(
4343
}
4444
HttpServletRequest httpServletRequest = (HttpServletRequest) request;
4545

46-
if (!SnippetHolder.getSnippet().isEmpty()
46+
if (!ExperimentalSnippetHolder.getSnippet().isEmpty()
4747
&& !((HttpServletResponse) response).containsHeader(FAKE_SNIPPET_HEADER)) {
4848
response = new SnippetInjectingResponseWrapper((HttpServletResponse) response);
4949
}

instrumentation/servlet/servlet-3.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/servlet/v3_0/snippet/InjectionState.java

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,6 @@ public InjectionState(SnippetInjectingResponseWrapper wrapper) {
2020
this.characterEncoding = wrapper.getCharacterEncoding();
2121
}
2222

23-
public InjectionState(String characterEncoding) {
24-
this.characterEncoding = characterEncoding;
25-
this.wrapper = null;
26-
}
27-
2823
public int getHeadTagBytesSeen() {
2924
return headTagBytesSeen;
3025
}

instrumentation/servlet/servlet-3.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/servlet/v3_0/snippet/ServletOutputStreamInjectionHelper.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77

88
import static java.util.logging.Level.FINE;
99

10-
import io.opentelemetry.javaagent.bootstrap.servlet.SnippetHolder;
10+
import io.opentelemetry.javaagent.bootstrap.servlet.ExperimentalSnippetHolder;
1111
import java.io.IOException;
1212
import java.io.UnsupportedEncodingException;
1313
import java.util.logging.Logger;
@@ -42,7 +42,7 @@ public static boolean handleWrite(
4242
state.setAlreadyInjected(); // set before write to avoid recursive loop
4343
out.write(original, off, i + 1);
4444
try {
45-
byte[] snippetBytes = SnippetHolder.getSnippetBytes(state.getCharacterEncoding());
45+
byte[] snippetBytes = ExperimentalSnippetHolder.getSnippetBytes(state.getCharacterEncoding());
4646
if (state.getWrapper().isCommitted()) {
4747
// header already set and sent, stop inject
4848
return false;
@@ -71,7 +71,7 @@ public static boolean handleWrite(InjectionState state, ServletOutputStream out,
7171
state.setAlreadyInjected(); // set before write to avoid recursive loop
7272
out.write(b);
7373
try {
74-
byte[] snippetBytes = SnippetHolder.getSnippetBytes(state.getCharacterEncoding());
74+
byte[] snippetBytes = ExperimentalSnippetHolder.getSnippetBytes(state.getCharacterEncoding());
7575
if (state.getWrapper().isCommitted()) {
7676
// header already set and sent, stop inject
7777
return false;

instrumentation/servlet/servlet-3.0/javaagent/src/main/java/io/opentelemetry/javaagent/instrumentation/servlet/v3_0/snippet/SnippetInjectingResponseWrapper.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
import static io.opentelemetry.javaagent.instrumentation.servlet.v3_0.snippet.Injection.initializeInjectionStateIfNeeded;
99
import static java.util.logging.Level.FINE;
1010

11-
import io.opentelemetry.javaagent.bootstrap.servlet.SnippetHolder;
11+
import io.opentelemetry.javaagent.bootstrap.servlet.ExperimentalSnippetHolder;
1212
import java.io.IOException;
1313
import java.io.PrintWriter;
1414
import java.lang.invoke.MethodHandle;
@@ -23,7 +23,7 @@
2323
public class SnippetInjectingResponseWrapper extends HttpServletResponseWrapper {
2424
private static final Logger logger = Logger.getLogger(HttpServletResponseWrapper.class.getName());
2525
public static final String FAKE_SNIPPET_HEADER = "FAKE_SNIPPET_HEADER";
26-
private static final String SNIPPET = SnippetHolder.getSnippet();
26+
private static final String SNIPPET = ExperimentalSnippetHolder.getSnippet();
2727
private static final int SNIPPET_LENGTH = SNIPPET.length();
2828
@Nullable private static final MethodHandle setContentLengthLongHandler = getMethodHandle();
2929

instrumentation/servlet/servlet-3.0/javaagent/src/test/groovy/AbstractServlet3Test.groovy

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import io.opentelemetry.instrumentation.test.AgentTestTrait
77
import io.opentelemetry.instrumentation.test.asserts.TraceAssert
88
import io.opentelemetry.instrumentation.test.base.HttpServerTest
99
import io.opentelemetry.instrumentation.testing.junit.http.ServerEndpoint
10-
import io.opentelemetry.javaagent.bootstrap.servlet.SnippetHolder
10+
import io.opentelemetry.javaagent.bootstrap.servlet.ExperimentalSnippetHolder
1111
import io.opentelemetry.testing.internal.armeria.common.AggregatedHttpRequest
1212

1313
import javax.servlet.Servlet
@@ -103,7 +103,7 @@ abstract class AbstractServlet3Test<SERVER, CONTEXT> extends HttpServerTest<SERV
103103

104104
def "snippet injection with ServletOutPutStream"() {
105105
setup:
106-
SnippetHolder.setSnippet("\n <script type=\"text/javascript\"> Test </script>")
106+
ExperimentalSnippetHolder.setSnippet("\n <script type=\"text/javascript\"> Test </script>")
107107
def request = request(HTML2, "GET")
108108
def response = client.execute(request).aggregate().join()
109109

@@ -127,7 +127,7 @@ abstract class AbstractServlet3Test<SERVER, CONTEXT> extends HttpServerTest<SERV
127127

128128
def "snippet injection with PrintWriter"() {
129129
setup:
130-
SnippetHolder.setSnippet("\n <script type=\"text/javascript\"> Test </script>")
130+
ExperimentalSnippetHolder.setSnippet("\n <script type=\"text/javascript\"> Test </script>")
131131
def request = request(HTML, "GET")
132132
def response = client.execute(request).aggregate().join()
133133

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,12 @@
77

88
import java.io.UnsupportedEncodingException;
99

10-
public class SnippetHolder {
10+
public class ExperimentalSnippetHolder {
1111

1212
private static String snippet = "";
1313

1414
public static void setSnippet(String snippet) {
15-
SnippetHolder.snippet = snippet;
15+
ExperimentalSnippetHolder.snippet = snippet;
1616
}
1717

1818
public static String getSnippet() {

0 commit comments

Comments
 (0)