Skip to content

Commit

Permalink
Allow ShadowEvent to set thread id as well.
Browse files Browse the repository at this point in the history
PiperOrigin-RevId: 235020777
  • Loading branch information
Googler authored and copybara-robolectric committed Feb 21, 2019
1 parent 0b5944c commit ff84723
Show file tree
Hide file tree
Showing 2 changed files with 24 additions and 0 deletions.
Expand Up @@ -23,13 +23,15 @@ public class ShadowEventLogTest {

private static final int TEST_TAG = 1;
private static final int TEST_PROCESS_ID = 2;
private static final int TEST_THREAD_ID = 3;
private static final long TEST_TIME_NANOS = 3L;

@Test
public void testAddEvent_testStringLog() throws Exception {
EventLog.Event event =
new ShadowEventLog.EventBuilder(TEST_TAG, TEST_STRING1)
.setProcessId(TEST_PROCESS_ID)
.setThreadId(TEST_THREAD_ID)
.setTimeNanos(TEST_TIME_NANOS)
.build();
ShadowEventLog.addEvent(event);
Expand All @@ -39,6 +41,7 @@ public void testAddEvent_testStringLog() throws Exception {
assertThat(events).hasSize(1);
assertThat(events.get(0).getTag()).isEqualTo(TEST_TAG);
assertThat(events.get(0).getProcessId()).isEqualTo(TEST_PROCESS_ID);
assertThat(events.get(0).getThreadId()).isEqualTo(TEST_THREAD_ID);
assertThat(events.get(0).getTimeNanos()).isEqualTo(TEST_TIME_NANOS);
assertThat((String) events.get(0).getData()).isEqualTo(TEST_STRING1);
}
Expand All @@ -48,6 +51,7 @@ public void testAddEvent_testIntLog() throws Exception {
EventLog.Event event =
new ShadowEventLog.EventBuilder(TEST_TAG, TEST_INT)
.setProcessId(TEST_PROCESS_ID)
.setThreadId(TEST_THREAD_ID)
.setTimeNanos(TEST_TIME_NANOS)
.build();
ShadowEventLog.addEvent(event);
Expand All @@ -57,6 +61,7 @@ public void testAddEvent_testIntLog() throws Exception {
assertThat(events).hasSize(1);
assertThat(events.get(0).getTag()).isEqualTo(TEST_TAG);
assertThat(events.get(0).getProcessId()).isEqualTo(TEST_PROCESS_ID);
assertThat(events.get(0).getThreadId()).isEqualTo(TEST_THREAD_ID);
assertThat(events.get(0).getTimeNanos()).isEqualTo(TEST_TIME_NANOS);
assertThat((int) events.get(0).getData()).isEqualTo(TEST_INT);
}
Expand All @@ -66,6 +71,7 @@ public void testAddEvent_testLongLog() throws Exception {
EventLog.Event event =
new ShadowEventLog.EventBuilder(TEST_TAG, TEST_LONG)
.setProcessId(TEST_PROCESS_ID)
.setThreadId(TEST_THREAD_ID)
.setTimeNanos(TEST_TIME_NANOS)
.build();
ShadowEventLog.addEvent(event);
Expand All @@ -75,6 +81,7 @@ public void testAddEvent_testLongLog() throws Exception {
assertThat(events).hasSize(1);
assertThat(events.get(0).getTag()).isEqualTo(TEST_TAG);
assertThat(events.get(0).getProcessId()).isEqualTo(TEST_PROCESS_ID);
assertThat(events.get(0).getThreadId()).isEqualTo(TEST_THREAD_ID);
assertThat(events.get(0).getTimeNanos()).isEqualTo(TEST_TIME_NANOS);
assertThat((long) events.get(0).getData()).isEqualTo(TEST_LONG);
}
Expand All @@ -84,6 +91,7 @@ public void testAddEvent_testFloatLog() throws Exception {
EventLog.Event event =
new ShadowEventLog.EventBuilder(TEST_TAG, TEST_FLOAT)
.setProcessId(TEST_PROCESS_ID)
.setThreadId(TEST_THREAD_ID)
.setTimeNanos(TEST_TIME_NANOS)
.build();
ShadowEventLog.addEvent(event);
Expand All @@ -93,6 +101,7 @@ public void testAddEvent_testFloatLog() throws Exception {
assertThat(events).hasSize(1);
assertThat(events.get(0).getTag()).isEqualTo(TEST_TAG);
assertThat(events.get(0).getProcessId()).isEqualTo(TEST_PROCESS_ID);
assertThat(events.get(0).getThreadId()).isEqualTo(TEST_THREAD_ID);
assertThat(events.get(0).getTimeNanos()).isEqualTo(TEST_TIME_NANOS);
assertThat((float) events.get(0).getData()).isEqualTo(TEST_FLOAT);
}
Expand All @@ -102,6 +111,7 @@ public void testAddEvent_testListLog() throws Exception {
EventLog.Event event =
new ShadowEventLog.EventBuilder(TEST_TAG, new String[] {TEST_STRING1, TEST_STRING2})
.setProcessId(TEST_PROCESS_ID)
.setThreadId(TEST_THREAD_ID)
.setTimeNanos(TEST_TIME_NANOS)
.build();
ShadowEventLog.addEvent(event);
Expand All @@ -111,6 +121,7 @@ public void testAddEvent_testListLog() throws Exception {
assertThat(events).hasSize(1);
assertThat(events.get(0).getTag()).isEqualTo(TEST_TAG);
assertThat(events.get(0).getProcessId()).isEqualTo(TEST_PROCESS_ID);
assertThat(events.get(0).getThreadId()).isEqualTo(TEST_THREAD_ID);
assertThat(((String[]) events.get(0).getData())[0]).isEqualTo(TEST_STRING1);
assertThat(((String[]) events.get(0).getData())[1]).isEqualTo(TEST_STRING2);
}
Expand Down
Expand Up @@ -26,6 +26,7 @@ public static class ShadowEvent {
private Object data;
private int tag;
private int processId;
private int threadId;
private long timeNanos;

@Implementation
Expand All @@ -43,6 +44,11 @@ protected int getProcessId() {
return processId;
}

@Implementation
protected int getThreadId() {
return threadId;
}

@Implementation
protected long getTimeNanos() {
return timeNanos;
Expand All @@ -57,6 +63,7 @@ public static class EventBuilder {
private final Object data;
private final int tag;
private int processId = ShadowProcess.myPid();
private int threadId = ShadowProcess.myTid();
private long timeNanos = System.nanoTime();

public EventBuilder(int tag, Object data) {
Expand All @@ -69,6 +76,11 @@ public EventBuilder setProcessId(int processId) {
return this;
}

public EventBuilder setThreadId(int threadId) {
this.threadId = threadId;
return this;
}

public EventBuilder setTimeNanos(long timeNanos) {
this.timeNanos = timeNanos;
return this;
Expand All @@ -80,6 +92,7 @@ public EventLog.Event build() {
shadowEvent.data = data;
shadowEvent.tag = tag;
shadowEvent.processId = processId;
shadowEvent.threadId = threadId;
shadowEvent.timeNanos = timeNanos;
return event;
}
Expand Down

0 comments on commit ff84723

Please sign in to comment.