Add mock-module test cases.

This commit is contained in:
wusheng 2017-02-21 09:47:29 +08:00
parent b69cd85149
commit 47871d1571
2 changed files with 43 additions and 1 deletions

View File

@ -30,6 +30,15 @@ public class MockTracerContextListener implements TracerContextListener {
Assert.assertEquals(size, finishedTraceSegments.size());
}
/**
* Assert the given index is a valid index of {@link #finishedTraceSegments}
*
* @param index the given index.
*/
public void assertValidIndex(int index){
Assert.assertTrue(index < finishedTraceSegments.size());
}
/**
* Assert the {@link TraceSegment} at the given index of {@link #finishedTraceSegments},
* and run the given {@link SegmentAssert#call(TraceSegment)} to assert.
@ -38,7 +47,7 @@ public class MockTracerContextListener implements TracerContextListener {
* @param segmentAssert the given assert.
*/
public void assertTraceSegment(int index, SegmentAssert segmentAssert){
assertSize(index + 1);
assertValidIndex(index);
segmentAssert.call(finishedTraceSegments.get(index));
}

View File

@ -1,7 +1,9 @@
package com.a.eye.skywalking.sniffer.mock;
import com.a.eye.skywalking.sniffer.mock.context.MockTracerContextListener;
import com.a.eye.skywalking.sniffer.mock.context.SegmentAssert;
import com.a.eye.skywalking.sniffer.mock.trace.TraceSegmentBuilderFactory;
import com.a.eye.skywalking.trace.TraceSegment;
import org.junit.Assert;
import org.junit.Test;
@ -16,4 +18,35 @@ public class MockTracerContextListenerTestCase {
Assert.assertNotNull(listener.getFinished(0));
}
@Test(expected = AssertionError.class)
public void testAssertSize(){
MockTracerContextListener listener = new MockTracerContextListener();
listener.afterFinished(TraceSegmentBuilderFactory.INSTANCE.singleTomcat404Trace());
listener.assertSize(0);
}
@Test
public void testAssertTraceSegment(){
MockTracerContextListener listener = new MockTracerContextListener();
listener.afterFinished(TraceSegmentBuilderFactory.INSTANCE.singleTomcat404Trace());
listener.afterFinished(TraceSegmentBuilderFactory.INSTANCE.singleTomcat500Trace());
listener.assertTraceSegment(0, new SegmentAssert() {
@Override public void call(TraceSegment finishedSegment) {
Assert.assertNotNull(finishedSegment);
}
});
}
@Test(expected = AssertionError.class)
public void testClear(){
MockTracerContextListener listener = new MockTracerContextListener();
listener.afterFinished(TraceSegmentBuilderFactory.INSTANCE.singleTomcat404Trace());
listener.afterFinished(TraceSegmentBuilderFactory.INSTANCE.singleTomcat500Trace());
listener.clear();
listener.assertValidIndex(0);
}
}