/*
* This file is part of the LibreOffice project.
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* This file incorporates work covered by the following license notice:
*
* 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 .
*/
package ifc.awt;
import lib.MultiMethodTest;
import com.sun.star.awt.XControl;
import com.sun.star.awt.XControlModel;
import com.sun.star.awt.XToolkit;
import com.sun.star.awt.XView;
import com.sun.star.awt.XWindowPeer;
import com.sun.star.uno.XInterface;
/**
* Testing com.sun.star.awt.XControl
* interface methods:
*
setContext()
getContext()
createPeer()
getPeer()
setModel()
getModel()
setDesignMode()
isDesignMode()
isTransparent()
getView()
* This test needs the following object relations : *
'CONTEXT'
(of type XInterface
):
* used as a parameter to setContext() and for testing getContext().'WINPEER'
(of type XWindowPeer
):
* used as a parameter to createPeer() and for testing getPeer()'TOOLKIT'
(of type XToolkit
):
* used as a parameter to createPeer()'MODEL'
(of type XControlModel
):
* used as a parameter to setModel() and for testing getModel()* Test is NOT multithread compliant.
* @see com.sun.star.awt.XControl */ public class _XControl extends MultiMethodTest { public XControl oObj = null; public XControlModel aModel = null; public boolean desMode; /** * After test calls the method, the Context is set to a corresponding * object relation.
* Has OK status if the method successfully returns * and no exceptions were thrown.
*/ public void _setContext() { XInterface cont = (XInterface) tEnv.getObjRelation("CONTEXT"); oObj.setContext(cont); tRes.tested("setContext()",true); } /** * After test calls the method, the Context is gotten and compared * with object relation 'CONTEXT'.
* Has OK status if get value is equals to value set before.
* The following method tests are to be completed successfully before: *
setContext()
: set Context to a corresponding
* object relation* Has OK status if the method successfully returns * and no exceptions were thrown. */ public void _createPeer() { XWindowPeer the_win = (XWindowPeer) tEnv.getObjRelation("WINPEER"); XToolkit the_kit = (XToolkit) tEnv.getObjRelation("TOOLKIT"); oObj.createPeer(the_kit,the_win); tRes.tested("createPeer()",true); } /* * Test calls the method. Then the object relation 'WINPEER' is * obtained, and compared with the peer, gotten from (XControl) oObj * variable.
* Has OK status if peer gotten isn't null * The following method tests are to be completed successfully before: */ public void _getPeer() { requiredMethod("createPeer()"); boolean res = false; XWindowPeer get = oObj.getPeer(); if (get == null) { log.println("The method 'getPeer' returns NULL"); } else { res = true; } tRes.tested("getPeer()",res); } /** * At first current model is obtained and saved to variable aModel. * Then object relation 'MODEL' is gotten and test calls the method.
* Has OK status if the method successfully returns * and no exceptions were thrown. */ public void _setModel() { aModel = oObj.getModel(); XControlModel the_model = (XControlModel) tEnv.getObjRelation("MODEL"); oObj.setModel(the_model); tRes.tested("setModel()",true); } /** * Test calls the method, then object relation 'MODEL' is gotten and * compared with object returned by the method. Then previously saved * value of model (aModel) restored to (XControl) oObj
* Has OK status if models set and get are equal.
* The following method tests are to be completed successfully before : *
setModel()
: setting model from corresponding
* object relation * Has OK status if mode is switched. */ public void _setDesignMode() { desMode = oObj.isDesignMode(); oObj.setDesignMode(!desMode); tRes.tested("setDesignMode()",oObj.isDesignMode() == !desMode); } /** * The mode is changed and result is checked.
* Has OK status if the mode changed successfully. */ public void _isDesignMode() { requiredMethod("setDesignMode()"); oObj.setDesignMode(desMode); tRes.tested("isDesignMode()", oObj.isDesignMode() == desMode); } /** * Test calls the method.
* Has OK status if the method successfully returns * and no exceptions were thrown.
*/ public void _isTransparent() { oObj.isTransparent(); tRes.tested("isTransparent()",true ); } /** * Test calls the method.
* Has OK status if the method returns not null.
*/ public void _getView() { XView the_view = oObj.getView(); tRes.tested("getView()", the_view != null); } }