blob: ff8ffbadb2d0813104793a3287922e0c5b3865bd [file] [log] [blame]
/*******************************************************************************
* Copyright (c) 2009 by SAP AG, Walldorf.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* SAP AG - initial API and implementation
*******************************************************************************/
package org.eclipse.jst.ws.jaxws.dom.runtime.tests.dom.persistence.sync;
import org.eclipse.jdt.core.ICompilationUnit;
import org.eclipse.jdt.core.IJavaModel;
import org.eclipse.jdt.core.JavaModelException;
import org.eclipse.jst.ws.jaxws.dom.runtime.api.IWebServiceProject;
import org.eclipse.jst.ws.jaxws.dom.runtime.persistence.JaxWsWorkspaceResource;
import org.eclipse.jst.ws.jaxws.dom.runtime.persistence.JaxWsWorkspaceResource.ServiceModelData;
import org.eclipse.jst.ws.jaxws.dom.runtime.persistence.sync.AbstractModelSynchronizer;
import org.eclipse.jst.ws.jaxws.testutils.jmock.Mock;
import org.eclipse.jst.ws.jaxws.testutils.jmock.MockObjectTestCase;
/**
* Tests for {@link AbstractModelSynchronizer} class, methods not covered in this test
* are covered implicitly by {@link ModelSynchronizationTests}.
*
* @author Georgi Vachkov
*/
public class AbstractModelSynchronizerTest extends MockObjectTestCase
{
private AbstractModelSynchronizerTester modelSync;
private JaxWsWorkspaceResource resource;
@Override
public void setUp()
{
Mock<IJavaModel> javaModelMock = mock(IJavaModel.class);
resource = new JaxWsWorkspaceResource(javaModelMock.proxy());
modelSync = new AbstractModelSynchronizerTester(resource, resource.new ServiceModelData()){};
}
public void testProcessCompilationUnitEditEnabledDespiteNPE() throws JavaModelException
{
assertTrue(resource.isSaveEnabled());
try {
modelSync.processCompilationUnit(null, null);
} catch (NullPointerException _) {
}
assertTrue(resource.isSaveEnabled());
}
public void testProcessCompilationUnitEditEnabledNormalExecution() throws JavaModelException
{
assertTrue(resource.isSaveEnabled());
Mock<ICompilationUnit> cuMock = mock(ICompilationUnit.class);
cuMock.expects(once()).method("findPrimaryType").will(returnValue(null));
modelSync.processCompilationUnit(null, cuMock.proxy());
assertTrue(resource.isSaveEnabled());
}
public class AbstractModelSynchronizerTester extends AbstractModelSynchronizer
{
public AbstractModelSynchronizerTester(JaxWsWorkspaceResource resource, ServiceModelData serviceData) {
super(resource, serviceData);
}
protected void processCompilationUnit(final IWebServiceProject wsProject, final ICompilationUnit cu) throws JavaModelException
{
super.processCompilationUnit(wsProject, cu);
}
}
}