blob: 7900cd0502e6b7c1287d49345955723e11477a84 [file] [log] [blame]
package org.eclipse.wst.sse.sieditor.test.ui;
import static org.easymock.EasyMock.createMock;
import static org.easymock.EasyMock.replay;
import static org.easymock.EasyMock.verify;
import java.util.List;
import org.eclipse.wst.sse.sieditor.model.api.IModelRoot;
import org.eclipse.wst.sse.sieditor.test.util.SIEditorBaseTest;
import org.eclipse.wst.sse.sieditor.ui.ServiceInterfaceEditor;
import org.eclipse.wst.sse.sieditor.ui.listeners.IPageChangedListener;
import org.eclipse.wst.sse.sieditor.ui.listeners.PageChangedListenersManager;
import org.eclipse.wst.sse.sieditor.ui.listeners.impl.ModelReconcilerPageChangedLister;
import org.eclipse.wst.sse.sieditor.ui.listeners.impl.SelectionUpdaterPageChangedListener;
import org.eclipse.wst.sse.sieditor.ui.listeners.impl.TreeRefresherPageChangedListener;
import org.eclipse.wst.sse.sieditor.ui.view.impl.SISourceEditorPart;
import org.junit.Test;
public class PageChangedListenersManagerTest extends SIEditorBaseTest {
@Test
public void testCreatePageChangedListeners() {
SISourceEditorPart sourcePage = new SISourceEditorPart();
PageChangedListenersManager pageChangedListenersManager = new PageChangedListenersManager(sourcePage);
List<IPageChangedListener> listeners = pageChangedListenersManager.getListeners();
assertEquals(ModelReconcilerPageChangedLister.class, listeners.get(0).getClass());
assertEquals(SelectionUpdaterPageChangedListener.class, listeners.get(1).getClass());
assertEquals(TreeRefresherPageChangedListener.class, listeners.get(2).getClass());
}
@Test
public void testNotifyPageChangedListeners() throws Exception {
final int OLD_PAGE_INDEX = 1;
final int NEW_PAGE_INDEX = 0;
// open the editor in order to get an instance of it in the protected
// "editor" variable
IModelRoot modelRoot = getModelRoot("pub/csns/renameMultiReferredPart.wsdl", //$NON-NLS-1$
"renameMultiReferredPart.wsdl", ServiceInterfaceEditor.EDITOR_ID);
editor.pageChange(OLD_PAGE_INDEX);
IPageChangedListener mockPageChangedListener = createMock(IPageChangedListener.class);
mockPageChangedListener.pageChanged(NEW_PAGE_INDEX, OLD_PAGE_INDEX, editor.getPages(), modelRoot);
replay(mockPageChangedListener);
editor.getPageChangedListenersManager().addPageChangeListener(mockPageChangedListener);
editor.pageChange(NEW_PAGE_INDEX);
verify(mockPageChangedListener);
}
}