1*ef39d40dSAndrew Rist /**************************************************************
2cdf0e10cSrcweir  *
3*ef39d40dSAndrew Rist  * Licensed to the Apache Software Foundation (ASF) under one
4*ef39d40dSAndrew Rist  * or more contributor license agreements.  See the NOTICE file
5*ef39d40dSAndrew Rist  * distributed with this work for additional information
6*ef39d40dSAndrew Rist  * regarding copyright ownership.  The ASF licenses this file
7*ef39d40dSAndrew Rist  * to you under the Apache License, Version 2.0 (the
8*ef39d40dSAndrew Rist  * "License"); you may not use this file except in compliance
9*ef39d40dSAndrew Rist  * with the License.  You may obtain a copy of the License at
10*ef39d40dSAndrew Rist  *
11*ef39d40dSAndrew Rist  *   http://www.apache.org/licenses/LICENSE-2.0
12*ef39d40dSAndrew Rist  *
13*ef39d40dSAndrew Rist  * Unless required by applicable law or agreed to in writing,
14*ef39d40dSAndrew Rist  * software distributed under the License is distributed on an
15*ef39d40dSAndrew Rist  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16*ef39d40dSAndrew Rist  * KIND, either express or implied.  See the License for the
17*ef39d40dSAndrew Rist  * specific language governing permissions and limitations
18*ef39d40dSAndrew Rist  * under the License.
19*ef39d40dSAndrew Rist  *
20*ef39d40dSAndrew Rist  *************************************************************/
21*ef39d40dSAndrew Rist 
22*ef39d40dSAndrew Rist 
23cdf0e10cSrcweir 
24cdf0e10cSrcweir package ifc.sheet;
25cdf0e10cSrcweir 
26cdf0e10cSrcweir import lib.MultiMethodTest;
27cdf0e10cSrcweir import util.ValueComparer;
28cdf0e10cSrcweir 
29cdf0e10cSrcweir import com.sun.star.sheet.GeneralFunction;
30cdf0e10cSrcweir import com.sun.star.sheet.XConsolidationDescriptor;
31cdf0e10cSrcweir import com.sun.star.table.CellAddress;
32cdf0e10cSrcweir import com.sun.star.table.CellRangeAddress;
33cdf0e10cSrcweir 
34cdf0e10cSrcweir /**
35cdf0e10cSrcweir * Testing <code>com.sun.star.sheet.XConsolidationDescriptor</code>
36cdf0e10cSrcweir * interface methods :
37cdf0e10cSrcweir * <ul>
38cdf0e10cSrcweir *  <li><code> getFunction()</code></li>
39cdf0e10cSrcweir *  <li><code> setFunction()</code></li>
40cdf0e10cSrcweir *  <li><code> getSources()</code></li>
41cdf0e10cSrcweir *  <li><code> setSources()</code></li>
42cdf0e10cSrcweir *  <li><code> getStartOutputPosition()</code></li>
43cdf0e10cSrcweir *  <li><code> setStartOutputPosition()</code></li>
44cdf0e10cSrcweir *  <li><code> getUseColumnHeaders()</code></li>
45cdf0e10cSrcweir *  <li><code> setUseColumnHeaders()</code></li>
46cdf0e10cSrcweir *  <li><code> getUseRowHeaders()</code></li>
47cdf0e10cSrcweir *  <li><code> setUseRowHeaders()</code></li>
48cdf0e10cSrcweir *  <li><code> getInsertLinks()</code></li>
49cdf0e10cSrcweir *  <li><code> setInsertLinks()</code></li>
50cdf0e10cSrcweir * </ul> <p>
51cdf0e10cSrcweir * @see com.sun.star.sheet.XConsolidationDescriptor
52cdf0e10cSrcweir */
53cdf0e10cSrcweir public class _XConsolidationDescriptor extends MultiMethodTest {
54cdf0e10cSrcweir 
55cdf0e10cSrcweir     public XConsolidationDescriptor oObj = null;
56cdf0e10cSrcweir     public GeneralFunction aFunction = null;
57cdf0e10cSrcweir     public boolean insertLinks = false;
58cdf0e10cSrcweir     public boolean useColumnHeaders = false;
59cdf0e10cSrcweir     public boolean useRowHeaders = false;
60cdf0e10cSrcweir     public CellRangeAddress[] CRaddr = null;
61cdf0e10cSrcweir     public CellAddress addr = null;
62cdf0e10cSrcweir 
63cdf0e10cSrcweir     /**
64cdf0e10cSrcweir     * Test calls the method, stores and checks returned value. <p>
65cdf0e10cSrcweir     * Has <b> OK </b> status if returned value isn't null. <p>
66cdf0e10cSrcweir     */
_getFunction()67cdf0e10cSrcweir     public void _getFunction() {
68cdf0e10cSrcweir         aFunction = oObj.getFunction();
69cdf0e10cSrcweir         tRes.tested("getFunction()", aFunction != null );
70cdf0e10cSrcweir     }
71cdf0e10cSrcweir 
72cdf0e10cSrcweir     /**
73cdf0e10cSrcweir     * Test calls the method and stores returned value. <p>
74cdf0e10cSrcweir     * Has <b> OK </b> status if the method successfully returns. <p>
75cdf0e10cSrcweir     */
_getInsertLinks()76cdf0e10cSrcweir     public void _getInsertLinks() {
77cdf0e10cSrcweir         insertLinks = oObj.getInsertLinks();
78cdf0e10cSrcweir         tRes.tested("getInsertLinks()", true);
79cdf0e10cSrcweir     }
80cdf0e10cSrcweir 
81cdf0e10cSrcweir     /**
82cdf0e10cSrcweir     * Test calls the method and stores returned value. <p>
83cdf0e10cSrcweir     * Has <b> OK </b> status if the method successfully returns. <p>
84cdf0e10cSrcweir     */
_getSources()85cdf0e10cSrcweir     public void _getSources() {
86cdf0e10cSrcweir         CRaddr = oObj.getSources();
87cdf0e10cSrcweir         int wiev = CRaddr.length;
88cdf0e10cSrcweir         tRes.tested("getSources()", true);
89cdf0e10cSrcweir     }
90cdf0e10cSrcweir 
91cdf0e10cSrcweir     /**
92cdf0e10cSrcweir     * Test calls the method and stores returned value. <p>
93cdf0e10cSrcweir     * Has <b> OK </b> status if the method successfully returns. <p>
94cdf0e10cSrcweir     */
_getStartOutputPosition()95cdf0e10cSrcweir     public void _getStartOutputPosition() {
96cdf0e10cSrcweir         addr = oObj.getStartOutputPosition();
97cdf0e10cSrcweir         tRes.tested("getStartOutputPosition()", true);
98cdf0e10cSrcweir     }
99cdf0e10cSrcweir 
100cdf0e10cSrcweir     /**
101cdf0e10cSrcweir     * Test calls the method and stores returned value. <p>
102cdf0e10cSrcweir     * Has <b> OK </b> status if the method successfully returns. <p>
103cdf0e10cSrcweir     */
_getUseColumnHeaders()104cdf0e10cSrcweir     public void _getUseColumnHeaders() {
105cdf0e10cSrcweir         useColumnHeaders = oObj.getUseColumnHeaders();
106cdf0e10cSrcweir         tRes.tested("getUseColumnHeaders()", true);
107cdf0e10cSrcweir     }
108cdf0e10cSrcweir 
109cdf0e10cSrcweir     /**
110cdf0e10cSrcweir     * Test calls the method and stores returned value. <p>
111cdf0e10cSrcweir     * Has <b> OK </b> status if the method successfully returns. <p>
112cdf0e10cSrcweir     */
_getUseRowHeaders()113cdf0e10cSrcweir     public void _getUseRowHeaders() {
114cdf0e10cSrcweir         useRowHeaders = oObj.getUseRowHeaders();
115cdf0e10cSrcweir         tRes.tested("getUseRowHeaders()", true);
116cdf0e10cSrcweir     }
117cdf0e10cSrcweir 
118cdf0e10cSrcweir     /**
119cdf0e10cSrcweir     * Test sets the new current function, gets current function
120cdf0e10cSrcweir     * and compare function gotten by method <code>getFunction()</code> with
121cdf0e10cSrcweir     * function that was set. <p>
122cdf0e10cSrcweir     * Has <b> OK </b> status if the functions aren't equal. <p>
123cdf0e10cSrcweir     * The following method tests are to be completed successfully before :
124cdf0e10cSrcweir     * <ul>
125cdf0e10cSrcweir     *  <li> <code> getFunction() </code> : to have current value of
126cdf0e10cSrcweir     *  the function by which the ranges are consolidated </li>
127cdf0e10cSrcweir     * </ul>
128cdf0e10cSrcweir     */
_setFunction()129cdf0e10cSrcweir     public void _setFunction() {
130cdf0e10cSrcweir         requiredMethod("getFunction()");
131cdf0e10cSrcweir         GeneralFunction aFunction2 = null;
132cdf0e10cSrcweir         if (aFunction.equals(GeneralFunction.SUM)) {
133cdf0e10cSrcweir             aFunction2 = GeneralFunction.COUNT;
134cdf0e10cSrcweir         }
135cdf0e10cSrcweir         else {
136cdf0e10cSrcweir             aFunction2 = GeneralFunction.SUM;
137cdf0e10cSrcweir         }
138cdf0e10cSrcweir         oObj.setFunction(aFunction2);
139cdf0e10cSrcweir         aFunction2 = oObj.getFunction();
140cdf0e10cSrcweir         tRes.tested("setFunction()", !aFunction.equals(aFunction2));
141cdf0e10cSrcweir     }
142cdf0e10cSrcweir 
143cdf0e10cSrcweir     /**
144cdf0e10cSrcweir     * Test sets property to value that negative to the current value
145cdf0e10cSrcweir     * and compares returned value with value that was set. <p>
146cdf0e10cSrcweir     * Has <b> OK </b> status if returned value isn't equal to value that was
147cdf0e10cSrcweir     * stored by method <code>getInsertLinks()</code>. <p>
148cdf0e10cSrcweir     * The following method tests are to be completed successfully before :
149cdf0e10cSrcweir     * <ul>
150cdf0e10cSrcweir     *  <li> <code> getInsertLinks() </code> : to have current value of
151cdf0e10cSrcweir     *  this property </li>
152cdf0e10cSrcweir     * </ul>
153cdf0e10cSrcweir     */
_setInsertLinks()154cdf0e10cSrcweir     public void _setInsertLinks() {
155cdf0e10cSrcweir         requiredMethod("getInsertLinks()");
156cdf0e10cSrcweir         oObj.setInsertLinks( !insertLinks );
157cdf0e10cSrcweir         boolean insertLinks2 = oObj.getInsertLinks();
158cdf0e10cSrcweir         tRes.tested("setInsertLinks()", insertLinks != insertLinks2);
159cdf0e10cSrcweir     }
160cdf0e10cSrcweir 
161cdf0e10cSrcweir     /**
162cdf0e10cSrcweir     * Test sets new cell ranges and compares cell ranges gotten by method
163cdf0e10cSrcweir     * <code>getSources()</code> with the cell range that was set. <p>
164cdf0e10cSrcweir     * Has <b> OK </b> status if returned value isn't equal to value that was
165cdf0e10cSrcweir     * stored by method <code>getSources()</code>. <p>
166cdf0e10cSrcweir     * The following method tests are to be completed successfully before :
167cdf0e10cSrcweir     * <ul>
168cdf0e10cSrcweir     *  <li> <code> getSources() </code> : to have the cell ranges which
169cdf0e10cSrcweir     *  are consolidated </li>
170cdf0e10cSrcweir     * </ul>
171cdf0e10cSrcweir     */
_setSources()172cdf0e10cSrcweir     public void _setSources() {
173cdf0e10cSrcweir         requiredMethod("getSources()");
174cdf0e10cSrcweir         oObj.setSources(newCRaddr());
175cdf0e10cSrcweir         CellRangeAddress[] CRaddr2 = oObj.getSources();
176cdf0e10cSrcweir         tRes.tested("setSources()",!ValueComparer.equalValue(CRaddr, CRaddr2));
177cdf0e10cSrcweir     }
178cdf0e10cSrcweir 
179cdf0e10cSrcweir     /**
180cdf0e10cSrcweir     * Test sets new cell address for start output position and compares
181cdf0e10cSrcweir     * cell address gotten by method <code>getStartOutputPosition()</code>
182cdf0e10cSrcweir     * with the cell address that was set. <p>
183cdf0e10cSrcweir     * Has <b> OK </b> status if returned value isn't equal to value that was
184cdf0e10cSrcweir     * stored by method <code>getStartOutputPosition()</code>. <p>
185cdf0e10cSrcweir     * The following method tests are to be completed successfully before :
186cdf0e10cSrcweir     * <ul>
187cdf0e10cSrcweir     *  <li> <code> getStartOutputPosition() </code> : to have the cell address
188cdf0e10cSrcweir     *  of start output position </li>
189cdf0e10cSrcweir     * </ul>
190cdf0e10cSrcweir     */
_setStartOutputPosition()191cdf0e10cSrcweir     public void _setStartOutputPosition() {
192cdf0e10cSrcweir         requiredMethod("getStartOutputPosition()");
193cdf0e10cSrcweir         CellAddress addr2 = new CellAddress();
194cdf0e10cSrcweir         addr2.Column = addr.Column + 1;
195cdf0e10cSrcweir         addr2.Row = addr.Row + 1;
196cdf0e10cSrcweir         oObj.setStartOutputPosition(addr2);
197cdf0e10cSrcweir         tRes.tested("setStartOutputPosition()",
198cdf0e10cSrcweir             !ValueComparer.equalValue(addr, addr2));
199cdf0e10cSrcweir     }
200cdf0e10cSrcweir 
201cdf0e10cSrcweir     /**
202cdf0e10cSrcweir     * Test sets property to value that negative to the current value
203cdf0e10cSrcweir     * and compares returned value with value that was set. <p>
204cdf0e10cSrcweir     * Has <b> OK </b> status if returned value isn't equal to value that was
205cdf0e10cSrcweir     * stored by method <code>getUseColumnHeaders()</code>. <p>
206cdf0e10cSrcweir     * The following method tests are to be completed successfully before :
207cdf0e10cSrcweir     * <ul>
208cdf0e10cSrcweir     *  <li> <code> getUseColumnHeaders() </code> : to have current value of
209cdf0e10cSrcweir     *  this property </li>
210cdf0e10cSrcweir     * </ul>
211cdf0e10cSrcweir     */
_setUseColumnHeaders()212cdf0e10cSrcweir     public void _setUseColumnHeaders() {
213cdf0e10cSrcweir         requiredMethod("getUseColumnHeaders()");
214cdf0e10cSrcweir         oObj.setUseColumnHeaders( !useColumnHeaders );
215cdf0e10cSrcweir         boolean uCH = oObj.getUseColumnHeaders();
216cdf0e10cSrcweir         tRes.tested("setUseColumnHeaders()", useColumnHeaders != uCH);
217cdf0e10cSrcweir     }
218cdf0e10cSrcweir 
219cdf0e10cSrcweir     /**
220cdf0e10cSrcweir     * Test sets property to value that negative to the current value
221cdf0e10cSrcweir     * and compares returned value with value that was set. <p>
222cdf0e10cSrcweir     * Has <b> OK </b> status if returned value isn't equal to value that was
223cdf0e10cSrcweir     * stored by method <code>getUseRowHeaders()</code>. <p>
224cdf0e10cSrcweir     * The following method tests are to be completed successfully before :
225cdf0e10cSrcweir     * <ul>
226cdf0e10cSrcweir     *  <li> <code> getUseRowHeaders() </code> : to have current value of
227cdf0e10cSrcweir     *  this property </li>
228cdf0e10cSrcweir     * </ul>
229cdf0e10cSrcweir     */
_setUseRowHeaders()230cdf0e10cSrcweir     public void _setUseRowHeaders() {
231cdf0e10cSrcweir         requiredMethod("getUseRowHeaders()");
232cdf0e10cSrcweir         oObj.setUseRowHeaders(!useRowHeaders);
233cdf0e10cSrcweir         boolean uRH = oObj.getUseRowHeaders();
234cdf0e10cSrcweir         tRes.tested("setUseRowHeaders()", useRowHeaders != uRH );
235cdf0e10cSrcweir     }
236cdf0e10cSrcweir 
237cdf0e10cSrcweir     /**
238cdf0e10cSrcweir     * Constructs new cell range addresses using old cell range addresses.
239cdf0e10cSrcweir     * @return new cell range addresses
240cdf0e10cSrcweir     */
newCRaddr()241cdf0e10cSrcweir     public CellRangeAddress[] newCRaddr() {
242cdf0e10cSrcweir 
243cdf0e10cSrcweir         CellRangeAddress[] back = new CellRangeAddress[1];
244cdf0e10cSrcweir 
245cdf0e10cSrcweir         CellRangeAddress cra1 = new CellRangeAddress();
246cdf0e10cSrcweir         cra1.EndColumn=5;
247cdf0e10cSrcweir         cra1.EndRow=5;
248cdf0e10cSrcweir         cra1.Sheet=(short)0;
249cdf0e10cSrcweir         cra1.StartColumn=1;
250cdf0e10cSrcweir         cra1.StartRow=1;
251cdf0e10cSrcweir         back[0]=cra1;
252cdf0e10cSrcweir 
253cdf0e10cSrcweir         return back;
254cdf0e10cSrcweir     }
255cdf0e10cSrcweir 
256cdf0e10cSrcweir 
257cdf0e10cSrcweir }  // finish class _XConsolidationDescriptor
258cdf0e10cSrcweir 
259cdf0e10cSrcweir 
260