1 /*******************************************************************************
2 * Copyright (c) 2010 Ericsson
4 * All rights reserved. This program and the accompanying materials are
5 * made available under the terms of the Eclipse Public License v1.0 which
6 * accompanies this distribution, and is available at
7 * http://www.eclipse.org/legal/epl-v10.html
10 * Alvaro Sanchez-Leon (alvsan09@gmail.com) - Initial API and implementation
11 *******************************************************************************/
12 package org
.eclipse
.linuxtools
.lttng
.control
;
14 import org
.eclipse
.linuxtools
.lttng
.LttngTestPreparation
;
15 import org
.eclipse
.linuxtools
.lttng
.event
.LttngEvent
;
16 import org
.eclipse
.linuxtools
.lttng
.event
.LttngSyntheticEvent
;
17 import org
.eclipse
.linuxtools
.lttng
.state
.experiment
.IStateExperimentManager
;
18 import org
.eclipse
.linuxtools
.tmf
.experiment
.TmfExperiment
;
19 import org
.eclipse
.linuxtools
.tmf
.request
.TmfEventRequest
;
21 public class LTTngSyntheticEventProviderTest
extends LttngTestPreparation
{
22 // ========================================================================
24 // ========================================================================
26 // public void testPlainDataRequest() {
29 // TmfExperiment<LttngEvent> experiment = prepareExperimentToTest();
30 // TmfEventRequest<LttngEvent> request = prepareEventRequest(
31 // LttngEvent.class, 0, 31);
34 // experiment.sendRequest(request);
36 // request.waitForCompletion();
37 // } catch (InterruptedException e) {
38 // e.printStackTrace();
42 // assertEquals("Unexpected eventCount", 15316, feventCount);
43 // boolean expected = true;
44 // assertEquals("Events received out of expected order", expected,
51 public void testSyntheticEventRequest() {
53 // Create a new Experiment manager context
54 IStateExperimentManager expManager
= prepareExperimentContext(false);
56 // make sure a TmfExperiment instance is registered as provider and
57 // selected as current
58 TmfExperiment
<LttngEvent
> experiment
= prepareExperimentToTest();
60 // experiment selected, build experiment selection context and trigger
61 // check point creation
62 expManager
.experimentSelected_prep(experiment
);
63 // builds check points in parallel
64 expManager
.experimentSelected(this, experiment
);
66 // Obtain the singleton event provider
67 LttngSyntheticEventProvider synProvider
= LttngCoreProviderFactory
70 // prepare synthetic event requests
71 boolean printExpectedEvents
= false;
72 TmfEventRequest
<LttngSyntheticEvent
> request1
= prepareEventRequest(LttngSyntheticEvent
.class, 5, 9,
73 printExpectedEvents
); /* 2001 events */
74 TmfEventRequest
<LttngSyntheticEvent
> request2
= prepareEventRequest(LttngSyntheticEvent
.class, 11, 13,
75 printExpectedEvents
); /* 1001 events */
78 synProvider
.sendRequest(request1
);
80 request1
.waitForCompletion();
81 } catch (InterruptedException e
) {
84 System
.out
.println("EventCount " + feventCount
);
86 synProvider
.sendRequest(request2
);
88 request2
.waitForCompletion();
89 } catch (InterruptedException e
) {
92 System
.out
.println("EventCount " + feventCount
);
95 // request1.waitForCompletion();
96 // request2.waitForCompletion();
97 // } catch (InterruptedException e) {
98 // e.printStackTrace();
100 // System.out.println("EventCount " + feventCount);
103 assertEquals("Unexpected eventCount", 3002, feventCount
);