June 1st
[deliverable/tracecompass.git] / org.eclipse.linuxtools.lttng.tests / src / org / eclipse / linuxtools / lttng / state / resource / LTTngStateResourceTest.java
CommitLineData
03c71d1e
ASL
1/*******************************************************************************
2 * Copyright (c) 2009, 2010 Ericsson
3 *
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
8 *
9 * Contributors:
10 * Alvaro Sanchez-Leon (alvsan09@gmail.com) - Initial API and implementation
11 *******************************************************************************/
12package org.eclipse.linuxtools.lttng.state.resource;
13
14import junit.framework.TestCase;
15
16import org.eclipse.linuxtools.lttng.state.resource.ILTTngStateResource.GlobalStateMode;
17import org.eclipse.linuxtools.tmf.event.TmfTimeRange;
18import org.eclipse.linuxtools.tmf.trace.ITmfTrace;
19
20/**
21 * For inherited methods see: LTTngTreeNodeTest
22 *
23 * @author alvaro
24 *
25 */
26public class LTTngStateResourceTest extends TestCase {
27 // =======================================================================
28 // Data
29 // =======================================================================
30
31 // Common context for all tests
32 ILttngStateContext context;
33
34 LTTngStateResource node10;
35 LTTngStateResource node20;
36 LTTngStateResource node30;
37 LTTngStateResource node40;
38 LTTngStateResource node50;
39 LTTngStateResource node60;
40
41 LTTngStateResource node15;
42 LTTngStateResource node25;
43 LTTngStateResource node35;
44 LTTngStateResource node45;
45 LTTngStateResource node55;
46 LTTngStateResource node65;
47 LTTngStateResource node67;
48
49 // ========================================================================
50 // Preparations and Finish
51 // =======================================================================
52 /* (non-Javadoc)
53 * @see junit.framework.TestCase#setUp()
54 */
55 protected void setUp() throws Exception {
56 super.setUp();
57 context = getContext();
58 // Create state resources and assign a parent
59 node10 = new LTTngStateResource(10L, "node10", context, this);
60 node20 = new LTTngStateResource(20L, node10, "node20", context, this);
61 node30 = new LTTngStateResource(30L, node20, "node30", context, this);
62 node40 = new LTTngStateResource(40L, node30, "node40", context, this);
63 node50 = new LTTngStateResource(50L, node40, "node50", context, this);
64 node60 = new LTTngStateResource(60L, node50, "node60", context, this);
65
66 //Adding first children
67 node10.addChild(node20);
68 node20.addChild(node30);
69 node30.addChild(node40);
70 node40.addChild(node50);
71 node50.addChild(node60);
72
73 //create additional nodes
74 node15 = new LTTngStateResource(15L, node10, "node15", context, this);
75 node25 = new LTTngStateResource(25L, node20, "node25", context, this);
76 node35 = new LTTngStateResource(35L, node30, "node35", context, this);
77 node45 = new LTTngStateResource(45L, node40, "node45", context, this);
78 node55 = new LTTngStateResource(55L, node50, "node55", context, this);
79 node65 = new LTTngStateResource(65L, node60, "node65", context, this);
80 node67 = new LTTngStateResource(67L, node60, "node67", context, this);
81
82 // Add more children to instances
83 node10.addChild(node15);
84 node20.addChild(node25);
85 node30.addChild(node35);
86 node40.addChild(node45);
87 node50.addChild(node55);
88 node60.addChild(node65);
89 node60.addChild(node67);
90 }
91
92 /**
93 * @return
94 */
95 private ILttngStateContext getContext() {
96 return new ILttngStateContext() {
97
98 public TmfTimeRange getTraceTimeWindow() {
99 return null;
100 }
101
102 public ITmfTrace getTraceIdRef() {
103 return null;
104 }
105
106 public String getTraceId() {
107 return "Test Trace";
108 }
109
110 public int getNumberOfCpus() {
111 return 1;
112 }
113
114 public TmfTimeRange getExperimentTimeWindow() {
115 return null;
116 }
117
118 public String getExperimentName() {
119 return "Test Experiment";
120 }
121 };
122 }
123
124 /* (non-Javadoc)
125 * @see junit.framework.TestCase#tearDown()
126 */
127 protected void tearDown() throws Exception {
128 super.tearDown();
129 }
130
131 // ========================================================================
132 // Methods
133 // =======================================================================
134 /**
135 * Test method for
136 * {@link org.eclipse.linuxtools.lttng.state.resource.LTTngStateResource#getChildren()}
137 * .
138 */
139 public void testGetChildren() {
140 LTTngStateResource[] childrensOf60 = node60.getChildren();
141 assertNotNull(childrensOf60);
142
143 int size = childrensOf60.length;
144 assertEquals(2, size);
145
146 LTTngStateResource child65 = childrensOf60[0];
147 LTTngStateResource child67 = childrensOf60[1];
148
149 assertNotNull(child65);
150 assertNotNull(child67);
151
152 assertEquals("node65", child65.getName());
153 assertEquals("node67", child67.getName());
154 }
155
156 /**
157 * Test method for
158 * {@link org.eclipse.linuxtools.lttng.state.resource.LTTngStateResource#getStateMode()}
159 */
160 public void testStateMode() {
161 // check default
162 assertEquals("unknown", node60.getStateMode().getInName());
163
164 // check setting
165 node60.setStateMode(GlobalStateMode.LTT_STATEMODE_WAIT_FORK);
166 assertEquals("waitfork", node60.getStateMode().getInName());
167
168 }
169
170 /**
171 * Test method for
172 * {@link org.eclipse.linuxtools.lttng.state.resource.LTTngStateResource#getContext()}
173 */
174 public void testContext() {
175 assertEquals(context, node60.getContext());
176 }
177}
This page took 0.030998 seconds and 5 git commands to generate.