/************************************************************** * * 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.util; import lib.MultiMethodTest; import com.sun.star.util.XRefreshListener; import com.sun.star.util.XRefreshable; /** * Testing com.sun.star.util.XRefreshable * interface methods : *

* Test is NOT multithread compilant.

* @see com.sun.star.util.XRefreshable */ public class _XRefreshable extends MultiMethodTest { public XRefreshable oObj = null; final boolean listenerCalled[] = new boolean[1]; /** * XRefreshListener implementation which * sets a flag when refreshed method is * called. */ public class MyRefreshListener implements XRefreshListener { public void refreshed (com.sun.star.lang.EventObject e) { listenerCalled[0] = true; } public void disposing (com.sun.star.lang.EventObject obj) {} } XRefreshListener listener = new MyRefreshListener(); /** * Just adds a listener.

* Always has OK status. */ public void _addRefreshListener() { oObj.addRefreshListener(listener) ; tRes.tested("addRefreshListener()", true); } /** * Calls the method and checks if the listener was called.

* Has OK status if listener's flag is set after call. * The following method tests are to be completed successfully before : *

*/ public void _refresh() { requiredMethod("addRefreshListener()"); oObj.refresh(); tRes.tested("refresh()", listenerCalled[0]); if (!listenerCalled[0]) log.println("RefreshListener wasn't called after refresh"); } /** * Removes the listener added before and calls refresh * method. Listener must not be called.

* Has OK status if listener's flag isn't changed. *

*/ public void _removeRefreshListener() { requiredMethod("refresh()"); listenerCalled[0] = false; oObj.removeRefreshListener(listener) ; oObj.refresh(); tRes.tested("removeRefreshListener()", !listenerCalled[0]); if (listenerCalled[0]) log.println("RefreshListener was called after removing"); } } // finish class _XRefreshable