/**************************************************************
*
* 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.text;
import lib.MultiMethodTest;
import com.sun.star.text.XTextContent;
import com.sun.star.text.XTextRange;
/**
* Testing com.sun.star.text.XTextContent
* interface methods :
*
attach()
getAnchor()
* This test needs the following object relations : *
'CONTENT'
optional
* (of type XTextContent
):
* if this relation exists than it is used as the
* tested object. 'TEXT'
optional
* (of type XText
):
* the relation must be specified if the 'CONTENT'
* relation exists. From this relation an anchor
* for attach()
method is obtained.* Test is NOT multithread compilant.
* @see com.sun.star.text.XTextContent */ public class _XTextContent extends MultiMethodTest { public XTextContent oObj = null; public XTextRange oAnchor = null; /** * Tries to get the anchor of the text content * an XTextRange is returned.
* The test is OK if an not null text range is returned */ public void _getAnchor() { log.println("getAnchor()"); oAnchor = oObj.getAnchor(); tRes.tested("getAnchor()", oAnchor != null ) ; } // end getAnchor() /** * Tries to attach the text content to the test range * gotten with getAnchor(). If relations are found * then they are are used for testing.
* * The test is OK if the method works without error. * @see #_getAnchor() */ public void _attach() { requiredMethod("getAnchor()"); try { XTextContent aContent = (XTextContent) tEnv.getObjRelation("CONTENT"); XTextRange aRange = (XTextRange) tEnv.getObjRelation("RANGE"); if ( aContent !=null) { aContent.attach(aRange); } else { oObj.attach(aRange); } tRes.tested("attach()", true ) ; } catch (com.sun.star.lang.IllegalArgumentException ex) { String noAttach = (String) tEnv.getObjRelation("NoAttach"); if (noAttach != null) { log.println("Exception expected for "+noAttach); log.println("This Component doesn't support attach"); tRes.tested("attach()",true); } else { ex.printStackTrace(log); tRes.tested("attach()",false); } } catch (com.sun.star.uno.RuntimeException re) { String noAttach = (String) tEnv.getObjRelation("NoAttach"); if (noAttach != null) { log.println("Exception expected for "+noAttach); log.println("This Component doesn't support attach"); tRes.tested("attach()",true); } else { re.printStackTrace(log); tRes.tested("attach()",false); } } } }