Copyright header update, 2015 edition
[deliverable/tracecompass.git] / org.eclipse.tracecompass.tmf.ui.tests / src / org / eclipse / tracecompass / tmf / ui / tests / statistics / TmfBaseColumnDataTest.java
CommitLineData
79e08fd0 1/*******************************************************************************
ed902a2b 2 * Copyright (c) 2011, 2014 Ericsson
abbdd66a 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
abbdd66a 8 *
79e08fd0 9 * Contributors:
09667aa4 10 * Mathieu Denis <mathieu.denis@polymtl.ca> - Initial design and implementation
90ed5958 11 * Alexandre Montplaisir - Port to JUnit4
79e08fd0
BH
12 *******************************************************************************/
13
2bdf0193 14package org.eclipse.tracecompass.tmf.ui.tests.statistics;
79e08fd0 15
90ed5958
AM
16import static org.junit.Assert.assertEquals;
17import static org.junit.Assert.assertTrue;
79e08fd0
BH
18
19import org.eclipse.jface.viewers.ColumnLabelProvider;
20import org.eclipse.jface.viewers.Viewer;
21import org.eclipse.jface.viewers.ViewerComparator;
79e08fd0
BH
22import org.eclipse.swt.SWT;
23import org.eclipse.swt.graphics.Image;
2bdf0193
AM
24import org.eclipse.tracecompass.tmf.ui.viewers.statistics.model.TmfBaseColumnData;
25import org.eclipse.tracecompass.tmf.ui.viewers.statistics.model.TmfStatisticsTree;
26import org.eclipse.tracecompass.tmf.ui.viewers.statistics.model.TmfStatisticsTreeNode;
27import org.eclipse.tracecompass.tmf.ui.viewers.statistics.model.TmfBaseColumnData.ITmfColumnPercentageProvider;
79e08fd0
BH
28import org.eclipse.ui.ISharedImages;
29import org.eclipse.ui.PlatformUI;
90ed5958
AM
30import org.junit.Before;
31import org.junit.Test;
79e08fd0 32
64636df8
BH
33/**
34 * TmfBaseColumnData Test Case.
35 */
90ed5958 36public class TmfBaseColumnDataTest {
79e08fd0
BH
37
38 // ------------------------------------------------------------------------
39 // Fields
40 // ------------------------------------------------------------------------
41
42 private int fAlignment;
43 private int fWidth;
44 private String fHeader;
45 private String fToolTip;
46 private ColumnLabelProvider fLabelProvider;
47 private ViewerComparator fComparator;
48 private ITmfColumnPercentageProvider fPercentageProvider;
49 private TmfStatisticsTreeNode fTreeNode;
50 private String fTraceName;
51 private TmfBaseColumnData fBaseColumnData;
52
53 // ------------------------------------------------------------------------
54 // Housekeeping
55 // ------------------------------------------------------------------------
56
90ed5958
AM
57 /**
58 * Pre-test setup
59 */
60 @Before
61 public void init() {
79e08fd0
BH
62 fHeader = "test Column1";
63 fWidth = 300;
64 fAlignment = SWT.LEFT;
65 fToolTip = "Tooltip " + fHeader;
66 fLabelProvider = new ColumnLabelProvider() {
67 @Override
68 public String getText(Object element) {
7588c810 69 return ((TmfStatisticsTreeNode) element).getName();
79e08fd0
BH
70 }
71
72 @Override
73 public Image getImage(Object element) {
74 return PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_OBJ_ELEMENT);
75 }
76 };
77 fComparator = new ViewerComparator() {
78 @Override
79 public int compare(Viewer viewer, Object e1, Object e2) {
80 TmfStatisticsTreeNode n1 = (TmfStatisticsTreeNode) e1;
81 TmfStatisticsTreeNode n2 = (TmfStatisticsTreeNode) e2;
82
7588c810 83 return n1.getName().compareTo(n2.getName());
79e08fd0
BH
84 }
85 };
86 fPercentageProvider = new ITmfColumnPercentageProvider() {
87 @Override
88 public double getPercentage(TmfStatisticsTreeNode node) {
89 TmfStatisticsTreeNode parent = node;
90 do {
91 parent = parent.getParent();
89c06060 92 } while (parent != null && parent.getValues().getTotal() == 0);
79e08fd0
BH
93
94 if (parent == null) {
95 return 0;
79e08fd0 96 }
89c06060 97 return (double) node.getValues().getTotal() / parent.getValues().getTotal();
79e08fd0
BH
98 }
99 };
100
36033ff0 101 TmfStatisticsTree baseData = new TmfStatisticsTree();
79e08fd0 102 fTraceName = "trace1";
7588c810 103 fTreeNode = new TmfStatisticsTreeNode(baseData, baseData.getRootNode(), fTraceName);
79e08fd0
BH
104
105 fBaseColumnData = new TmfBaseColumnData(fHeader, fWidth, fAlignment, fToolTip, fLabelProvider, fComparator, fPercentageProvider);
106 }
107
79e08fd0 108 // ------------------------------------------------------------------------
90ed5958 109 // Test methods
79e08fd0
BH
110 // ------------------------------------------------------------------------
111
64636df8
BH
112 /**
113 * Test get header
114 */
90ed5958 115 @Test
79e08fd0
BH
116 public void testGetHeader() {
117 assertEquals("getHeader", 0, fBaseColumnData.getHeader().compareTo(fHeader));
118 }
119
64636df8
BH
120 /**
121 * Test getting of column width.
122 */
90ed5958 123 @Test
79e08fd0
BH
124 public void testGetWidth() {
125 assertEquals("getWidth", fWidth, fBaseColumnData.getWidth());
126 }
127
64636df8
BH
128 /**
129 * Test getting of alignment value
130 */
90ed5958 131 @Test
79e08fd0
BH
132 public void testGetAlignment() {
133 assertEquals("getAlignment", fAlignment, fBaseColumnData.getAlignment());
134 }
135
64636df8
BH
136 /**
137 * Test getting of tooltip.
138 */
90ed5958 139 @Test
79e08fd0
BH
140 public void testGetTooltip() {
141 assertEquals("getTooltip", fToolTip, fBaseColumnData.getTooltip());
142 }
143
64636df8
BH
144 /**
145 * Test getting of label provider
146 */
90ed5958 147 @Test
79e08fd0
BH
148 public void testGetLabelProvider() {
149 assertEquals("getLabelProvider", 0, fBaseColumnData.getLabelProvider().getText(fTreeNode).compareTo(fLabelProvider.getText(fTreeNode)));
150 assertTrue("getLabelProvider", fBaseColumnData.getLabelProvider().getImage(fTreeNode).equals(PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_OBJ_ELEMENT)));
151 assertTrue("getLabelProvider", fBaseColumnData.getLabelProvider().equals(fLabelProvider));
152 }
153
64636df8
BH
154 /**
155 * Test getting of comparator.
156 */
90ed5958 157 @Test
79e08fd0
BH
158 public void testGetComparator() {
159 assertTrue("getComparator", fBaseColumnData.getComparator().equals(fComparator));
160 }
161
64636df8
BH
162 /**
163 * Test getting of percentage provider.
164 */
90ed5958 165 @Test
79e08fd0
BH
166 public void testGetPercentageProvider() {
167 assertTrue("getPercentageProvider", fBaseColumnData.getPercentageProvider().equals(fPercentageProvider));
168 }
169}
This page took 0.063172 seconds and 5 git commands to generate.