| /******************************************************************************* |
| * Copyright (c) 2010 BSI Business Systems Integration AG. |
| * 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: |
| * BSI Business Systems Integration AG - initial API and implementation |
| ******************************************************************************/ |
| package org.eclipse.scout.sdk.internal.test.operation.service; |
| |
| import org.eclipse.jdt.core.IType; |
| import org.eclipse.scout.sdk.extensions.runtime.classes.RuntimeClasses; |
| import org.eclipse.scout.sdk.internal.test.AbstractSdkTestWithSampleProject; |
| import org.eclipse.scout.sdk.operation.service.LookupServiceNewOperation; |
| import org.eclipse.scout.sdk.testing.SdkAssert; |
| import org.eclipse.scout.sdk.util.internal.sigcache.SignatureCache; |
| import org.junit.Test; |
| |
| /** |
| * <h3>{@link LookupServiceNewOperationTest}</h3> ... |
| * |
| * @author Andreas Hoegger |
| * @since 3.8.0 14.03.2013 |
| */ |
| public class LookupServiceNewOperationTest extends AbstractSdkTestWithSampleProject { |
| |
| @Test |
| public void testNewSqlLookupService() throws Exception { |
| LookupServiceNewOperation serviceOp = new LookupServiceNewOperation("ITestService01", "TestService01"); |
| serviceOp.setImplementationProject(getServerJavaProject()); |
| serviceOp.setImplementationPackageName("sample.server.services.test.output"); |
| serviceOp.setInterfaceProject(getSharedJavaProject()); |
| serviceOp.setInterfacePackageName("sample.shared.services.test.output"); |
| serviceOp.setImplementationSuperTypeSignature(SignatureCache.createTypeSignature(RuntimeClasses.AbstractSqlLookupService)); |
| serviceOp.addInterfaceInterfaceSignature(SignatureCache.createTypeSignature(RuntimeClasses.ILookupService)); |
| |
| executeBuildAssertNoCompileErrors(serviceOp); |
| IType interfaceType = serviceOp.getCreatedServiceInterface(); |
| IType implementationType = serviceOp.getCreatedServiceImplementation(); |
| SdkAssert.assertExist(interfaceType); |
| SdkAssert.assertExist(implementationType); |
| SdkAssert.assertEquals(interfaceType.getElementName(), implementationType.getSuperInterfaceNames()[0]); |
| SdkAssert.assertMethodExist(implementationType, "getConfiguredSqlSelect"); |
| SdkAssert.assertEquals(1, implementationType.getMethods().length); |
| } |
| |
| @Test |
| public void testNewLookupService() throws Exception { |
| LookupServiceNewOperation serviceOp = new LookupServiceNewOperation("ITestService02", "TestService02"); |
| serviceOp.setImplementationProject(getServerJavaProject()); |
| serviceOp.setImplementationPackageName("sample.server.services.test.output"); |
| serviceOp.setInterfaceProject(getSharedJavaProject()); |
| serviceOp.setInterfacePackageName("sample.shared.services.test.output"); |
| serviceOp.setImplementationSuperTypeSignature(SignatureCache.createTypeSignature(RuntimeClasses.AbstractLookupService)); |
| serviceOp.addInterfaceInterfaceSignature(SignatureCache.createTypeSignature(RuntimeClasses.ILookupService)); |
| |
| executeBuildAssertNoCompileErrors(serviceOp); |
| IType interfaceType = serviceOp.getCreatedServiceInterface(); |
| IType implementationType = serviceOp.getCreatedServiceImplementation(); |
| SdkAssert.assertExist(interfaceType); |
| SdkAssert.assertExist(implementationType); |
| SdkAssert.assertEquals(interfaceType.getElementName(), implementationType.getSuperInterfaceNames()[0]); |
| SdkAssert.assertMethodExist(implementationType, "getDataByAll"); |
| SdkAssert.assertMethodExist(implementationType, "getDataByKey"); |
| SdkAssert.assertMethodExist(implementationType, "getDataByRec"); |
| SdkAssert.assertMethodExist(implementationType, "getDataByText"); |
| SdkAssert.assertEquals(4, implementationType.getMethods().length); |
| } |
| } |