aboutsummaryrefslogtreecommitdiff
path: root/api/src/test/java/io/opencensus
diff options
context:
space:
mode:
authorHailong Wen <youxiabsyw@gmail.com>2018-02-16 15:09:17 +0800
committerGitHub <noreply@github.com>2018-02-16 15:09:17 +0800
commit131b6f062a68d91b4d7a06d1edc25d8e856b6a21 (patch)
tree2481d17d4feb6f7c2828326c96f001e11a314b30 /api/src/test/java/io/opencensus
parent490dfe8c1984ffbe0eb9118fba450eed90b414f9 (diff)
downloadopencensus-java-131b6f062a68d91b4d7a06d1edc25d8e856b6a21.tar.gz
Add MessageEvent and deprecate NetworkEvent. (closes #858) (#894)
Diffstat (limited to 'api/src/test/java/io/opencensus')
-rw-r--r--api/src/test/java/io/opencensus/internal/BaseMessageEventUtilTest.java71
-rw-r--r--api/src/test/java/io/opencensus/trace/BlankSpanTest.java1
-rw-r--r--api/src/test/java/io/opencensus/trace/MessageEventTest.java84
-rw-r--r--api/src/test/java/io/opencensus/trace/NoopSpan.java3
-rw-r--r--api/src/test/java/io/opencensus/trace/SpanTest.java18
-rw-r--r--api/src/test/java/io/opencensus/trace/config/TraceConfigTest.java1
-rw-r--r--api/src/test/java/io/opencensus/trace/config/TraceParamsTest.java19
-rw-r--r--api/src/test/java/io/opencensus/trace/export/SpanDataTest.java59
8 files changed, 248 insertions, 8 deletions
diff --git a/api/src/test/java/io/opencensus/internal/BaseMessageEventUtilTest.java b/api/src/test/java/io/opencensus/internal/BaseMessageEventUtilTest.java
new file mode 100644
index 00000000..8de1b1c9
--- /dev/null
+++ b/api/src/test/java/io/opencensus/internal/BaseMessageEventUtilTest.java
@@ -0,0 +1,71 @@
+/*
+ * Copyright 2018, OpenCensus Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package io.opencensus.internal;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import io.opencensus.trace.MessageEvent;
+import io.opencensus.trace.NetworkEvent;
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.JUnit4;
+
+/** Unit tests for {@link BaseMessageEventUtil}. */
+@RunWith(JUnit4.class)
+public class BaseMessageEventUtilTest {
+ private static final long SENT_EVENT_ID = 12345L;
+ private static final long RECV_EVENT_ID = 67890L;
+ private static final long UNCOMPRESSED_SIZE = 100;
+ private static final long COMPRESSED_SIZE = 99;
+
+ private static final MessageEvent SENT_MESSAGE_EVENT =
+ MessageEvent.builder(MessageEvent.Type.SENT, SENT_EVENT_ID)
+ .setUncompressedMessageSize(UNCOMPRESSED_SIZE)
+ .setCompressedMessageSize(COMPRESSED_SIZE)
+ .build();
+ private static final MessageEvent RECV_MESSAGE_EVENT =
+ MessageEvent.builder(MessageEvent.Type.RECEIVED, RECV_EVENT_ID)
+ .setUncompressedMessageSize(UNCOMPRESSED_SIZE)
+ .setCompressedMessageSize(COMPRESSED_SIZE)
+ .build();
+ private static final NetworkEvent SENT_NETWORK_EVENT =
+ NetworkEvent.builder(NetworkEvent.Type.SENT, SENT_EVENT_ID)
+ .setUncompressedMessageSize(UNCOMPRESSED_SIZE)
+ .setCompressedMessageSize(COMPRESSED_SIZE)
+ .build();
+ private static final NetworkEvent RECV_NETWORK_EVENT =
+ NetworkEvent.builder(NetworkEvent.Type.RECV, RECV_EVENT_ID)
+ .setUncompressedMessageSize(UNCOMPRESSED_SIZE)
+ .setCompressedMessageSize(COMPRESSED_SIZE)
+ .build();
+
+ @Test
+ public void networkEventToMessageEvent() {
+ assertThat(BaseMessageEventUtil.asMessageEvent(SENT_NETWORK_EVENT))
+ .isEqualTo(SENT_MESSAGE_EVENT);
+ assertThat(BaseMessageEventUtil.asMessageEvent(RECV_NETWORK_EVENT))
+ .isEqualTo(RECV_MESSAGE_EVENT);
+ }
+
+ @Test
+ public void messageEventToNetworkEvent() {
+ assertThat(BaseMessageEventUtil.asNetworkEvent(SENT_MESSAGE_EVENT))
+ .isEqualTo(SENT_NETWORK_EVENT);
+ assertThat(BaseMessageEventUtil.asNetworkEvent(RECV_MESSAGE_EVENT))
+ .isEqualTo(RECV_NETWORK_EVENT);
+ }
+}
diff --git a/api/src/test/java/io/opencensus/trace/BlankSpanTest.java b/api/src/test/java/io/opencensus/trace/BlankSpanTest.java
index b9760c2f..185a5acd 100644
--- a/api/src/test/java/io/opencensus/trace/BlankSpanTest.java
+++ b/api/src/test/java/io/opencensus/trace/BlankSpanTest.java
@@ -53,6 +53,7 @@ public class BlankSpanTest {
BlankSpan.INSTANCE.addAnnotation("MyAnnotation", multipleAttributes);
BlankSpan.INSTANCE.addAnnotation(Annotation.fromDescription("MyAnnotation"));
BlankSpan.INSTANCE.addNetworkEvent(NetworkEvent.builder(NetworkEvent.Type.SENT, 1L).build());
+ BlankSpan.INSTANCE.addMessageEvent(MessageEvent.builder(MessageEvent.Type.SENT, 1L).build());
BlankSpan.INSTANCE.addLink(
Link.fromSpanContext(SpanContext.INVALID, Link.Type.CHILD_LINKED_SPAN));
BlankSpan.INSTANCE.setStatus(Status.OK);
diff --git a/api/src/test/java/io/opencensus/trace/MessageEventTest.java b/api/src/test/java/io/opencensus/trace/MessageEventTest.java
new file mode 100644
index 00000000..fde32fe6
--- /dev/null
+++ b/api/src/test/java/io/opencensus/trace/MessageEventTest.java
@@ -0,0 +1,84 @@
+/*
+ * Copyright 2018, OpenCensus Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package io.opencensus.trace;
+
+import static com.google.common.truth.Truth.assertThat;
+
+import org.junit.Test;
+import org.junit.runner.RunWith;
+import org.junit.runners.JUnit4;
+
+/** Unit tests for {@link MessageEvent}. */
+@RunWith(JUnit4.class)
+public class MessageEventTest {
+ @Test(expected = NullPointerException.class)
+ public void buildMessageEvent_NullType() {
+ MessageEvent.builder(null, 1L).build();
+ }
+
+ @Test
+ public void buildMessageEvent_WithRequiredFields() {
+ MessageEvent messageEvent = MessageEvent.builder(MessageEvent.Type.SENT, 1L).build();
+ assertThat(messageEvent.getType()).isEqualTo(MessageEvent.Type.SENT);
+ assertThat(messageEvent.getMessageId()).isEqualTo(1L);
+ assertThat(messageEvent.getUncompressedMessageSize()).isEqualTo(0L);
+ }
+
+ @Test
+ public void buildMessageEvent_WithUncompressedMessageSize() {
+ MessageEvent messageEvent =
+ MessageEvent.builder(MessageEvent.Type.SENT, 1L).setUncompressedMessageSize(123L).build();
+ assertThat(messageEvent.getType()).isEqualTo(MessageEvent.Type.SENT);
+ assertThat(messageEvent.getMessageId()).isEqualTo(1L);
+ assertThat(messageEvent.getUncompressedMessageSize()).isEqualTo(123L);
+ }
+
+ @Test
+ public void buildMessageEvent_WithCompressedMessageSize() {
+ MessageEvent messageEvent =
+ MessageEvent.builder(MessageEvent.Type.SENT, 1L).setCompressedMessageSize(123L).build();
+ assertThat(messageEvent.getType()).isEqualTo(MessageEvent.Type.SENT);
+ assertThat(messageEvent.getMessageId()).isEqualTo(1L);
+ assertThat(messageEvent.getCompressedMessageSize()).isEqualTo(123L);
+ }
+
+ @Test
+ public void buildMessageEvent_WithAllValues() {
+ MessageEvent messageEvent =
+ MessageEvent.builder(MessageEvent.Type.RECEIVED, 1L)
+ .setUncompressedMessageSize(123L)
+ .setCompressedMessageSize(63L)
+ .build();
+ assertThat(messageEvent.getType()).isEqualTo(MessageEvent.Type.RECEIVED);
+ assertThat(messageEvent.getMessageId()).isEqualTo(1L);
+ assertThat(messageEvent.getUncompressedMessageSize()).isEqualTo(123L);
+ assertThat(messageEvent.getCompressedMessageSize()).isEqualTo(63L);
+ }
+
+ @Test
+ public void messageEvent_ToString() {
+ MessageEvent messageEvent =
+ MessageEvent.builder(MessageEvent.Type.SENT, 1L)
+ .setUncompressedMessageSize(123L)
+ .setCompressedMessageSize(63L)
+ .build();
+ assertThat(messageEvent.toString()).contains("type=SENT");
+ assertThat(messageEvent.toString()).contains("messageId=1");
+ assertThat(messageEvent.toString()).contains("compressedMessageSize=63");
+ assertThat(messageEvent.toString()).contains("uncompressedMessageSize=123");
+ }
+}
diff --git a/api/src/test/java/io/opencensus/trace/NoopSpan.java b/api/src/test/java/io/opencensus/trace/NoopSpan.java
index 0217529d..7c8d9b7a 100644
--- a/api/src/test/java/io/opencensus/trace/NoopSpan.java
+++ b/api/src/test/java/io/opencensus/trace/NoopSpan.java
@@ -45,6 +45,9 @@ public class NoopSpan extends Span {
public void addNetworkEvent(NetworkEvent networkEvent) {}
@Override
+ public void addMessageEvent(MessageEvent messageEvent) {}
+
+ @Override
public void addLink(Link link) {}
@Override
diff --git a/api/src/test/java/io/opencensus/trace/SpanTest.java b/api/src/test/java/io/opencensus/trace/SpanTest.java
index 327b9abe..f7546ca4 100644
--- a/api/src/test/java/io/opencensus/trace/SpanTest.java
+++ b/api/src/test/java/io/opencensus/trace/SpanTest.java
@@ -98,4 +98,22 @@ public class SpanTest {
span.end();
verify(span).end(same(EndSpanOptions.DEFAULT));
}
+
+ @Test
+ public void addMessageEventDefaultImplementation() {
+ Span mockSpan = Mockito.mock(Span.class);
+ MessageEvent messageEvent =
+ MessageEvent.builder(MessageEvent.Type.SENT, 123)
+ .setUncompressedMessageSize(456)
+ .setCompressedMessageSize(789)
+ .build();
+ NetworkEvent networkEvent =
+ NetworkEvent.builder(NetworkEvent.Type.SENT, 123)
+ .setUncompressedMessageSize(456)
+ .setCompressedMessageSize(789)
+ .build();
+ Mockito.doCallRealMethod().when(mockSpan).addMessageEvent(messageEvent);
+ mockSpan.addMessageEvent(messageEvent);
+ verify(mockSpan).addNetworkEvent(eq(networkEvent));
+ }
}
diff --git a/api/src/test/java/io/opencensus/trace/config/TraceConfigTest.java b/api/src/test/java/io/opencensus/trace/config/TraceConfigTest.java
index ee80cab4..d48e0894 100644
--- a/api/src/test/java/io/opencensus/trace/config/TraceConfigTest.java
+++ b/api/src/test/java/io/opencensus/trace/config/TraceConfigTest.java
@@ -42,6 +42,7 @@ public class TraceConfigTest {
.setMaxNumberOfAttributes(8)
.setMaxNumberOfAnnotations(9)
.setMaxNumberOfNetworkEvents(10)
+ .setMaxNumberOfMessageEvents(10)
.setMaxNumberOfLinks(11)
.build();
traceConfig.updateActiveTraceParams(traceParams);
diff --git a/api/src/test/java/io/opencensus/trace/config/TraceParamsTest.java b/api/src/test/java/io/opencensus/trace/config/TraceParamsTest.java
index 7ede0a29..6c216174 100644
--- a/api/src/test/java/io/opencensus/trace/config/TraceParamsTest.java
+++ b/api/src/test/java/io/opencensus/trace/config/TraceParamsTest.java
@@ -32,6 +32,7 @@ public class TraceParamsTest {
assertThat(TraceParams.DEFAULT.getMaxNumberOfAttributes()).isEqualTo(32);
assertThat(TraceParams.DEFAULT.getMaxNumberOfAnnotations()).isEqualTo(32);
assertThat(TraceParams.DEFAULT.getMaxNumberOfNetworkEvents()).isEqualTo(128);
+ assertThat(TraceParams.DEFAULT.getMaxNumberOfMessageEvents()).isEqualTo(128);
assertThat(TraceParams.DEFAULT.getMaxNumberOfLinks()).isEqualTo(128);
}
@@ -56,6 +57,11 @@ public class TraceParamsTest {
}
@Test(expected = IllegalArgumentException.class)
+ public void updateTraceParams_NonPositiveMaxNumberOfMessageEvents() {
+ TraceParams.DEFAULT.toBuilder().setMaxNumberOfMessageEvents(0).build();
+ }
+
+ @Test(expected = IllegalArgumentException.class)
public void updateTraceParams_NonPositiveMaxNumberOfLinks() {
TraceParams.DEFAULT.toBuilder().setMaxNumberOfLinks(0).build();
}
@@ -68,13 +74,24 @@ public class TraceParamsTest {
.setSampler(Samplers.alwaysSample())
.setMaxNumberOfAttributes(8)
.setMaxNumberOfAnnotations(9)
- .setMaxNumberOfNetworkEvents(10)
+ .setMaxNumberOfMessageEvents(10)
.setMaxNumberOfLinks(11)
.build();
assertThat(traceParams.getSampler()).isEqualTo(Samplers.alwaysSample());
assertThat(traceParams.getMaxNumberOfAttributes()).isEqualTo(8);
assertThat(traceParams.getMaxNumberOfAnnotations()).isEqualTo(9);
+ // test maxNumberOfNetworkEvent can be set via maxNumberOfMessageEvent
assertThat(traceParams.getMaxNumberOfNetworkEvents()).isEqualTo(10);
+ assertThat(traceParams.getMaxNumberOfMessageEvents()).isEqualTo(10);
assertThat(traceParams.getMaxNumberOfLinks()).isEqualTo(11);
}
+
+ @Test
+ public void updateTraceParams_maxNumberOfNetworkEvents() {
+ TraceParams traceParams =
+ TraceParams.DEFAULT.toBuilder().setMaxNumberOfNetworkEvents(10).build();
+ assertThat(traceParams.getMaxNumberOfNetworkEvents()).isEqualTo(10);
+ // test maxNumberOfMessageEvent can be set via maxNumberOfNetworkEvent
+ assertThat(traceParams.getMaxNumberOfMessageEvents()).isEqualTo(10);
+ }
}
diff --git a/api/src/test/java/io/opencensus/trace/export/SpanDataTest.java b/api/src/test/java/io/opencensus/trace/export/SpanDataTest.java
index 5c8097fa..399b35e0 100644
--- a/api/src/test/java/io/opencensus/trace/export/SpanDataTest.java
+++ b/api/src/test/java/io/opencensus/trace/export/SpanDataTest.java
@@ -24,6 +24,7 @@ import io.opencensus.trace.Annotation;
import io.opencensus.trace.AttributeValue;
import io.opencensus.trace.Link;
import io.opencensus.trace.Link.Type;
+import io.opencensus.trace.MessageEvent;
import io.opencensus.trace.NetworkEvent;
import io.opencensus.trace.SpanContext;
import io.opencensus.trace.SpanId;
@@ -60,6 +61,10 @@ public class SpanDataTest {
NetworkEvent.builder(NetworkEvent.Type.RECV, 1).build();
private static final NetworkEvent sentNetworkEvent =
NetworkEvent.builder(NetworkEvent.Type.SENT, 1).build();
+ private static final MessageEvent recvMessageEvent =
+ MessageEvent.builder(MessageEvent.Type.RECEIVED, 1).build();
+ private static final MessageEvent sentMessageEvent =
+ MessageEvent.builder(MessageEvent.Type.SENT, 1).build();
private static final Status status = Status.DEADLINE_EXCEEDED.withDescription("TooSlow");
private static final int CHILD_SPAN_COUNT = 13;
private final Random random = new Random(1234);
@@ -72,11 +77,14 @@ public class SpanDataTest {
new ArrayList<TimedEvent<Annotation>>();
private final List<TimedEvent<NetworkEvent>> networkEventsList =
new ArrayList<SpanData.TimedEvent<NetworkEvent>>();
+ private final List<TimedEvent<MessageEvent>> messageEventsList =
+ new ArrayList<SpanData.TimedEvent<MessageEvent>>();
private final List<Link> linksList = new ArrayList<Link>();
private Attributes attributes;
private TimedEvents<Annotation> annotations;
private TimedEvents<NetworkEvent> networkEvents;
+ private TimedEvents<MessageEvent> messageEvents;
private Links links;
@Before
@@ -90,6 +98,9 @@ public class SpanDataTest {
networkEventsList.add(SpanData.TimedEvent.create(eventTimestamp1, recvNetworkEvent));
networkEventsList.add(SpanData.TimedEvent.create(eventTimestamp2, sentNetworkEvent));
networkEvents = TimedEvents.create(networkEventsList, 3);
+ messageEventsList.add(SpanData.TimedEvent.create(eventTimestamp1, recvMessageEvent));
+ messageEventsList.add(SpanData.TimedEvent.create(eventTimestamp2, sentMessageEvent));
+ messageEvents = TimedEvents.create(messageEventsList, 3);
linksList.add(Link.fromSpanContext(spanContext, Type.CHILD_LINKED_SPAN));
links = Links.create(linksList, 0);
}
@@ -105,6 +116,37 @@ public class SpanDataTest {
startTimestamp,
attributes,
annotations,
+ messageEvents,
+ links,
+ CHILD_SPAN_COUNT,
+ status,
+ endTimestamp);
+ assertThat(spanData.getContext()).isEqualTo(spanContext);
+ assertThat(spanData.getParentSpanId()).isEqualTo(parentSpanId);
+ assertThat(spanData.getHasRemoteParent()).isTrue();
+ assertThat(spanData.getName()).isEqualTo(SPAN_NAME);
+ assertThat(spanData.getStartTimestamp()).isEqualTo(startTimestamp);
+ assertThat(spanData.getAttributes()).isEqualTo(attributes);
+ assertThat(spanData.getAnnotations()).isEqualTo(annotations);
+ assertThat(spanData.getNetworkEvents()).isEqualTo(networkEvents);
+ assertThat(spanData.getMessageEvents()).isEqualTo(messageEvents);
+ assertThat(spanData.getLinks()).isEqualTo(links);
+ assertThat(spanData.getChildSpanCount()).isEqualTo(CHILD_SPAN_COUNT);
+ assertThat(spanData.getStatus()).isEqualTo(status);
+ assertThat(spanData.getEndTimestamp()).isEqualTo(endTimestamp);
+ }
+
+ @Test
+ public void spanData_Create_Compatibility() {
+ SpanData spanData =
+ SpanData.create(
+ spanContext,
+ parentSpanId,
+ true,
+ SPAN_NAME,
+ startTimestamp,
+ attributes,
+ annotations,
networkEvents,
links,
CHILD_SPAN_COUNT,
@@ -118,6 +160,7 @@ public class SpanDataTest {
assertThat(spanData.getAttributes()).isEqualTo(attributes);
assertThat(spanData.getAnnotations()).isEqualTo(annotations);
assertThat(spanData.getNetworkEvents()).isEqualTo(networkEvents);
+ assertThat(spanData.getMessageEvents()).isEqualTo(messageEvents);
assertThat(spanData.getLinks()).isEqualTo(links);
assertThat(spanData.getChildSpanCount()).isEqualTo(CHILD_SPAN_COUNT);
assertThat(spanData.getStatus()).isEqualTo(status);
@@ -135,7 +178,7 @@ public class SpanDataTest {
startTimestamp,
attributes,
annotations,
- networkEvents,
+ messageEvents,
links,
null,
null,
@@ -148,6 +191,7 @@ public class SpanDataTest {
assertThat(spanData.getAttributes()).isEqualTo(attributes);
assertThat(spanData.getAnnotations()).isEqualTo(annotations);
assertThat(spanData.getNetworkEvents()).isEqualTo(networkEvents);
+ assertThat(spanData.getMessageEvents()).isEqualTo(messageEvents);
assertThat(spanData.getLinks()).isEqualTo(links);
assertThat(spanData.getChildSpanCount()).isNull();
assertThat(spanData.getStatus()).isNull();
@@ -165,7 +209,7 @@ public class SpanDataTest {
startTimestamp,
Attributes.create(Collections.<String, AttributeValue>emptyMap(), 0),
TimedEvents.create(Collections.<SpanData.TimedEvent<Annotation>>emptyList(), 0),
- TimedEvents.create(Collections.<SpanData.TimedEvent<NetworkEvent>>emptyList(), 0),
+ TimedEvents.create(Collections.<SpanData.TimedEvent<MessageEvent>>emptyList(), 0),
Links.create(Collections.<Link>emptyList(), 0),
0,
status,
@@ -178,6 +222,7 @@ public class SpanDataTest {
assertThat(spanData.getAttributes().getAttributeMap().isEmpty()).isTrue();
assertThat(spanData.getAnnotations().getEvents().isEmpty()).isTrue();
assertThat(spanData.getNetworkEvents().getEvents().isEmpty()).isTrue();
+ assertThat(spanData.getMessageEvents().getEvents().isEmpty()).isTrue();
assertThat(spanData.getLinks().getLinks().isEmpty()).isTrue();
assertThat(spanData.getChildSpanCount()).isEqualTo(0);
assertThat(spanData.getStatus()).isEqualTo(status);
@@ -195,7 +240,7 @@ public class SpanDataTest {
startTimestamp,
attributes,
annotations,
- networkEvents,
+ messageEvents,
links,
CHILD_SPAN_COUNT,
status,
@@ -209,7 +254,7 @@ public class SpanDataTest {
startTimestamp,
attributes,
annotations,
- networkEvents,
+ messageEvents,
links,
CHILD_SPAN_COUNT,
status,
@@ -223,7 +268,7 @@ public class SpanDataTest {
startTimestamp,
Attributes.create(Collections.<String, AttributeValue>emptyMap(), 0),
TimedEvents.create(Collections.<SpanData.TimedEvent<Annotation>>emptyList(), 0),
- TimedEvents.create(Collections.<SpanData.TimedEvent<NetworkEvent>>emptyList(), 0),
+ TimedEvents.create(Collections.<SpanData.TimedEvent<MessageEvent>>emptyList(), 0),
Links.create(Collections.<Link>emptyList(), 0),
0,
status,
@@ -245,7 +290,7 @@ public class SpanDataTest {
startTimestamp,
attributes,
annotations,
- networkEvents,
+ messageEvents,
links,
CHILD_SPAN_COUNT,
status,
@@ -257,7 +302,7 @@ public class SpanDataTest {
assertThat(spanDataString).contains(startTimestamp.toString());
assertThat(spanDataString).contains(attributes.toString());
assertThat(spanDataString).contains(annotations.toString());
- assertThat(spanDataString).contains(networkEvents.toString());
+ assertThat(spanDataString).contains(messageEvents.toString());
assertThat(spanDataString).contains(links.toString());
assertThat(spanDataString).contains(status.toString());
assertThat(spanDataString).contains(endTimestamp.toString());