1*b1cdbd2cSJim Jagielski /**************************************************************
2*b1cdbd2cSJim Jagielski  *
3*b1cdbd2cSJim Jagielski  * Licensed to the Apache Software Foundation (ASF) under one
4*b1cdbd2cSJim Jagielski  * or more contributor license agreements.  See the NOTICE file
5*b1cdbd2cSJim Jagielski  * distributed with this work for additional information
6*b1cdbd2cSJim Jagielski  * regarding copyright ownership.  The ASF licenses this file
7*b1cdbd2cSJim Jagielski  * to you under the Apache License, Version 2.0 (the
8*b1cdbd2cSJim Jagielski  * "License"); you may not use this file except in compliance
9*b1cdbd2cSJim Jagielski  * with the License.  You may obtain a copy of the License at
10*b1cdbd2cSJim Jagielski  *
11*b1cdbd2cSJim Jagielski  *   http://www.apache.org/licenses/LICENSE-2.0
12*b1cdbd2cSJim Jagielski  *
13*b1cdbd2cSJim Jagielski  * Unless required by applicable law or agreed to in writing,
14*b1cdbd2cSJim Jagielski  * software distributed under the License is distributed on an
15*b1cdbd2cSJim Jagielski  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*b1cdbd2cSJim Jagielski  * KIND, either express or implied.  See the License for the
17*b1cdbd2cSJim Jagielski  * specific language governing permissions and limitations
18*b1cdbd2cSJim Jagielski  * under the License.
19*b1cdbd2cSJim Jagielski  *
20*b1cdbd2cSJim Jagielski  *************************************************************/
21*b1cdbd2cSJim Jagielski 
22*b1cdbd2cSJim Jagielski 
23*b1cdbd2cSJim Jagielski 
24*b1cdbd2cSJim Jagielski package ifc.chart;
25*b1cdbd2cSJim Jagielski 
26*b1cdbd2cSJim Jagielski import lib.MultiMethodTest;
27*b1cdbd2cSJim Jagielski 
28*b1cdbd2cSJim Jagielski import com.sun.star.beans.XPropertySet;
29*b1cdbd2cSJim Jagielski import com.sun.star.chart.XChartData;
30*b1cdbd2cSJim Jagielski import com.sun.star.chart.XChartDocument;
31*b1cdbd2cSJim Jagielski import com.sun.star.chart.XDiagram;
32*b1cdbd2cSJim Jagielski import com.sun.star.drawing.XShape;
33*b1cdbd2cSJim Jagielski 
34*b1cdbd2cSJim Jagielski /**
35*b1cdbd2cSJim Jagielski * Testing <code>com.sun.star.chart.XChartDocument</code>
36*b1cdbd2cSJim Jagielski * interface methods :
37*b1cdbd2cSJim Jagielski * <ul>
38*b1cdbd2cSJim Jagielski *  <li><code> getTitle()</code></li>
39*b1cdbd2cSJim Jagielski *  <li><code> getSubTitle()</code></li>
40*b1cdbd2cSJim Jagielski *  <li><code> getLegend()</code></li>
41*b1cdbd2cSJim Jagielski *  <li><code> getArea()</code></li>
42*b1cdbd2cSJim Jagielski *  <li><code> getDiagram()</code></li>
43*b1cdbd2cSJim Jagielski *  <li><code> setDiagram()</code></li>
44*b1cdbd2cSJim Jagielski *  <li><code> getData()</code></li>
45*b1cdbd2cSJim Jagielski *  <li><code> attachData()</code></li>
46*b1cdbd2cSJim Jagielski * </ul> <p>
47*b1cdbd2cSJim Jagielski *
48*b1cdbd2cSJim Jagielski * This test needs the following object relations :
49*b1cdbd2cSJim Jagielski * <ul>
50*b1cdbd2cSJim Jagielski *  <li> <code>'DIAGRAM'</code> (of type <code>XDiagram</code>):
51*b1cdbd2cSJim Jagielski *  is used as parameter for method <code>setDiagram</code> </li>
52*b1cdbd2cSJim Jagielski *  <li> <code>'CHARTDATA'</code> (of type <code>XChartData</code>):
53*b1cdbd2cSJim Jagielski *  is used as parameter for method <code>attachData</code> </li>
54*b1cdbd2cSJim Jagielski * </ul>
55*b1cdbd2cSJim Jagielski *
56*b1cdbd2cSJim Jagielski * @see com.sun.star.chart.XChartDocument
57*b1cdbd2cSJim Jagielski */
58*b1cdbd2cSJim Jagielski public class _XChartDocument extends MultiMethodTest {
59*b1cdbd2cSJim Jagielski 
60*b1cdbd2cSJim Jagielski     public XChartDocument    oObj = null;
61*b1cdbd2cSJim Jagielski     boolean                result = true;
62*b1cdbd2cSJim Jagielski     XDiagram diagram = null;
63*b1cdbd2cSJim Jagielski     XChartData ChartData = null;
64*b1cdbd2cSJim Jagielski 
65*b1cdbd2cSJim Jagielski     /**
66*b1cdbd2cSJim Jagielski     * Test calls the method and checks returned value. <p>
67*b1cdbd2cSJim Jagielski     * Has <b> OK </b> status if returned value isn't null. <p>
68*b1cdbd2cSJim Jagielski     */
_getTitle()69*b1cdbd2cSJim Jagielski     public void _getTitle() {
70*b1cdbd2cSJim Jagielski         XShape title = oObj.getTitle();
71*b1cdbd2cSJim Jagielski         tRes.tested("getTitle()", title != null);
72*b1cdbd2cSJim Jagielski     }
73*b1cdbd2cSJim Jagielski 
74*b1cdbd2cSJim Jagielski     /**
75*b1cdbd2cSJim Jagielski     * Test calls the method and checks returned value. <p>
76*b1cdbd2cSJim Jagielski     * Has <b> OK </b> status if returned value isn't null. <p>
77*b1cdbd2cSJim Jagielski     */
_getSubTitle()78*b1cdbd2cSJim Jagielski     public void _getSubTitle() {
79*b1cdbd2cSJim Jagielski         XShape subtitle = oObj.getSubTitle();
80*b1cdbd2cSJim Jagielski         tRes.tested("getSubTitle()", subtitle != null);
81*b1cdbd2cSJim Jagielski     }
82*b1cdbd2cSJim Jagielski 
83*b1cdbd2cSJim Jagielski     /**
84*b1cdbd2cSJim Jagielski     * Test calls the method and checks returned value. <p>
85*b1cdbd2cSJim Jagielski     * Has <b> OK </b> status if returned value isn't null. <p>
86*b1cdbd2cSJim Jagielski     */
_getLegend()87*b1cdbd2cSJim Jagielski     public void _getLegend() {
88*b1cdbd2cSJim Jagielski         XShape legend = oObj.getLegend();
89*b1cdbd2cSJim Jagielski         tRes.tested("getLegend()", legend != null);
90*b1cdbd2cSJim Jagielski     }
91*b1cdbd2cSJim Jagielski 
92*b1cdbd2cSJim Jagielski     /**
93*b1cdbd2cSJim Jagielski     * Test calls the method and checks returned value. <p>
94*b1cdbd2cSJim Jagielski     * Has <b> OK </b> status if returned value isn't null. <p>
95*b1cdbd2cSJim Jagielski     */
_getArea()96*b1cdbd2cSJim Jagielski     public void _getArea() {
97*b1cdbd2cSJim Jagielski         XPropertySet area = oObj.getArea();
98*b1cdbd2cSJim Jagielski         tRes.tested("getArea()", area != null);
99*b1cdbd2cSJim Jagielski     }
100*b1cdbd2cSJim Jagielski 
101*b1cdbd2cSJim Jagielski     /**
102*b1cdbd2cSJim Jagielski     * Test calls the method and checks returned value. <p>
103*b1cdbd2cSJim Jagielski     * Has <b> OK </b> status if returned value isn't null. <p>
104*b1cdbd2cSJim Jagielski     */
_getDiagram()105*b1cdbd2cSJim Jagielski     public void _getDiagram() {
106*b1cdbd2cSJim Jagielski         diagram = oObj.getDiagram();
107*b1cdbd2cSJim Jagielski         tRes.tested("getDiagram()", diagram != null);
108*b1cdbd2cSJim Jagielski     }
109*b1cdbd2cSJim Jagielski 
110*b1cdbd2cSJim Jagielski     /**
111*b1cdbd2cSJim Jagielski     * Test compares type of diagram before method call and after.<p>
112*b1cdbd2cSJim Jagielski     * Has <b> OK </b> status if diagram types are not equal. <p>
113*b1cdbd2cSJim Jagielski     *
114*b1cdbd2cSJim Jagielski     * The following method tests are to be completed successfully before :
115*b1cdbd2cSJim Jagielski     * <ul>
116*b1cdbd2cSJim Jagielski     *  <li> <code> getDiagram </code> : to have diagram before method call</li>
117*b1cdbd2cSJim Jagielski     * </ul>
118*b1cdbd2cSJim Jagielski     *
119*b1cdbd2cSJim Jagielski     * @see com.sun.star.chart.XDiagram
120*b1cdbd2cSJim Jagielski     */
_setDiagram()121*b1cdbd2cSJim Jagielski     public void _setDiagram() {
122*b1cdbd2cSJim Jagielski         requiredMethod("getDiagram()");
123*b1cdbd2cSJim Jagielski         String oldType = diagram.getDiagramType();
124*b1cdbd2cSJim Jagielski         XDiagram diag = (XDiagram)tEnv.getObjRelation("DIAGRAM");
125*b1cdbd2cSJim Jagielski         oObj.setDiagram(diag);
126*b1cdbd2cSJim Jagielski         String newType = oObj.getDiagram().getDiagramType();
127*b1cdbd2cSJim Jagielski         tRes.tested("setDiagram()", !(oldType.equals(newType)));
128*b1cdbd2cSJim Jagielski     }
129*b1cdbd2cSJim Jagielski 
130*b1cdbd2cSJim Jagielski     /**
131*b1cdbd2cSJim Jagielski     * Test calls the method and checks returned value. <p>
132*b1cdbd2cSJim Jagielski     * Has <b> OK </b> status if returned value isn't null. <p>
133*b1cdbd2cSJim Jagielski     */
_getData()134*b1cdbd2cSJim Jagielski     public void _getData() {
135*b1cdbd2cSJim Jagielski         ChartData = oObj.getData();
136*b1cdbd2cSJim Jagielski         tRes.tested("getData()", ChartData != null);
137*b1cdbd2cSJim Jagielski     }
138*b1cdbd2cSJim Jagielski 
139*b1cdbd2cSJim Jagielski     /**
140*b1cdbd2cSJim Jagielski     * Test compares data before method call and after. <p>
141*b1cdbd2cSJim Jagielski     * Has <b> OK </b> status if the data before method call and
142*b1cdbd2cSJim Jagielski     * after are not equal. <p>
143*b1cdbd2cSJim Jagielski     * The following method tests are to be completed successfully before :
144*b1cdbd2cSJim Jagielski     * <ul>
145*b1cdbd2cSJim Jagielski     *  <li> <code> getData </code> : to have data before method call </li>
146*b1cdbd2cSJim Jagielski     * </ul>
147*b1cdbd2cSJim Jagielski     * @see com.sun.star.chart.XChartData
148*b1cdbd2cSJim Jagielski     */
_attachData()149*b1cdbd2cSJim Jagielski     public void _attachData() {
150*b1cdbd2cSJim Jagielski         requiredMethod("getData()");
151*b1cdbd2cSJim Jagielski         XChartData data = (XChartData)tEnv.getObjRelation("CHARTDATA");
152*b1cdbd2cSJim Jagielski         oObj.attachData(data);
153*b1cdbd2cSJim Jagielski         XChartData newdata = oObj.getData();
154*b1cdbd2cSJim Jagielski 
155*b1cdbd2cSJim Jagielski         tRes.tested("attachData()", !(newdata.equals(ChartData)));
156*b1cdbd2cSJim Jagielski     }
157*b1cdbd2cSJim Jagielski 
158*b1cdbd2cSJim Jagielski }
159*b1cdbd2cSJim Jagielski 
160*b1cdbd2cSJim Jagielski 
161