From d016f31b466885bc304b5a4a8c7178b71e8a408b Mon Sep 17 00:00:00 2001 From: baiyang Date: Thu, 20 Apr 2017 16:25:40 +0800 Subject: [PATCH] modify test case --- .../v3/MongoDBMethodInterceptorTest.java | 23 ++++++++++++------- .../v3/MongoDBWriteMethodInterceptorTest.java | 17 +++++++++----- 2 files changed, 26 insertions(+), 14 deletions(-) diff --git a/skywalking-sniffer/skywalking-sdk-plugin/mongodb-3.x-plugin/src/test/java/com/a/eye/skywalking/plugin/mongodb/v3/MongoDBMethodInterceptorTest.java b/skywalking-sniffer/skywalking-sdk-plugin/mongodb-3.x-plugin/src/test/java/com/a/eye/skywalking/plugin/mongodb/v3/MongoDBMethodInterceptorTest.java index caf4e7f02..bd589478e 100644 --- a/skywalking-sniffer/skywalking-sdk-plugin/mongodb-3.x-plugin/src/test/java/com/a/eye/skywalking/plugin/mongodb/v3/MongoDBMethodInterceptorTest.java +++ b/skywalking-sniffer/skywalking-sdk-plugin/mongodb-3.x-plugin/src/test/java/com/a/eye/skywalking/plugin/mongodb/v3/MongoDBMethodInterceptorTest.java @@ -9,6 +9,7 @@ import static org.mockito.Mockito.when; import org.bson.BsonDocument; import org.bson.BsonString; +import org.bson.codecs.Decoder; import org.hamcrest.CoreMatchers; import org.hamcrest.MatcherAssert; import org.junit.After; @@ -17,6 +18,7 @@ import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.Mock; import org.mockito.runners.MockitoJUnitRunner; +import org.powermock.api.mockito.PowerMockito; import com.a.eye.skywalking.api.boot.ServiceManager; import com.a.eye.skywalking.api.conf.Config; @@ -29,6 +31,7 @@ import com.a.eye.skywalking.trace.LogData; import com.a.eye.skywalking.trace.Span; import com.a.eye.skywalking.trace.TraceSegment; import com.a.eye.skywalking.trace.tag.Tags; +import com.mongodb.MongoNamespace; import com.mongodb.operation.FindOperation; @RunWith(MockitoJUnitRunner.class) @@ -41,11 +44,9 @@ public class MongoDBMethodInterceptorTest { private EnhancedClassInstanceContext classInstanceContext; @Mock private InstanceMethodInvokeContext methodInvokeContext; - @SuppressWarnings("rawtypes") - @Mock - private FindOperation findOperation; - @Before + @SuppressWarnings({ "rawtypes", "unchecked" }) + @Before public void setUp() throws Exception { ServiceManager.INSTANCE.boot(); @@ -62,8 +63,14 @@ public class MongoDBMethodInterceptorTest { BsonDocument document = new BsonDocument(); document.append("name", new BsonString("by")); - - when(findOperation.getFilter()).thenReturn(document); + + MongoNamespace mongoNamespace = new MongoNamespace("test.user"); + + Decoder decoder = PowerMockito.mock(Decoder.class); + + FindOperation findOperation = new FindOperation(mongoNamespace, decoder); + + findOperation.filter(document); when(methodInvokeContext.allArguments()).thenReturn(new Object[] { findOperation }); } @@ -111,11 +118,11 @@ public class MongoDBMethodInterceptorTest { } private void assertRedisSpan(Span span) { - // assertThat(span.getOperationName(), is("MongoDB/FindOperation")); + assertThat(span.getOperationName(), is("MongoDB/FindOperation")); assertThat(Tags.PEER_HOST.get(span), is("127.0.0.1")); assertThat(Tags.PEER_PORT.get(span), is(27017)); assertThat(Tags.COMPONENT.get(span), is("MongoDB")); - // assertThat(Tags.DB_STATEMENT.get(span), is("find { \"name\" : \"by\" }")); + assertThat(Tags.DB_STATEMENT.get(span), is("FindOperation { \"name\" : \"by\" }")); assertThat(Tags.DB_TYPE.get(span), is("MongoDB")); assertTrue(Tags.SPAN_LAYER.isDB(span)); } diff --git a/skywalking-sniffer/skywalking-sdk-plugin/mongodb-3.x-plugin/src/test/java/com/a/eye/skywalking/plugin/mongodb/v3/MongoDBWriteMethodInterceptorTest.java b/skywalking-sniffer/skywalking-sdk-plugin/mongodb-3.x-plugin/src/test/java/com/a/eye/skywalking/plugin/mongodb/v3/MongoDBWriteMethodInterceptorTest.java index 20854d504..21f913838 100644 --- a/skywalking-sniffer/skywalking-sdk-plugin/mongodb-3.x-plugin/src/test/java/com/a/eye/skywalking/plugin/mongodb/v3/MongoDBWriteMethodInterceptorTest.java +++ b/skywalking-sniffer/skywalking-sdk-plugin/mongodb-3.x-plugin/src/test/java/com/a/eye/skywalking/plugin/mongodb/v3/MongoDBWriteMethodInterceptorTest.java @@ -20,6 +20,7 @@ import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.Mock; import org.mockito.runners.MockitoJUnitRunner; +import org.powermock.api.mockito.PowerMockito; import com.a.eye.skywalking.api.boot.ServiceManager; import com.a.eye.skywalking.api.conf.Config; @@ -32,6 +33,8 @@ import com.a.eye.skywalking.trace.LogData; import com.a.eye.skywalking.trace.Span; import com.a.eye.skywalking.trace.TraceSegment; import com.a.eye.skywalking.trace.tag.Tags; +import com.mongodb.MongoNamespace; +import com.mongodb.WriteConcern; import com.mongodb.bulk.DeleteRequest; import com.mongodb.operation.DeleteOperation; @@ -45,8 +48,6 @@ public class MongoDBWriteMethodInterceptorTest { private EnhancedClassInstanceContext classInstanceContext; @Mock private InstanceMethodInvokeContext methodInvokeContext; - @Mock - private DeleteOperation deleteOperation; @Before public void setUp() throws Exception { @@ -71,8 +72,12 @@ public class MongoDBWriteMethodInterceptorTest { DeleteRequest deleteRequest = new DeleteRequest(document); requestList.add(deleteRequest); - - when(deleteOperation.getDeleteRequests()).thenReturn(requestList); + + MongoNamespace mongoNamespace = new MongoNamespace("test.user"); + + WriteConcern writeConcern = PowerMockito.mock(WriteConcern.class); + + DeleteOperation deleteOperation = new DeleteOperation(mongoNamespace,false,writeConcern,requestList); when(methodInvokeContext.allArguments()).thenReturn(new Object[] { deleteOperation }); } @@ -94,11 +99,11 @@ public class MongoDBWriteMethodInterceptorTest { } private void assertRedisSpan(Span span) { - // assertThat(span.getOperationName(), is("MongoDB/DeleteOperation")); + assertThat(span.getOperationName(), is("MongoDB/DeleteOperation")); assertThat(Tags.PEER_HOST.get(span), is("127.0.0.1")); assertThat(Tags.PEER_PORT.get(span), is(27017)); assertThat(Tags.COMPONENT.get(span), is("MongoDB")); - // assertThat(Tags.DB_STATEMENT.get(span), is("DeleteOperation { \"name\" : \"by\" },")); + assertThat(Tags.DB_STATEMENT.get(span), is("DeleteOperation { \"name\" : \"by\" },")); assertThat(Tags.DB_TYPE.get(span), is("MongoDB")); assertTrue(Tags.SPAN_LAYER.isDB(span)); }