tmf: Re-enable the unit tests depending on CTF traces
[deliverable/tracecompass.git] / org.eclipse.linuxtools.tmf.core.tests / src / org / eclipse / linuxtools / tmf / core / tests / ctfadaptor / CtfTmfEventTest.java
index f572f59d20d549660c62266ba00cc778d06f165c..1e55fedaf1426eedd12b6fe0d6c138f1cbd401a8 100644 (file)
@@ -1,63 +1,73 @@
+/*******************************************************************************
+ * Copyright (c) 2012-2013 Ericsson
+ *
+ * All rights reserved. This program and the accompanying materials are
+ * made available under the terms of the Eclipse Public License v1.0 which
+ * accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *   Matthew Khouzam - Initial generation with CodePro tools
+ *   Alexandre Montplaisir - Clean up, consolidate redundant tests
+ *******************************************************************************/
+
 package org.eclipse.linuxtools.tmf.core.tests.ctfadaptor;
 
 import static org.junit.Assert.assertArrayEquals;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
+import static org.junit.Assert.assertSame;
+import static org.junit.Assume.assumeTrue;
 
-import java.io.FileNotFoundException;
+import java.util.Set;
 
 import org.eclipse.linuxtools.tmf.core.ctfadaptor.CtfIterator;
 import org.eclipse.linuxtools.tmf.core.ctfadaptor.CtfTmfEvent;
+import org.eclipse.linuxtools.tmf.core.ctfadaptor.CtfTmfEventFactory;
 import org.eclipse.linuxtools.tmf.core.ctfadaptor.CtfTmfTrace;
 import org.eclipse.linuxtools.tmf.core.event.ITmfEventField;
 import org.eclipse.linuxtools.tmf.core.event.ITmfEventType;
-import org.eclipse.linuxtools.tmf.core.exceptions.TmfTraceException;
-import org.junit.After;
+import org.eclipse.linuxtools.tmf.core.tests.shared.CtfTmfTestTraces;
+import org.eclipse.linuxtools.tmf.core.trace.ITmfContext;
 import org.junit.Before;
