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 package ifc.sheet; 24cdf0e10cSrcweir 25cdf0e10cSrcweir import com.sun.star.sheet.SheetLinkMode; 26cdf0e10cSrcweir import com.sun.star.sheet.XSheetLinkable; 27cdf0e10cSrcweir import lib.MultiMethodTest; 28cdf0e10cSrcweir import util.utils; 29cdf0e10cSrcweir 30cdf0e10cSrcweir /** 31cdf0e10cSrcweir * 32cdf0e10cSrcweir */ 33cdf0e10cSrcweir public class _XSheetLinkable extends MultiMethodTest { 34cdf0e10cSrcweir public XSheetLinkable oObj = null; 35cdf0e10cSrcweir SheetLinkMode slm = null; 36cdf0e10cSrcweir String linkSheetName = null; 37cdf0e10cSrcweir String linkUrl = null; 38cdf0e10cSrcweir String linkUrl2 = null; 39cdf0e10cSrcweir before()40cdf0e10cSrcweir public void before() { 41cdf0e10cSrcweir // get a document for linking. 42cdf0e10cSrcweir linkUrl = (String)tEnv.getObjRelation("XSheetLinkable.LinkSheet"); 43cdf0e10cSrcweir linkUrl = utils.getFullTestURL(linkUrl); 44cdf0e10cSrcweir 45cdf0e10cSrcweir // get a second sheet for changing the link url: if it's not set, 46cdf0e10cSrcweir // this part of the test is omitted. 47cdf0e10cSrcweir linkUrl2 = (String)tEnv.getObjRelation("XSheetLinkable.LinkSheet2"); 48cdf0e10cSrcweir if (linkUrl2 != null) 49cdf0e10cSrcweir linkUrl = utils.getFullTestURL(linkUrl); 50cdf0e10cSrcweir 51cdf0e10cSrcweir // set a name for the sheet. 52cdf0e10cSrcweir linkSheetName = "Sheet1"; 53cdf0e10cSrcweir } 54cdf0e10cSrcweir _getLinkMode()55cdf0e10cSrcweir public void _getLinkMode() { 56cdf0e10cSrcweir requiredMethod("link()"); 57cdf0e10cSrcweir slm = oObj.getLinkMode(); 58cdf0e10cSrcweir tRes.tested("getLinkMode()", slm == SheetLinkMode.VALUE); 59cdf0e10cSrcweir } 60cdf0e10cSrcweir _getLinkSheetName()61cdf0e10cSrcweir public void _getLinkSheetName() { 62cdf0e10cSrcweir requiredMethod("link()"); 63cdf0e10cSrcweir String lSheetName = oObj.getLinkSheetName(); 64cdf0e10cSrcweir tRes.tested("getLinkSheetName()", linkSheetName.equals(lSheetName)); 65cdf0e10cSrcweir } 66cdf0e10cSrcweir _getLinkUrl()67cdf0e10cSrcweir public void _getLinkUrl() { 68cdf0e10cSrcweir requiredMethod("link()"); 69cdf0e10cSrcweir String lUrl = oObj.getLinkUrl(); 70cdf0e10cSrcweir System.out.println("URL: " + lUrl); 71cdf0e10cSrcweir tRes.tested("getLinkUrl()", lUrl.equals(linkUrl)); 72cdf0e10cSrcweir } 73cdf0e10cSrcweir _link()74cdf0e10cSrcweir public void _link() { 75cdf0e10cSrcweir oObj.link(linkUrl, linkSheetName, "", "", SheetLinkMode.VALUE); 76cdf0e10cSrcweir tRes.tested("link()", true); 77cdf0e10cSrcweir } 78cdf0e10cSrcweir _setLinkMode()79cdf0e10cSrcweir public void _setLinkMode() { 80cdf0e10cSrcweir requiredMethod("getLinkMode()"); 81cdf0e10cSrcweir oObj.setLinkMode(SheetLinkMode.NONE); 82cdf0e10cSrcweir slm = oObj.getLinkMode(); 83cdf0e10cSrcweir tRes.tested("setLinkMode()", slm == SheetLinkMode.NONE); 84cdf0e10cSrcweir } 85cdf0e10cSrcweir _setLinkSheetName()86cdf0e10cSrcweir public void _setLinkSheetName() { 87cdf0e10cSrcweir requiredMethod("getLinkSheetName()"); 88cdf0e10cSrcweir oObj.setLinkSheetName("Sheet2"); 89cdf0e10cSrcweir linkSheetName = oObj.getLinkSheetName(); 90cdf0e10cSrcweir tRes.tested("setLinkSheetName()", linkSheetName.equals("Sheet2")); 91cdf0e10cSrcweir } 92cdf0e10cSrcweir _setLinkUrl()93cdf0e10cSrcweir public void _setLinkUrl() { 94cdf0e10cSrcweir requiredMethod("getLinkUrl()"); 95cdf0e10cSrcweir boolean result = false; 96cdf0e10cSrcweir if (linkUrl2 == null) { 97cdf0e10cSrcweir // set back to the original value 98cdf0e10cSrcweir oObj.setLinkUrl(linkUrl); 99cdf0e10cSrcweir result = true; 100cdf0e10cSrcweir } 101cdf0e10cSrcweir else { 102cdf0e10cSrcweir oObj.setLinkUrl(linkUrl2); 103cdf0e10cSrcweir linkUrl = oObj.getLinkUrl(); 104cdf0e10cSrcweir result = linkUrl.equals(linkUrl2); 105cdf0e10cSrcweir } 106cdf0e10cSrcweir tRes.tested("setLinkUrl()", result); 107cdf0e10cSrcweir } 108cdf0e10cSrcweir } 109