*
* Contributors:
* Matthew Khouzam - Initial API and implementation
+ * Marc-Andre Laperle - Test in traces directory recursively
+ * Simon Delisle - Add test for getCallsite(eventName, ip)
*******************************************************************************/
package org.eclipse.linuxtools.ctf.core.tests.trace;
import java.io.File;
import java.nio.ByteOrder;
-import java.util.Map;
import java.util.UUID;
import org.eclipse.linuxtools.ctf.core.event.CTFClock;
import org.eclipse.linuxtools.ctf.core.event.types.Definition;
import org.eclipse.linuxtools.ctf.core.event.types.StructDeclaration;
-import org.eclipse.linuxtools.ctf.core.tests.shared.CtfTestTraces;
+import org.eclipse.linuxtools.ctf.core.tests.shared.CtfTestTrace;
import org.eclipse.linuxtools.ctf.core.trace.CTFReaderException;
import org.eclipse.linuxtools.ctf.core.trace.CTFTrace;
import org.eclipse.linuxtools.ctf.core.trace.Stream;
*
* @author ematkho
*/
-@SuppressWarnings("nls")
public class CTFTraceTest {
- private static final int TRACE_INDEX = 0;
+ private static final CtfTestTrace testTrace = CtfTestTrace.KERNEL;
private CTFTrace fixture;
*/
@Before
public void setUp() {
- assumeTrue(CtfTestTraces.tracesExist());
- fixture = CtfTestTraces.getTestTraceFromFile(TRACE_INDEX);
+ assumeTrue(testTrace.exists());
+ try {
+ fixture = testTrace.getTraceFromFile();
+ } catch (CTFReaderException e) {
+ /* If the assumeTrue() call passed, this should not happen. */
+ fail();
+ }
fixture.setMinor(1L);
fixture.setUUID(UUID.randomUUID());
fixture.setPacketHeader(new StructDeclaration(1L));
*/
@Test
public void testOpen_existing() {
- CTFTrace result = CtfTestTraces.getTestTraceFromFile(TRACE_INDEX);
- assertNotNull(result.getUUID());
+ try {
+ CTFTrace result = testTrace.getTraceFromFile();
+ assertNotNull(result.getUUID());
+ } catch (CTFReaderException e) {
+ fail();
+ }
}
/**
*/
@Test
public void testUUIDIsSet() {
- boolean result = fixture.UUIDIsSet();
+ boolean result = fixture.uuidIsSet();
assertTrue(result);
}
// Add a stream
try {
- Stream stream = new Stream(CtfTestTraces.getTestTrace(TRACE_INDEX));
+ Stream stream = new Stream(testTrace.getTrace());
stream.setId(1234);
fixture.addStream(stream);
} catch (CTFReaderException e) {
assertNotNull(result);
}
- /**
- * Run the Map<Long, Stream> getStreams() method test.
- */
- @Test
- public void testGetStreams() {
- Map<Long, Stream> result = fixture.getStreams();
- assertNotNull(result);
- }
-
/**
* Run the File getTraceDirectory() method test.
*/
}
/**
- * Run the boolean majortIsSet() method test.
+ * Run the boolean majorIsSet() method test.
*/
@Test
- public void testMajortIsSet() {
- boolean result = fixture.majortIsSet();
+ public void testMajorIsSet() {
+ boolean result = fixture.majorIsSet();
assertTrue(result);
}
*/
@Test
public void testPacketHeaderIsSet_invalid() {
- CTFTrace fixture2 = CtfTestTraces.getTestTraceFromFile(TRACE_INDEX);
- fixture2.setMinor(1L);
- fixture2.setUUID(UUID.randomUUID());
- fixture2.setPacketHeader((StructDeclaration) null); /* it's null here! */
- fixture2.setMajor(1L);
- fixture2.setByteOrder(ByteOrder.BIG_ENDIAN);
-
- boolean result = fixture2.packetHeaderIsSet();
- assertFalse(result);
+ try {
+ CTFTrace fixture2 = testTrace.getTraceFromFile();
+ fixture2.setMinor(1L);
+ fixture2.setUUID(UUID.randomUUID());
+ fixture2.setPacketHeader((StructDeclaration) null); /* it's null here! */
+ fixture2.setMajor(1L);
+ fixture2.setByteOrder(ByteOrder.BIG_ENDIAN);
+
+ boolean result = fixture2.packetHeaderIsSet();
+ assertFalse(result);
+ } catch (CTFReaderException e) {
+ fail();
+ }
}
/**
@Test
public void testLookupEnvironment_1() {
String key = "";
- String result = fixture.lookupEnvironment(key);
+ String result = fixture.getEnvironment().get(key);
assertNull(result);
}
@Test
public void testLookupEnvironment_2() {
String key = "otherTest";
- String result = fixture.lookupEnvironment(key);
+ String result = fixture.getEnvironment().get(key);
assertNull(result);
}
public void testLookupEnvironment_3() {
String key = "test";
fixture.addEnvironmentVar(key, key);
- String result = fixture.lookupEnvironment(key);
+ String result = fixture.getEnvironment().get(key);
assertTrue(result.equals(key));
}
String key = "test";
fixture.addEnvironmentVar(key, "bozo");
fixture.addEnvironmentVar(key, "the clown");
- String result = fixture.lookupEnvironment(key);
+ String result = fixture.getEnvironment().get(key);
assertNotNull(result);
}
+ /**
+ * Test for getCallsite(eventName, ip)
+ * @throws CTFReaderException not expected
+ */
+ @Test
+ public void callsitePosition() throws CTFReaderException{
+ long ip1 = 2;
+ long ip2 = 5;
+ long ip3 = 7;
+ CTFTrace callsiteTest = testTrace.getTraceFromFile();
+ callsiteTest.addCallsite("testEvent", null, ip1, null, 23);
+ callsiteTest.addCallsite("testEvent", null, ip2, null, 50);
+ callsiteTest.addCallsite("testEvent", null, ip3, null, 15);
+
+ assertEquals(2, (callsiteTest.getCallsite("testEvent", 1)).getIp());
+ assertEquals(2, (callsiteTest.getCallsite("testEvent", 2)).getIp());
+ assertEquals(5, (callsiteTest.getCallsite("testEvent", 3)).getIp());
+ assertEquals(5, (callsiteTest.getCallsite("testEvent", 5)).getIp());
+ assertEquals(7, (callsiteTest.getCallsite("testEvent", 6)).getIp());
+ assertEquals(7, (callsiteTest.getCallsite("testEvent", 7)).getIp());
+ assertEquals(7, (callsiteTest.getCallsite("testEvent", 8)).getIp());
+ }
+
}