/******************************************************************************* * Copyright (c) 2013-2014 Red Hat, Inc. * Distributed under license by Red Hat, Inc. All rights reserved. * This program is 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: * Red Hat, Inc. - initial API and implementation ******************************************************************************/ package org.jboss.tools.cdi.core.test.tck.validation; import junit.framework.TestCase; import org.eclipse.core.resources.IFile; import org.eclipse.core.resources.IProject; import org.eclipse.core.resources.ResourcesPlugin; import org.eclipse.core.runtime.CoreException; import org.jboss.tools.cdi.core.CDICorePlugin; import org.jboss.tools.cdi.core.CDIVersion; import org.jboss.tools.cdi.core.ICDIProject; import org.jboss.tools.cdi.internal.core.scanner.lib.BeanArchiveDetector; import org.jboss.tools.cdi.internal.core.validation.CDIValidationMessages; import org.jboss.tools.common.base.test.validation.TestUtil; import org.jboss.tools.test.util.ResourcesUtils; import org.jboss.tools.tests.AbstractResourceMarkerTest; /** * @author Viacheslav Kabanovich */ public class CDI12ArrayValidationTest extends TestCase { IProject missingBeansXmlProjectCDI11; IProject missingBeansXmlProjectCDI12; boolean saveAutoBuild; @Override public void setUp() throws Exception { missingBeansXmlProjectCDI11 = ResourcesPlugin.getWorkspace().getRoot().getProject("missingBeansXmlProjectCDI11"); assertTrue("Can't load missingBeansXmlProjectCDI11", missingBeansXmlProjectCDI11.exists()); missingBeansXmlProjectCDI12 = ResourcesPlugin.getWorkspace().getRoot().getProject("missingBeansXmlProjectCDI12"); assertTrue("Can't load missingBeansXmlProjectCDI12", missingBeansXmlProjectCDI12.exists()); saveAutoBuild = ResourcesUtils.setBuildAutomatically(false); TestUtil._waitForValidation(missingBeansXmlProjectCDI11); TestUtil._waitForValidation(missingBeansXmlProjectCDI12); } @Override public void tearDown() throws CoreException { ResourcesUtils.setBuildAutomatically(saveAutoBuild); } public void testMissingBeansXmlCDI12() throws CoreException { ICDIProject cdi = CDICorePlugin.getCDIProject(missingBeansXmlProjectCDI12, true); assertEquals(CDIVersion.CDI_1_2, cdi.getVersion()); assertEquals(BeanArchiveDetector.ANNOTATED, cdi.getNature().getBeanDiscoveryMode()); IFile file = missingBeansXmlProjectCDI12.getFile("/src/beans/DependentBean.java"); AbstractResourceMarkerTest.assertMarkerIsCreated(file, CDIValidationMessages.INJECTION_TYPE_IS_VARIABLE[CDIVersion.CDI_1_2.getIndex()], 18, 22); AbstractResourceMarkerTest.assertMarkerIsCreated(file, CDIValidationMessages.PRODUCER_FIELD_TYPE_IS_VARIABLE[CDIVersion.CDI_1_2.getIndex()], 10); AbstractResourceMarkerTest.assertMarkerIsCreated(file, CDIValidationMessages.PRODUCER_METHOD_RETURN_TYPE_IS_VARIABLE[CDIVersion.CDI_1_2.getIndex()], 13); } }