Commit | Line | Data |
---|---|---|
79e08fd0 BH |
1 | /******************************************************************************* |
2 | * Copyright (c) 2011 Ericsson | |
64636df8 | 3 | * |
79e08fd0 BH |
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 | |
64636df8 | 8 | * |
79e08fd0 | 9 | * Contributors: |
09667aa4 | 10 | * Mathieu Denis <mathieu.denis@polymtl.ca> - Initial design and implementation |
79e08fd0 BH |
11 | * Bernd Hufmann - Fixed warnings |
12 | *******************************************************************************/ | |
13 | ||
14 | package org.eclipse.linuxtools.tmf.ui.tests.statistics; | |
15 | ||
16 | import junit.framework.TestCase; | |
17 | ||
36033ff0 AM |
18 | import org.eclipse.linuxtools.tmf.ui.viewers.statistics.model.TmfStatisticsTree; |
19 | import org.eclipse.linuxtools.tmf.ui.viewers.statistics.model.TmfStatisticsTreeManager; | |
cfd22ad0 | 20 | import org.eclipse.linuxtools.tmf.ui.viewers.statistics.model.TmfStatisticsTreeNode; |
79e08fd0 | 21 | |
64636df8 BH |
22 | /** |
23 | * TmfStatisticsTreeRootFactory Test Case. | |
24 | */ | |
79e08fd0 | 25 | @SuppressWarnings("nls") |
36033ff0 | 26 | public class TmfStatisticsTreeManagerTest extends TestCase { |
64636df8 | 27 | |
79e08fd0 BH |
28 | // ------------------------------------------------------------------------ |
29 | // Fields | |
30 | // ------------------------------------------------------------------------ | |
64636df8 | 31 | |
36033ff0 AM |
32 | TmfStatisticsTree fStatisticsData1; |
33 | TmfStatisticsTree fStatisticsData2; | |
34 | TmfStatisticsTree fStatisticsData3; | |
79e08fd0 BH |
35 | String fDataKey1 = "key1"; |
36 | String fDataKey2 = "key2"; | |
37 | String fDataKey3 = "key3"; | |
64636df8 | 38 | |
79e08fd0 BH |
39 | // ------------------------------------------------------------------------ |
40 | // Housekeeping | |
41 | // ------------------------------------------------------------------------ | |
64636df8 | 42 | |
79e08fd0 BH |
43 | @Override |
44 | protected void setUp() throws Exception { | |
45 | super.setUp(); | |
46 | addStatsTreeRoot(); | |
47 | } | |
64636df8 | 48 | |
79e08fd0 BH |
49 | @Override |
50 | protected void tearDown() throws Exception { | |
51 | super.tearDown(); | |
52 | } | |
64636df8 BH |
53 | |
54 | /** | |
255224d9 | 55 | * Adding of statistics tree root. |
64636df8 | 56 | */ |
79e08fd0 | 57 | public void addStatsTreeRoot() { |
36033ff0 AM |
58 | fStatisticsData1 = new TmfStatisticsTree(); |
59 | fStatisticsData2 = new TmfStatisticsTree(); | |
60 | fStatisticsData3 = new TmfStatisticsTree(); | |
61 | TmfStatisticsTreeManager.addStatsTreeRoot(fDataKey1, fStatisticsData1); | |
62 | TmfStatisticsTreeManager.addStatsTreeRoot(fDataKey2, fStatisticsData2); | |
63 | TmfStatisticsTreeManager.addStatsTreeRoot(fDataKey2, fStatisticsData3); | |
79e08fd0 | 64 | } |
64636df8 | 65 | |
255224d9 MD |
66 | /** |
67 | * Clean the statistics tree | |
68 | */ | |
69 | public void removeStatsTreeRoot() { | |
36033ff0 | 70 | TmfStatisticsTreeManager.removeAll(); |
255224d9 MD |
71 | } |
72 | ||
73 | /** | |
74 | * Test adding of statistics tree root. It should not throw exceptions | |
75 | */ | |
76 | public void testaddStatsTreeRoot() { | |
77 | removeStatsTreeRoot(); | |
78 | ||
79 | try { | |
36033ff0 AM |
80 | assertNull(TmfStatisticsTreeManager.addStatsTreeRoot(null, null)); |
81 | assertNull(TmfStatisticsTreeManager.addStatsTreeRoot(null, fStatisticsData1)); | |
82 | assertNull(TmfStatisticsTreeManager.addStatsTreeRoot(fDataKey1, null)); | |
83 | assertNull(TmfStatisticsTreeManager.getStatTreeRoot(fDataKey1)); | |
255224d9 | 84 | |
36033ff0 AM |
85 | TmfStatisticsTreeNode returnRootNode = TmfStatisticsTreeManager.addStatsTreeRoot(fDataKey1, fStatisticsData1); |
86 | assertSame(fStatisticsData1, TmfStatisticsTreeManager.getStatTree(fDataKey1)); | |
7588c810 | 87 | assertSame(fStatisticsData1.getRootNode(), returnRootNode); |
255224d9 MD |
88 | |
89 | // Overwriting the value | |
36033ff0 AM |
90 | returnRootNode = TmfStatisticsTreeManager.addStatsTreeRoot(fDataKey1, fStatisticsData2); |
91 | assertSame(fStatisticsData2, TmfStatisticsTreeManager.getStatTree(fDataKey1)); | |
7588c810 | 92 | assertSame(fStatisticsData2.getRootNode(), returnRootNode); |
255224d9 MD |
93 | |
94 | // Success | |
95 | } catch(Exception e) { | |
96 | fail("AddStatsTreeRoot"); | |
97 | } | |
98 | } | |
99 | ||
79e08fd0 BH |
100 | // ------------------------------------------------------------------------ |
101 | // get | |
102 | // ------------------------------------------------------------------------ | |
64636df8 BH |
103 | |
104 | /** | |
105 | * Test getting of statistics tree root. | |
106 | */ | |
79e08fd0 | 107 | public void testGetStatTreeRoot() { |
36033ff0 AM |
108 | TmfStatisticsTreeNode value1 = TmfStatisticsTreeManager.getStatTreeRoot(fDataKey1); |
109 | TmfStatisticsTreeNode value2 = TmfStatisticsTreeManager.getStatTreeRoot(fDataKey2); | |
110 | TmfStatisticsTreeNode value3 = TmfStatisticsTreeManager.getStatTreeRoot(fDataKey1); | |
79e08fd0 BH |
111 | assertNotSame("getStatTreeRoot", value1, value2); |
112 | assertNotSame("getStatTreeRoot", value2, value3); | |
113 | assertSame("getStatTreeRoot", value1, value3); | |
36033ff0 | 114 | assertNull("getStatTreeRoot", TmfStatisticsTreeManager.getStatTreeRoot(null)); |
79e08fd0 BH |
115 | } |
116 | ||
64636df8 BH |
117 | /** |
118 | * Test getting statistics tree. | |
119 | */ | |
79e08fd0 | 120 | public void testGetStatTree() { |
36033ff0 AM |
121 | TmfStatisticsTree value1 = TmfStatisticsTreeManager.getStatTree(fDataKey1); |
122 | TmfStatisticsTree value2 = TmfStatisticsTreeManager.getStatTree(fDataKey2); | |
123 | TmfStatisticsTree value3 = TmfStatisticsTreeManager.getStatTree(fDataKey1); | |
79e08fd0 BH |
124 | assertNotSame("getStatTree", value1, value2); |
125 | assertNotSame("getStatTree", value2, value3); | |
126 | assertSame("getStatTree", value1, value3); | |
36033ff0 | 127 | assertNull("getStatTreeRoot", TmfStatisticsTreeManager.getStatTree(null)); |
79e08fd0 BH |
128 | } |
129 | ||
130 | // ------------------------------------------------------------------------ | |
131 | // contains | |
132 | // ------------------------------------------------------------------------ | |
64636df8 BH |
133 | |
134 | /** | |
135 | * Test checking for tree root existence. | |
136 | */ | |
79e08fd0 | 137 | public void testContainsTreeRoot() { |
36033ff0 AM |
138 | assertTrue("containsTreeRoot", TmfStatisticsTreeManager.containsTreeRoot(fDataKey1)); |
139 | assertTrue("containsTreeRoot", TmfStatisticsTreeManager.containsTreeRoot(fDataKey2)); | |
140 | assertFalse("containsTreeRoot", TmfStatisticsTreeManager.containsTreeRoot(null)); | |
79e08fd0 BH |
141 | } |
142 | ||
143 | // ------------------------------------------------------------------------ | |
144 | // remove | |
145 | // ------------------------------------------------------------------------ | |
64636df8 BH |
146 | |
147 | /** | |
148 | * Test removal of statistics tree node. | |
149 | */ | |
79e08fd0 | 150 | public void testRemoveStatTreeRoot() { |
36033ff0 AM |
151 | TmfStatisticsTreeManager.removeStatTreeRoot(fDataKey1); |
152 | assertNull("removeStatTreeRoot", TmfStatisticsTreeManager.getStatTree(fDataKey1)); | |
64636df8 | 153 | |
79e08fd0 | 154 | try { |
255224d9 | 155 | // Trying to remove the same branch from the tree. |
36033ff0 | 156 | TmfStatisticsTreeManager.removeStatTreeRoot(fDataKey1); |
255224d9 | 157 | |
36033ff0 | 158 | TmfStatisticsTreeManager.removeStatTreeRoot(null); |
79e08fd0 BH |
159 | // Success |
160 | } catch (Exception e) { | |
161 | fail("removeStatTreeRoot"); | |
162 | } | |
163 | } | |
164 | ||
64636df8 BH |
165 | /** |
166 | * Test removal of all root nodes. | |
167 | */ | |
79e08fd0 | 168 | public void testRemoveAll() { |
36033ff0 AM |
169 | TmfStatisticsTreeManager.removeAll(); |
170 | assertNull("removeAll", TmfStatisticsTreeManager.getStatTreeRoot(fDataKey2)); | |
171 | assertNull("removeAll", TmfStatisticsTreeManager.getStatTreeRoot(fDataKey3)); | |
79e08fd0 BH |
172 | } |
173 | } |