blob: 1cfdd20bd1eb11125af6c83b69408a500b3ee685 [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.util;
import org.eclipse.emf.common.util.BasicEList;
import org.eclipse.emf.common.util.EList;
import org.eclipse.jst.ws.jaxws.dom.runtime.DomUtil;
import org.eclipse.jst.ws.jaxws.dom.runtime.api.DomFactory;
import org.eclipse.jst.ws.jaxws.dom.runtime.api.DomPackage;
import org.eclipse.jst.ws.jaxws.dom.runtime.api.IServiceEndpointInterface;
import org.eclipse.jst.ws.jaxws.dom.runtime.api.IWebMethod;
import org.eclipse.jst.ws.jaxws.dom.runtime.api.IWebParam;
import org.eclipse.jst.ws.jaxws.dom.runtime.api.IWebService;
import org.eclipse.jst.ws.jaxws.dom.runtime.api.IWebServiceProject;
import org.eclipse.jst.ws.jaxws.testutils.jmock.Mock;
import org.eclipse.jst.ws.jaxws.testutils.jmock.MockObjectTestCase;
public class DomUtilTest extends MockObjectTestCase
{
private DomUtil util;
public void setUp()
{
util = new DomUtil();
}
public void testIsOutideInWebService()
{
Mock<IWebService> ws = mock(IWebService.class);
ws.stubs().method("getWsdlLocation").will(returnValue("C:/test/wsdl/location"));
Mock<IServiceEndpointInterface> sei = mock(IServiceEndpointInterface.class);
EList<IWebService> implemetingWs = new BasicEList<IWebService>();
implemetingWs.add(ws.proxy());
sei.stubs().method("getImplementingWebServices").will(returnValue(implemetingWs));
assertTrue(util.isOutsideInWebService(sei.proxy()));
ws.stubs().method("getWsdlLocation").will(returnValue(null));
assertFalse(util.isOutsideInWebService(sei.proxy()));
}
public void testFindWsProject()
{
IWebServiceProject wsProject = DomFactory.eINSTANCE.createIWebServiceProject();
IServiceEndpointInterface sei = DomFactory.eINSTANCE.createIServiceEndpointInterface();
IWebMethod method = DomFactory.eINSTANCE.createIWebMethod();
sei.getWebMethods().add(method);
wsProject.getServiceEndpointInterfaces().add(sei);
assertEquals(wsProject, util.findWsProject(method));
}
public void testCalcUniqueImpl()
{
IWebMethod method = DomFactory.eINSTANCE.createIWebMethod();
method.eSet(DomPackage.Literals.IJAVA_WEB_SERVICE_ELEMENT__IMPLEMENTATION, "method(I)");
IWebParam param = DomFactory.eINSTANCE.createIWebParam();
param.eSet(DomPackage.Literals.IJAVA_WEB_SERVICE_ELEMENT__IMPLEMENTATION, "a");
method.getParameters().add(param);
assertEquals("method(I)", util.calcUniqueImpl(method));
assertEquals("method(I)[a]", util.calcUniqueImpl(param));
}
}