blob: 40c28db424c88a584f499210b2ca6ab19d6b6ba8 [file] [log] [blame]
/**************************************************************
*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*
*************************************************************/
package ifc.sheet;
import com.sun.star.sheet.XPrintAreas;
import com.sun.star.table.CellRangeAddress;
import lib.MultiMethodTest;
import lib.Status;
import lib.StatusException;
import util.ValueComparer;
/**
*
*/
public class _XPrintAreas extends MultiMethodTest {
public XPrintAreas oObj = null;
CellRangeAddress address = null;
CellRangeAddress subaddress = null;
CellRangeAddress titleColumns;
CellRangeAddress titleRows;
public void before() {
address = (CellRangeAddress)tEnv.getObjRelation("CellRangeAddress");
subaddress = (CellRangeAddress)tEnv.getObjRelation("CellRangeSubAddress");
if (address == null)
throw new StatusException(Status.failed("Object relation CellRangeAddress not found"));
if (subaddress == null)
throw new StatusException(Status.failed("Object relation CellRangeSubAddress not found"));
}
public void _getPrintAreas() {
requiredMethod("getPrintTitleColumns()");
requiredMethod("getPrintTitleRows()");
executeMethod("getTitleColumns()");
executeMethod("getTitleRows()");
CellRangeAddress[] printAreas = oObj.getPrintAreas();
CellRangeAddress[] setValue = new CellRangeAddress[]{address};
boolean ret = ValueComparer.equalValue(printAreas, setValue);
// delete the print area
oObj.setPrintAreas(null);
printAreas = oObj.getPrintAreas();
ret &= printAreas.length == 0;
tRes.tested("getPrintAreas()", ret);
}
public void _getPrintTitleColumns() {
requiredMethod("setPrintTitleColumns()");
tRes.tested("getPrintTitleColumns()", !oObj.getPrintTitleColumns());
}
public void _getPrintTitleRows() {
requiredMethod("setPrintTitleRows()");
tRes.tested("getPrintTitleRows()", !oObj.getPrintTitleRows());
}
public void _getTitleColumns() {
requiredMethod("setTitleColumns()");
CellRangeAddress setValue = oObj.getTitleColumns();
tRes.tested("getTitleColumns()", ValueComparer.equalValue(setValue,titleColumns));
}
public void _getTitleRows() {
requiredMethod("setTitleRows()");
CellRangeAddress setValue = oObj.getTitleRows();
tRes.tested("getTitleRows()", ValueComparer.equalValue(setValue,titleRows));
}
public void _setPrintAreas() {
boolean ret = false;
CellRangeAddress[]setValue = new CellRangeAddress[]{subaddress};
oObj.setPrintAreas(setValue);
CellRangeAddress[]newVal = oObj.getPrintAreas();
ret = ValueComparer.equalValue(newVal, setValue);
setValue = new CellRangeAddress[]{address};
oObj.setPrintAreas(setValue);
newVal = oObj.getPrintAreas();
ret &= ValueComparer.equalValue(newVal, setValue);
tRes.tested("setPrintAreas()", ret);
}
public void _setPrintTitleColumns() {
requiredMethod("setTitleColumns()");
boolean ret = false;
boolean value = oObj.getPrintTitleColumns();
oObj.setPrintTitleColumns(!value);
ret = value != oObj.getPrintTitleColumns();
oObj.setPrintTitleColumns(false);
tRes.tested("setPrintTitleColumns()", ret);
}
public void _setPrintTitleRows() {
requiredMethod("setTitleRows()");
boolean ret = false;
boolean value = oObj.getPrintTitleRows();
oObj.setPrintTitleRows(!value);
ret = value != oObj.getPrintTitleRows();
oObj.setPrintTitleRows(false);
tRes.tested("setPrintTitleRows()", ret);
}
public void _setTitleColumns() {
requiredMethod("setPrintAreas()");
boolean ret = false;
CellRangeAddress newVal = oObj.getTitleColumns();
ret = ValueComparer.equalValue(newVal, new CellRangeAddress((short)0, 0, 0, 0, 0));
// use first row of range as title column
titleColumns = new CellRangeAddress();
titleColumns.Sheet = address.Sheet;
titleColumns.StartColumn = address.StartColumn;
titleColumns.StartRow = address.StartRow;
titleColumns.EndColumn = address.EndColumn;
titleColumns.EndRow = address.StartRow;
oObj.setTitleColumns(titleColumns);
tRes.tested("setTitleColumns()", ret);
}
public void _setTitleRows() {
requiredMethod("setPrintAreas()");
boolean ret = false;
CellRangeAddress newVal = oObj.getTitleRows();
ret = ValueComparer.equalValue(newVal, new CellRangeAddress((short)0, 0, 0, 0, 0));
// use first column of range as title row
titleRows = new CellRangeAddress();
titleRows.Sheet = address.Sheet;
titleRows.StartColumn = address.StartColumn;
titleRows.StartRow = address.StartRow;
titleRows.EndColumn = address.StartColumn;
titleRows.EndRow = address.EndRow;
oObj.setTitleColumns(titleRows);
tRes.tested("setTitleRows()", ret);
}
}