ss: Move plugins to Trace Compass namespace
[deliverable/tracecompass.git] / org.eclipse.linuxtools.tmf.core.tests / src / org / eclipse / linuxtools / tmf / core / tests / request / TmfCoalescedEventRequestTest.java
index 721ae0ef46f3f13ffc4b3a07e98f53c6cb996824..ae5ce9c933547b1feb06eb774240a4f3d2fd9a5b 100644 (file)
@@ -1,5 +1,5 @@
 /*******************************************************************************
- * Copyright (c) 2009, 2013 Ericsson
+ * Copyright (c) 2009, 2014 Ericsson
  *
  * All rights reserved. This program and the accompanying materials are
  * made available under the terms of the Eclipse Public License v1.0 which
@@ -410,6 +410,12 @@ public class TmfCoalescedEventRequestTest {
         }
     }
 
+    private static class TmfTestTriggerSignal2 extends TmfSignal {
+        public TmfTestTriggerSignal2(Object source) {
+            super(source);
+        }
+    }
+
     @TmfSignalHandler
     public void trigger(final TmfTestTriggerSignal signal) {
 
@@ -461,6 +467,27 @@ public class TmfCoalescedEventRequestTest {
         providers[0].sendRequest(request3);
     }
 
+    /**
+     * @param signal
+     *            the trigger signal
+     */
+    @TmfSignalHandler
+    public void trigger(final TmfTestTriggerSignal2 signal) {
+        TmfTimeRange range = new TmfTimeRange(new TmfTimestamp(100, -3), TmfTimestamp.BIG_CRUNCH);
+        requestedEvents1 = new Vector<>();
+        request1 = new TmfEventRequest(ITmfEvent.class, range, 0, 1, ExecutionType.FOREGROUND) {
+            @Override
+            public void handleData(ITmfEvent event) {
+                super.handleData(event);
+                if (!isCompleted()) {
+                    requestedEvents1.add(event);
+                }
+            }
+        };
+        providers = TmfProviderManager.getProviders(ITmfEvent.class, TmfTraceStub.class);
+        providers[0].sendRequest(request1);
+    }
+
     public void runCoalescedRequest(long startIndex) throws InterruptedException {
 
         fTrace = setupTrace(TEST_TRACE.getFullPath());
@@ -543,4 +570,25 @@ public class TmfCoalescedEventRequestTest {
         fTrace = null;
     }
 
+    @Test
+    public void testSingleTimeRequest() throws InterruptedException {
+
+        fTrace = setupTrace(TEST_TRACE.getFullPath());
+
+        TmfSignalManager.register(this);
+        TmfTestTriggerSignal2 signal = new TmfTestTriggerSignal2(this);
+        TmfSignalManager.dispatchSignal(signal);
+
+        request1.waitForCompletion();
+
+        assertTrue("Request1: isCompleted", request1.isCompleted());
+
+        // We have to have one event processed
+        assertEquals("Request1: nbEvents", 1, requestedEvents1.size());
+
+        TmfSignalManager.deregister(this);
+        fTrace.dispose();
+        fTrace = null;
+    }
+
 }
This page took 0.028992 seconds and 5 git commands to generate.