+import org.junit.BeforeClass;
 import org.junit.Test;
 
 /**
- * The class <code>CTFEventTest</code> contains tests for the class
- * <code>{@link CTFEvent}</code>.
+ * The class <code>CtfTmfEventTest</code> contains tests for the class
+ * <code>{@link CtfTmfEvent}</code>.
  *
  * @author ematkho
  * @version $Revision: 1.0 $
  */
 public class CtfTmfEventTest {
 
+    private static final int TRACE_INDEX = 0;
+
+    private static CtfTmfEvent nullEvent;
     private CtfTmfEvent fixture;
 
     /**
-     * Launch the test.
-     *
-     * @param args
-     *            the command line arguments
+     * Test class initialization
      */
-    public static void main(String[] args) {
-        new org.junit.runner.JUnitCore().run(CtfTmfEventTest.class);
+    @BeforeClass
+    public static void initialize() {
+        nullEvent = CtfTmfEventFactory.getNullEvent();
     }
 
     /**
      * Perform pre-test initialization.
-     *
-     * @throws FileNotFoundException
      */
     @Before
-    public void setUp() throws TmfTraceException {
-        CtfTmfTrace trace = TestParams.createTrace();
+    public void setUp() {
+        assumeTrue(CtfTmfTestTraces.tracesExist());
+        CtfTmfTrace trace = CtfTmfTestTraces.getTestTrace(TRACE_INDEX);
         CtfIterator tr = new CtfIterator(trace);
         tr.advance();
         fixture = tr.getCurrentEvent();
     }
 
-    /**
-     * Perform post-test clean-up.
-     */
-    @After
-    public void tearDown() {
-        // Add additional tear down code here
-    }
-
     /**
      * Run the CTFEvent(EventDefinition,StreamInputReader) constructor test.
      */
@@ -71,31 +81,16 @@ public class CtfTmfEventTest {
      */
     @Test
     public void testGetCPU() {
-        CtfTmfEvent nullEvent = CtfTmfEvent.getNullEvent();
         int result = nullEvent.getCPU();
-
         assertEquals(-1, result);
     }
 
-    /**
-     * Run the String getChannelName() method test.
-     */
-    @Test
-    public void testGetChannelName() {
-        CtfTmfEvent nullEvent = CtfTmfEvent.getNullEvent();
-        String result = nullEvent.getChannelName();
-
-        assertEquals("No stream", result); //$NON-NLS-1$
-    }
-
     /**
      * Run the String getEventName() method test.
      */
     @Test
     public void testGetEventName() {
-        CtfTmfEvent nullEvent = CtfTmfEvent.getNullEvent();
         String result = nullEvent.getEventName();
-
         assertEquals("Empty CTF event", result); //$NON-NLS-1$
     }
 
@@ -113,10 +108,11 @@ public class CtfTmfEventTest {
      */
     @Test
     public void testGetFieldValue() {
-        String fieldName = "ret"; //$NON-NLS-1$
-        Object result = fixture.getContent().getField(fieldName).getValue();
+        String fieldName = "pid"; //$NON-NLS-1$
+        ITmfEventField result = fixture.getContent().getField(fieldName);
 
         assertNotNull(result);
+        assertNotNull(result.getValue());
     }
 
     /**
@@ -124,7 +120,6 @@ public class CtfTmfEventTest {
      */
     @Test
     public void testGetFields() {
-        CtfTmfEvent nullEvent = CtfTmfEvent.getNullEvent();
         ITmfEventField[] fields = nullEvent.getContent().getFields();
         ITmfEventField[] fields2 = new ITmfEventField[0];
         assertArrayEquals(fields2, fields);
@@ -135,65 +130,72 @@ public class CtfTmfEventTest {
      */
     @Test
     public void testGetID() {
-        CtfTmfEvent nullEvent = CtfTmfEvent.getNullEvent();
         long result = nullEvent.getID();
-
         assertEquals(-1L, result);
     }
 
-    @Test
-    public void testClone() {
-        CtfTmfEvent other = CtfTmfEvent.getNullEvent().clone();
-        assertNotNull(other);
-    }
-
-    /**
-     * Run the CTFEvent getNullEvent() method test.
-     */
-    @Test
-    public void testGetNullEvent() {
-        CtfTmfEvent nullEvent = CtfTmfEvent.getNullEvent();
-
-        assertNotNull(nullEvent);
-        assertEquals(-1, nullEvent.getCPU());
-        assertEquals("Empty CTF event", nullEvent.getEventName()); //$NON-NLS-1$
-        assertEquals("No stream", nullEvent.getChannelName()); //$NON-NLS-1$
-        assertArrayEquals(new ITmfEventField[0], nullEvent.getContent().getFields());
-        assertEquals(-1L, nullEvent.getID());
-        assertEquals(-1L, nullEvent.getTimestampValue());
-    }
-
     /**
      * Run the long getTimestamp() method test.
-     *
      */
     @Test
     public void testGetTimestamp() {
-        CtfTmfEvent nullEvent = CtfTmfEvent.getNullEvent();
-        long result = nullEvent.getTimestampValue();
-
+        long result = nullEvent.getTimestamp().getValue();
         assertEquals(-1L, result);
     }
 
+    /**
+     * Test the getters for the reference, source and type.
+     */
     @Test
-    public void testRankTraceRefSourceType() {
+    public void testGetters() {
         long rank = fixture.getRank();
         CtfTmfTrace trace = fixture.getTrace();
-        String channelName = fixture.getChannelName();
         String reference = fixture.getReference();
         String source = fixture.getSource();
         ITmfEventType type = fixture.getType();
-        assertEquals(rank, 0);
-        assertEquals(trace.getName(), "kernel"); //$NON-NLS-1$
-        assertEquals(channelName, "channel0_1"); //$NON-NLS-1$
-        assertEquals(reference,"channel0_1"); //$NON-NLS-1$
-        assertEquals(source, "1"); //$NON-NLS-1$
-        assertEquals(type.toString(), "exit_syscall"); //$NON-NLS-1$
+        assertEquals(ITmfContext.UNKNOWN_RANK, rank);
+        assertEquals("test", trace.getName()); //$NON-NLS-1$
+        assertEquals("channel0_1", reference); //$NON-NLS-1$
+        assertEquals("1", source); //$NON-NLS-1$
+        assertEquals("lttng_statedump_vm_map", type.toString()); //$NON-NLS-1$
+    }
+
+    /**
+     * Test the custom CTF attributes methods. The test trace doesn't have any,
+     * so the list of attributes should be empty.
+     */
+    @Test
+    public void testCustomAttributes() {
+        Set<String> attributes = fixture.listCustomAttributes();
+        assertEquals(0, attributes.size());
+
+        String attrib = fixture.getCustomAttribute("bozo"); //$NON-NLS-1$
+        assertNull(attrib);
     }
 
+    /**
+     * Test the toString() method
+     */
     @Test
-    public void TestToString() {
+    public void testToString() {
         String s = fixture.getContent().toString();
-        assertEquals("ret=4132\t", s); //$NON-NLS-1$
+        assertEquals("pid=1922, inode=917738, flags=0x8000075, end=0xb73ec000, start=0xb73ea000, pgoff=0", s); //$NON-NLS-1$
+    }
+
+    /**
+     * Test the {@link CtfTmfEventFactory#getNullEvent()} method, and the
+     * nullEvent's values.
+     */
+    @Test
+    public void testNullEvent() {
+        CtfTmfEvent nullEvent2 = CtfTmfEventFactory.getNullEvent();
+        assertSame(nullEvent2, nullEvent);
+        assertNotNull(nullEvent);
+        assertEquals(-1, nullEvent.getCPU());
+        assertEquals("Empty CTF event", nullEvent.getEventName()); //$NON-NLS-1$
+        assertEquals("No stream", nullEvent.getReference()); //$NON-NLS-1$
+        assertArrayEquals(new ITmfEventField[0], nullEvent.getContent().getFields());
+        assertEquals(-1L, nullEvent.getID());
+        assertEquals(-1L, nullEvent.getTimestamp().getValue());
     }
 }
This page took 0.02713 seconds and 5 git commands to generate.