Skip to content

Commit

Permalink
addl test case
Browse files Browse the repository at this point in the history
  • Loading branch information
lmcalpin committed Mar 5, 2012
1 parent a5916df commit 4b0c404
Show file tree
Hide file tree
Showing 3 changed files with 43 additions and 1 deletion.
6 changes: 6 additions & 0 deletions sidrat-core/pom.xml
Expand Up @@ -40,6 +40,12 @@
<artifactId>commons-io</artifactId>
<version>1.3.2</version>
</dependency>
<dependency>
<groupId>org.easymock</groupId>
<artifactId>easymock</artifactId>
<version>3.1</version>
<scope>test</scope>
</dependency>
</dependencies>
<repositories>
<repository>
Expand Down
7 changes: 6 additions & 1 deletion sidrat-core/src/main/java/com/sidrat/SidratDebugger.java
Expand Up @@ -25,7 +25,12 @@ public class SidratDebugger {
public static ThreadLocal<SidratDebugger> DEBUGGER_CONTEXT = new ThreadLocal<SidratDebugger>();

public static SidratDebugger instance() {
return DEBUGGER_CONTEXT.get();
SidratDebugger debugger = DEBUGGER_CONTEXT.get();
if (debugger == null) {
debugger = new SidratDebugger();
DEBUGGER_CONTEXT.set(debugger);
}
return debugger;
}

public SidratDebugger includePackage(String pkg) {
Expand Down
31 changes: 31 additions & 0 deletions sidrat-core/src/test/java/com/sidrat/event/SidratCallbackTest.java
@@ -1,12 +1,24 @@
package com.sidrat.event;

import static org.easymock.EasyMock.capture;
import static org.easymock.EasyMock.isA;

import com.sidrat.SidratDebugger;
import com.sidrat.event.store.EventStore;

import org.easymock.Capture;
import org.easymock.EasyMock;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Test;

public class SidratCallbackTest {
EventStore mockedEventStore;

@Before
public void init() {
mockedEventStore = EasyMock.createMock(EventStore.class);
SidratDebugger.instance().store(mockedEventStore);
while (SidratCallback.currentFrame() != null) {
SidratCallback.popFrame();
}
Expand All @@ -27,4 +39,23 @@ public void testExitPopsCurrentFrameToStack() {
SidratCallback.exit();
Assert.assertNull(SidratCallback.currentFrame());
}

@Test
public void testExec() {
// expectations
Capture<SidratExecutionEvent> captured = new Capture<SidratExecutionEvent>();
mockedEventStore.store(capture(captured));

EasyMock.replay(mockedEventStore);

SidratCallback.enter("com.Test", "foo");
SidratCallback.exec(10);

EasyMock.verify(mockedEventStore);

Assert.assertEquals("com.Test", captured.getValue().getClassName());
Assert.assertEquals("foo", captured.getValue().getMethodName());
Assert.assertEquals(10, captured.getValue().getLineNumber());
}

}

0 comments on commit 4b0c404

Please sign in to comment.