diff options
Diffstat (limited to 'jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence')
24 files changed, 0 insertions, 4858 deletions
diff --git a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/EclipseLinkPersistenceUnitTestCase.java b/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/EclipseLinkPersistenceUnitTestCase.java deleted file mode 100644 index d6ca4d10f5..0000000000 --- a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/EclipseLinkPersistenceUnitTestCase.java +++ /dev/null @@ -1,53 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2008, 2011 Oracle. 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: - * Oracle - initial API and implementation - *******************************************************************************/ -package org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence; - -import org.eclipse.jpt.common.utility.internal.model.value.SimplePropertyValueModel; -import org.eclipse.jpt.common.utility.model.value.PropertyValueModel; -import org.eclipse.jpt.jpa.core.internal.facet.JpaFacetDataModelProperties; -import org.eclipse.jpt.jpa.core.tests.internal.context.persistence.PersistenceUnitTestCase; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.EclipseLinkPersistenceUnit; -import org.eclipse.jpt.jpa.eclipselink.core.platform.EclipseLinkPlatform; -import org.eclipse.wst.common.frameworks.datamodel.IDataModel; - -/** - * PersistenceUnitTestCase - */ -public abstract class EclipseLinkPersistenceUnitTestCase extends PersistenceUnitTestCase -{ - protected EclipseLinkPersistenceUnit subject; - - protected PropertyValueModel<EclipseLinkPersistenceUnit> subjectHolder; - - // ********** constructors ********** - protected EclipseLinkPersistenceUnitTestCase(String name) { - super(name); - } - - @Override - protected void setUp() throws Exception { - super.setUp(); - this.subject = this.getPersistenceUnit(); - this.subjectHolder = new SimplePropertyValueModel<EclipseLinkPersistenceUnit>(this.subject); - this.populatePu(); - } - - @Override - protected IDataModel buildJpaConfigDataModel() { - IDataModel dataModel = super.buildJpaConfigDataModel(); - dataModel.setProperty(JpaFacetDataModelProperties.PLATFORM, EclipseLinkPlatform.VERSION_1_0); - return dataModel; - } - - @Override - protected EclipseLinkPersistenceUnit getPersistenceUnit() { - return (EclipseLinkPersistenceUnit) super.getPersistenceUnit(); - } -} diff --git a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/EclipseLinkPersistenceUnitTests.java b/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/EclipseLinkPersistenceUnitTests.java deleted file mode 100644 index 6aee690a4e..0000000000 --- a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/EclipseLinkPersistenceUnitTests.java +++ /dev/null @@ -1,178 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2008, 2011 Oracle. 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: - * Oracle - initial API and implementation - *******************************************************************************/ -package org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence; - -import java.util.Iterator; -import java.util.ListIterator; -import org.eclipse.jdt.core.ICompilationUnit; -import org.eclipse.jpt.common.core.internal.operations.JptFileCreationDataModelProperties; -import org.eclipse.jpt.common.utility.internal.CollectionTools; -import org.eclipse.jpt.common.utility.internal.iterators.ArrayIterator; -import org.eclipse.jpt.jpa.core.MappingKeys; -import org.eclipse.jpt.jpa.core.context.orm.OrmPersistentType; -import org.eclipse.jpt.jpa.core.context.persistence.MappingFileRef; -import org.eclipse.jpt.jpa.core.context.persistence.PersistenceUnit; -import org.eclipse.jpt.jpa.core.internal.facet.JpaFacetInstallDataModelProperties; -import org.eclipse.jpt.jpa.core.internal.operations.OrmFileCreationDataModelProperties; -import org.eclipse.jpt.jpa.core.resource.java.JPA; -import org.eclipse.jpt.jpa.core.resource.persistence.PersistenceFactory; -import org.eclipse.jpt.jpa.core.resource.persistence.XmlJavaClassRef; -import org.eclipse.jpt.jpa.core.resource.persistence.XmlMappingFileRef; -import org.eclipse.jpt.jpa.core.resource.persistence.XmlPersistenceUnit; -import org.eclipse.jpt.jpa.core.resource.xml.JpaXmlResource; -import org.eclipse.jpt.jpa.core.tests.internal.projects.TestJpaProject; -import org.eclipse.jpt.jpa.eclipselink.core.JptJpaEclipseLinkCorePlugin; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.EclipseLinkPersistenceUnit; -import org.eclipse.jpt.jpa.eclipselink.core.internal.operations.EclipseLinkOrmFileCreationDataModelProvider; -import org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.orm.EclipseLinkOrmContextModelTestCase; -import org.eclipse.wst.common.frameworks.datamodel.DataModelFactory; -import org.eclipse.wst.common.frameworks.datamodel.IDataModel; - -@SuppressWarnings("nls") -public class EclipseLinkPersistenceUnitTests - extends EclipseLinkOrmContextModelTestCase -{ - public EclipseLinkPersistenceUnitTests(String name) { - super(name); - } - - - @Override - protected IDataModel buildJpaConfigDataModel() { - IDataModel dataModel = super.buildJpaConfigDataModel(); - dataModel.setProperty(JpaFacetInstallDataModelProperties.CREATE_ORM_XML, Boolean.TRUE); - return dataModel; - } - - @Override - protected IDataModel buildEclipseLinkOrmConfig(TestJpaProject testJpaProject) { - IDataModel dataModel = - DataModelFactory.createDataModel(new EclipseLinkOrmFileCreationDataModelProvider()); - dataModel.setProperty(JptFileCreationDataModelProperties.CONTAINER_PATH, - testJpaProject.getProject().getFolder("src/META-INF").getFullPath()); - dataModel.setProperty(OrmFileCreationDataModelProperties.ADD_TO_PERSISTENCE_UNIT, Boolean.FALSE); - return dataModel; - } - - private ICompilationUnit createTestEntity() throws Exception { - return this.createTestType(new DefaultAnnotationWriter() { - @Override - public Iterator<String> imports() { - return new ArrayIterator<String>(JPA.ENTITY); - } - @Override - public void appendTypeAnnotationTo(StringBuilder sb) { - sb.append("@Entity").append(CR); - } - }); - } - - public void testUpdateEclipseLinkImpliedMappingFileRef1() throws Exception { - EclipseLinkPersistenceUnit persistenceUnit = getPersistenceUnit(); - - // test that there is one initially - JpaXmlResource eclipseLinkOrmResource = getOrmXmlResource(); - assertTrue(eclipseLinkOrmResource.fileExists()); - assertNotNull(persistenceUnit.getImpliedMappingFileRef()); - assertNotNull(persistenceUnit.getImpliedEclipseLinkMappingFileRef()); - - // remove eclipselink-orm.xml - deleteResource(eclipseLinkOrmResource); - - assertFalse(eclipseLinkOrmResource.fileExists()); - assertNotNull(persistenceUnit.getImpliedMappingFileRef()); - assertNull(persistenceUnit.getImpliedEclipseLinkMappingFileRef()); - } - - public void testUpdateEclipseLinkImpliedMappingFileRef2() { - XmlPersistenceUnit xmlPersistenceUnit = getXmlPersistenceUnit(); - EclipseLinkPersistenceUnit persistenceUnit = getPersistenceUnit(); - - // test that there is one initially - JpaXmlResource eclipseLinkOrmResource = getOrmXmlResource(); - assertTrue(eclipseLinkOrmResource.fileExists()); - assertNotNull(persistenceUnit.getImpliedMappingFileRef()); - assertNotNull(persistenceUnit.getImpliedEclipseLinkMappingFileRef()); - - // add specified eclipselink-orm.xml - XmlMappingFileRef xmlMappingFileRef = PersistenceFactory.eINSTANCE.createXmlMappingFileRef(); - xmlMappingFileRef.setFileName("META-INF/eclipselink-orm.xml"); - xmlPersistenceUnit.getMappingFiles().add(xmlMappingFileRef); - - assertEquals(1, CollectionTools.size(persistenceUnit.specifiedMappingFileRefs())); - - assertTrue(eclipseLinkOrmResource.fileExists()); - assertNotNull(persistenceUnit.getImpliedMappingFileRef()); - assertNull(persistenceUnit.getImpliedEclipseLinkMappingFileRef()); - } - - public void testUpdateEclipseLinkImpliedMappingFileRef3() { - EclipseLinkPersistenceUnit persistenceUnit = getPersistenceUnit(); - - // test that there is one initially - JpaXmlResource eclipseLinkOrmResource = getOrmXmlResource(); - assertTrue(eclipseLinkOrmResource.fileExists()); - assertNotNull(persistenceUnit.getImpliedMappingFileRef()); - assertNotNull(persistenceUnit.getImpliedEclipseLinkMappingFileRef()); - - // ignore in persistence unit - persistenceUnit.getGeneralProperties().setExcludeEclipselinkOrm(Boolean.TRUE); - - assertTrue(eclipseLinkOrmResource.fileExists()); - assertNotNull(persistenceUnit.getImpliedMappingFileRef()); - assertNull(persistenceUnit.getImpliedEclipseLinkMappingFileRef()); - } - - public void testMappingFileRefs() { - EclipseLinkPersistenceUnit persistenceUnit = getPersistenceUnit(); - ListIterator<MappingFileRef> mappingFileRefs = persistenceUnit.mappingFileRefs(); - - assertEquals(persistenceUnit.getImpliedMappingFileRef(), mappingFileRefs.next().getMappingFile().getParent()); - assertEquals(persistenceUnit.getImpliedEclipseLinkMappingFileRef(), mappingFileRefs.next().getMappingFile().getParent()); - } - - public void testMappingFileRefsSize() { - EclipseLinkPersistenceUnit persistenceUnit = getPersistenceUnit(); - assertEquals(2, persistenceUnit.mappingFileRefsSize()); - } - - public void testPersistentType() throws Exception { - getJpaProject().setDiscoversAnnotatedClasses(false); - PersistenceUnit persistenceUnit = getPersistenceUnit(); - createTestEntity(); - - //persistentType not listed in persistence.xml and discoverAnnotatedClasses is false - //still find the persistentType because of changes for bug 190317 - assertFalse(getJpaProject().discoversAnnotatedClasses()); - assertNotNull(persistenceUnit.getPersistentType(FULLY_QUALIFIED_TYPE_NAME)); - - //test persistentType not listed in persistence.xml, discover annotated classes set to true - getJpaProject().setDiscoversAnnotatedClasses(true); - assertNotNull(persistenceUnit.getPersistentType(FULLY_QUALIFIED_TYPE_NAME)); - - //test persistentType list as class in persistence.xml - getJpaProject().setDiscoversAnnotatedClasses(false); - XmlJavaClassRef classRef = PersistenceFactory.eINSTANCE.createXmlJavaClassRef(); - classRef.setJavaClass(FULLY_QUALIFIED_TYPE_NAME); - getXmlPersistenceUnit().getClasses().add(classRef); - assertNotNull(persistenceUnit.getPersistentType(FULLY_QUALIFIED_TYPE_NAME)); - - - //test persistentType from orm.xml file that is specified in the persistence.xml - addXmlMappingFileRef(JptJpaEclipseLinkCorePlugin.DEFAULT_ECLIPSELINK_ORM_XML_RUNTIME_PATH.toString()); - OrmPersistentType ormPersistentType = getEntityMappings().addPersistentType(MappingKeys.ENTITY_TYPE_MAPPING_KEY, "model.Foo"); - assertNotNull(persistenceUnit.getPersistentType("model.Foo")); - assertEquals(ormPersistentType, persistenceUnit.getPersistentType("model.Foo")); - - //test persistentType from eclipselink-orm.xml file that is implied(not specified) in the persistence.xml - getXmlPersistenceUnit().getMappingFiles().remove(0); - assertNotNull(persistenceUnit.getPersistentType("model.Foo")); - } -} diff --git a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/JptEclipseLinkCorePersistenceContextModelTests.java b/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/JptEclipseLinkCorePersistenceContextModelTests.java deleted file mode 100644 index dffd65e090..0000000000 --- a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/JptEclipseLinkCorePersistenceContextModelTests.java +++ /dev/null @@ -1,43 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2010 Oracle. - * 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: - * Oracle - initial API and implementation - *******************************************************************************/ -package org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence; - -import junit.framework.Test; -import junit.framework.TestCase; -import junit.framework.TestSuite; -import org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.caching.JptEclipseLinkPersistenceCachingTests; -import org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.connection.JptEclipseLinkPersistenceConnectionTests; -import org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.customization.JptEclipseLinkPersistenceCustomizationTests; -import org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.general.JptEclipseLinkPersistenceGeneralTests; -import org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.logging.JptEclipseLinkPersistenceLoggingTests; -import org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.options.JptEclipseLinkPersistenceOptionsTests; -import org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.schema.generation.JptEclipseLinkPersistenceSchemaGenerationTests; - -public class JptEclipseLinkCorePersistenceContextModelTests extends TestCase -{ - public static Test suite() { - TestSuite suite = new TestSuite(JptEclipseLinkCorePersistenceContextModelTests.class.getName()); - suite.addTestSuite(EclipseLinkPersistenceUnitTests.class); - suite.addTest(JptEclipseLinkPersistenceGeneralTests.suite()); - suite.addTest(JptEclipseLinkPersistenceConnectionTests.suite()); - suite.addTest(JptEclipseLinkPersistenceCustomizationTests.suite()); - suite.addTest(JptEclipseLinkPersistenceCachingTests.suite()); - suite.addTest(JptEclipseLinkPersistenceLoggingTests.suite()); - suite.addTest(JptEclipseLinkPersistenceOptionsTests.suite()); - suite.addTest(JptEclipseLinkPersistenceSchemaGenerationTests.suite()); - return suite; - } - - private JptEclipseLinkCorePersistenceContextModelTests() { - super(); - throw new UnsupportedOperationException(); - } -} diff --git a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/caching/CachingAdapterTests.java b/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/caching/CachingAdapterTests.java deleted file mode 100644 index bb2a737f6d..0000000000 --- a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/caching/CachingAdapterTests.java +++ /dev/null @@ -1,449 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2007, 2011 Oracle. 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: - * Oracle - initial API and implementation - ******************************************************************************/ -package org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.caching; - -import org.eclipse.jpt.common.utility.model.event.ListAddEvent; -import org.eclipse.jpt.common.utility.model.event.ListChangeEvent; -import org.eclipse.jpt.common.utility.model.event.ListClearEvent; -import org.eclipse.jpt.common.utility.model.event.ListEvent; -import org.eclipse.jpt.common.utility.model.event.ListMoveEvent; -import org.eclipse.jpt.common.utility.model.event.ListRemoveEvent; -import org.eclipse.jpt.common.utility.model.event.ListReplaceEvent; -import org.eclipse.jpt.common.utility.model.listener.ListChangeListener; -import org.eclipse.jpt.common.utility.model.listener.PropertyChangeListener; -import org.eclipse.jpt.jpa.core.context.persistence.PersistenceUnitProperties; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.caching.CacheType; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.caching.Caching; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.caching.Entity; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.caching.FlushClearCache; -import org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.EclipseLinkPersistenceUnitTestCase; - -/** - * Tests the update of model objects by the Caching adapter when the - * PersistenceUnit changes. - */ -@SuppressWarnings("nls") -public class CachingAdapterTests extends EclipseLinkPersistenceUnitTestCase -{ - private Caching caching; - private ListEvent entitiesEvent; - - public static final String ENTITY_TEST = "Employee"; - public static final String ENTITY_TEST_2 = "Address"; - - public static final String CACHE_TYPE_DEFAULT_KEY = Caching.ECLIPSELINK_CACHE_TYPE_DEFAULT; - public static final CacheType CACHE_TYPE_DEFAULT_TEST_VALUE = CacheType.soft_weak; - public static final CacheType CACHE_TYPE_DEFAULT_TEST_VALUE_2 = CacheType.full; - - public static final String CACHE_SIZE_DEFAULT_KEY = Caching.ECLIPSELINK_CACHE_SIZE_DEFAULT; - public static final Integer CACHE_SIZE_DEFAULT_TEST_VALUE = 12345; - public static final Integer CACHE_SIZE_DEFAULT_TEST_VALUE_2 = 67890; - - public static final String SHARED_CACHE_DEFAULT_KEY = Caching.ECLIPSELINK_CACHE_SHARED_DEFAULT; - public static final Boolean SHARED_CACHE_DEFAULT_TEST_VALUE = false; - public static final Boolean SHARED_CACHE_DEFAULT_TEST_VALUE_2 = true; - - public static final String CACHE_TYPE_KEY = Caching.ECLIPSELINK_CACHE_TYPE + ENTITY_TEST; - public static final CacheType CACHE_TYPE_TEST_VALUE = CacheType.soft_weak; - public static final CacheType CACHE_TYPE_TEST_VALUE_2 = CacheType.full; - - public static final String SHARED_CACHE_KEY = Caching.ECLIPSELINK_SHARED_CACHE + ENTITY_TEST; - public static final Boolean SHARED_CACHE_TEST_VALUE = false; - public static final Boolean SHARED_CACHE_TEST_VALUE_2 = true; - - public static final String CACHE_SIZE_KEY = Caching.ECLIPSELINK_CACHE_SIZE + ENTITY_TEST; - public static final Integer CACHE_SIZE_TEST_VALUE = 12345; - public static final Integer CACHE_SIZE_TEST_VALUE_2 = 67890; - - public static final String FLUSH_CLEAR_CACHE_KEY = Caching.ECLIPSELINK_FLUSH_CLEAR_CACHE; - public static final FlushClearCache FLUSH_CLEAR_CACHE_TEST_VALUE = FlushClearCache.drop; - public static final FlushClearCache FLUSH_CLEAR_CACHE_TEST_VALUE_2 = FlushClearCache.merge; - - public CachingAdapterTests(String name) { - super(name); - } - - @Override - protected void setUp() throws Exception { - super.setUp(); - this.caching = this.getPersistenceUnit().getCaching(); - PropertyChangeListener propertyChangeListener = this.buildPropertyChangeListener(); - - this.caching.addPropertyChangeListener(Caching.CACHE_TYPE_DEFAULT_PROPERTY, propertyChangeListener); - this.caching.addPropertyChangeListener(Caching.CACHE_SIZE_DEFAULT_PROPERTY, propertyChangeListener); - this.caching.addPropertyChangeListener(Caching.SHARED_CACHE_DEFAULT_PROPERTY, propertyChangeListener); - this.caching.addPropertyChangeListener(Entity.CACHE_TYPE_PROPERTY, propertyChangeListener); - this.caching.addPropertyChangeListener(Entity.CACHE_SIZE_PROPERTY, propertyChangeListener); - this.caching.addPropertyChangeListener(Entity.SHARED_CACHE_PROPERTY, propertyChangeListener); - this.caching.addPropertyChangeListener(Caching.FLUSH_CLEAR_CACHE_PROPERTY, propertyChangeListener); - - ListChangeListener entitiesChangeListener = this.buildEntitiesChangeListener(); - this.caching.addListChangeListener(Caching.ENTITIES_LIST, entitiesChangeListener); - this.clearEvent(); - } - - /** - * Initializes directly the PU properties before testing. - */ - @Override - protected void populatePu() { - this.modelPropertiesSizeOriginal = 7; - this.propertiesTotal = this.modelPropertiesSizeOriginal + 4; // 4 misc properties - this.modelPropertiesSize = this.modelPropertiesSizeOriginal; - - this.persistenceUnitSetProperty("misc.property.1", "value.1"); - this.persistenceUnitSetProperty(CACHE_TYPE_DEFAULT_KEY, CACHE_TYPE_DEFAULT_TEST_VALUE); - this.persistenceUnitSetProperty("misc.property.2", "value.2"); - this.persistenceUnitSetProperty(CACHE_SIZE_DEFAULT_KEY, CACHE_SIZE_DEFAULT_TEST_VALUE); - this.persistenceUnitSetProperty(SHARED_CACHE_DEFAULT_KEY, SHARED_CACHE_DEFAULT_TEST_VALUE); - this.persistenceUnitSetProperty("misc.property.3", "value.3"); - this.persistenceUnitSetProperty("misc.property.4", "value.4"); - this.persistenceUnitSetProperty(CACHE_SIZE_KEY, CACHE_SIZE_TEST_VALUE); - this.persistenceUnitSetProperty(CACHE_TYPE_KEY, CACHE_TYPE_TEST_VALUE); - this.persistenceUnitSetProperty(SHARED_CACHE_KEY, SHARED_CACHE_TEST_VALUE); - this.persistenceUnitSetProperty(FLUSH_CLEAR_CACHE_KEY, FLUSH_CLEAR_CACHE_TEST_VALUE); - return; - } - - // ********** Listeners ********** - private ListChangeListener buildEntitiesChangeListener() { - return new ListChangeListener() { - public void itemsAdded(ListAddEvent e) { - CachingAdapterTests.this.entityAdded(e); - } - - public void itemsRemoved(ListRemoveEvent e) { - CachingAdapterTests.this.entityRemoved(e); - } - - public void itemsReplaced(ListReplaceEvent e) { - CachingAdapterTests.this.throwUnsupportedOperationException(e); - } - - public void itemsMoved(ListMoveEvent e) { - CachingAdapterTests.this.throwUnsupportedOperationException(e); - } - - public void listCleared(ListClearEvent e) { - CachingAdapterTests.this.throwUnsupportedOperationException(e); - } - - public void listChanged(ListChangeEvent e) { - CachingAdapterTests.this.throwUnsupportedOperationException(e); - } - }; - } - - @Override - protected void clearEvent() { - super.clearEvent(); - this.entitiesEvent = null; - } - - void entityAdded(ListAddEvent e) { - this.entitiesEvent = e; - } - - void entityRemoved(ListRemoveEvent e) { - this.entitiesEvent = e; - } - - // ********** entities list ********** - public void testEntitiesList() throws Exception { - // add - this.clearEvent(); - int originalNumberOfEntities = this.caching.entitiesSize(); - - this.caching.addEntity(ENTITY_TEST_2); - assertEquals("Entity not added", this.caching.entitiesSize(), originalNumberOfEntities + 1); - - // verify event received - assertNotNull("No Event Fired.", this.entitiesEvent); - // verify event for the expected property - assertEquals("Wrong Event.", this.entitiesEvent.getListName(), Caching.ENTITIES_LIST); - - // remove - this.clearEvent(); - this.caching.removeEntity(ENTITY_TEST_2); - assertEquals("Entity not removed", this.caching.entitiesSize(), originalNumberOfEntities); - - // verify event received - assertNotNull("No Event Fired.", this.entitiesEvent); - // verify event for the expected property - assertEquals("Wrong Event.", this.entitiesEvent.getListName(), Caching.ENTITIES_LIST); - } - - // ********** CacheTypeDefault ********** - /** - * Tests the update of CacheTypeDefault property by the Caching adapter when - * the PU or the model changes. - */ - public void testSetCacheTypeDefault() throws Exception { - this.verifyModelInitialized( - CACHE_TYPE_DEFAULT_KEY, - CACHE_TYPE_DEFAULT_TEST_VALUE); - this.verifySetProperty( - CACHE_TYPE_DEFAULT_KEY, - CACHE_TYPE_DEFAULT_TEST_VALUE, - CACHE_TYPE_DEFAULT_TEST_VALUE_2); - } - - public void testAddRemoveCacheTypeDefault() throws Exception { - this.verifyAddRemoveProperty( - CACHE_TYPE_DEFAULT_KEY, - CACHE_TYPE_DEFAULT_TEST_VALUE, - CACHE_TYPE_DEFAULT_TEST_VALUE_2); - } - - // ********** CacheSizeDefault ********** - /** - * Tests the update of CacheSizeDefault property by the Caching adapter when - * the PU or the model changes. - */ - public void testSetCacheSizeDefault() throws Exception { - this.verifyModelInitialized( - CACHE_SIZE_DEFAULT_KEY, - CACHE_SIZE_DEFAULT_TEST_VALUE); - this.verifySetProperty( - CACHE_SIZE_DEFAULT_KEY, - CACHE_SIZE_DEFAULT_TEST_VALUE, - CACHE_SIZE_DEFAULT_TEST_VALUE_2); - } - - public void testAddRemoveCacheSizeDefault() throws Exception { - this.verifyAddRemoveProperty( - CACHE_SIZE_DEFAULT_KEY, - CACHE_SIZE_DEFAULT_TEST_VALUE, - CACHE_SIZE_DEFAULT_TEST_VALUE_2); - } - - // ********** SharedCacheDefault ********** - public void testSetSharedCacheDefault() throws Exception { - this.verifyModelInitialized( - SHARED_CACHE_DEFAULT_KEY, - SHARED_CACHE_DEFAULT_TEST_VALUE); - this.verifySetProperty( - SHARED_CACHE_DEFAULT_KEY, - SHARED_CACHE_DEFAULT_TEST_VALUE, - SHARED_CACHE_DEFAULT_TEST_VALUE_2); - } - - public void testAddRemoveSharedCacheDefault() throws Exception { - this.verifyAddRemoveProperty( - SHARED_CACHE_DEFAULT_KEY, - SHARED_CACHE_DEFAULT_TEST_VALUE, - SHARED_CACHE_DEFAULT_TEST_VALUE_2); - } - - // ********** CacheType ********** - /** - * Tests the update of CacheType property by the Caching adapter when the PU - * or the model changes. - */ - public void testSetCacheType() throws Exception { - this.verifyModelInitialized( - CACHE_TYPE_KEY, - CACHE_TYPE_TEST_VALUE); - this.verifySetCachingProperty( - Entity.CACHE_TYPE_PROPERTY, - CACHE_TYPE_KEY, - CACHE_TYPE_TEST_VALUE, - CACHE_TYPE_TEST_VALUE_2); - } - - public void testAddRemoveCacheType() throws Exception { - this.verifyAddRemoveCachingProperty( - Entity.CACHE_TYPE_PROPERTY, - CACHE_TYPE_KEY, - CACHE_TYPE_TEST_VALUE, - CACHE_TYPE_TEST_VALUE_2); - } - - // ********** CacheSize ********** - /** - * Tests the update of CacheSize property by the Caching adapter when the PU - * or the model changes. - */ - public void testSetCacheSize() throws Exception { - this.verifyModelInitialized( - CACHE_SIZE_KEY, - CACHE_SIZE_TEST_VALUE); - this.verifySetCachingProperty( - Entity.CACHE_SIZE_PROPERTY, - CACHE_SIZE_KEY, - CACHE_SIZE_TEST_VALUE, - CACHE_SIZE_TEST_VALUE_2); - } - - public void testAddRemoveCacheSize() throws Exception { - this.verifyAddRemoveCachingProperty( - Entity.CACHE_SIZE_PROPERTY, - CACHE_SIZE_KEY, - CACHE_SIZE_TEST_VALUE, - CACHE_SIZE_TEST_VALUE_2); - } - - // ********** SharedCache ********** - /** - * Tests the update of SharedCache property by the Caching adapter when the - * PU or the model changes. - */ - public void testSetSharedCache() throws Exception { - this.verifyModelInitialized( - SHARED_CACHE_KEY, - SHARED_CACHE_TEST_VALUE); - this.verifySetCachingProperty( - Entity.SHARED_CACHE_PROPERTY, - SHARED_CACHE_KEY, - SHARED_CACHE_TEST_VALUE, - SHARED_CACHE_TEST_VALUE_2); - } - - public void testAddRemoveSharedCache() throws Exception { - this.verifyAddRemoveCachingProperty( - Entity.SHARED_CACHE_PROPERTY, - SHARED_CACHE_KEY, - SHARED_CACHE_TEST_VALUE, - SHARED_CACHE_TEST_VALUE_2); - } - - // ********** FlushClearCache tests ********** - public void testSetFlushClearCache() throws Exception { - this.verifyModelInitialized( - FLUSH_CLEAR_CACHE_KEY, - FLUSH_CLEAR_CACHE_TEST_VALUE); - this.verifySetProperty( - FLUSH_CLEAR_CACHE_KEY, - FLUSH_CLEAR_CACHE_TEST_VALUE, - FLUSH_CLEAR_CACHE_TEST_VALUE_2); - } - - public void testAddRemoveFlushClearCache() throws Exception { - this.verifyAddRemoveProperty( - FLUSH_CLEAR_CACHE_KEY, - FLUSH_CLEAR_CACHE_TEST_VALUE, - FLUSH_CLEAR_CACHE_TEST_VALUE_2); - } - - // ****** convenience methods ******* - @Override - protected PersistenceUnitProperties getModel() { - return this.caching; - } - - protected void verifySetCachingProperty(String propertyName, String key, Object testValue1, Object testValue2) throws Exception { - // Replace - this.persistenceUnitSetProperty(key, testValue2); - this.verifyPutCachingProperty(propertyName, ENTITY_TEST, testValue2); - - // Replace by setting model object - this.clearEvent(); - this.setCachingProperty(propertyName, ENTITY_TEST, testValue1); - this.verifyPutCachingProperty(propertyName, ENTITY_TEST, testValue1); - } - - protected void verifyAddRemoveCachingProperty(String propertyName, String key, Object testValue1, Object testValue2) throws Exception { - // Remove - this.clearEvent(); - --this.propertiesTotal; - --this.modelPropertiesSize; - this.getPersistenceUnit().removeProperty(key); - assertNull(this.getPersistenceUnit().getProperty(key)); - assertEquals(this.modelPropertiesSize, this.modelPropertiesSizeOriginal - 1); - this.verifyPutCachingProperty(propertyName, ENTITY_TEST, null); - - // Add original Property - ++this.propertiesTotal; - ++this.modelPropertiesSize; - this.persistenceUnitSetProperty(key, testValue1); - this.verifyPutCachingProperty(propertyName, ENTITY_TEST, testValue1); - - // Set to null - this.persistenceUnitSetProperty(key, null); - this.verifyPutCachingProperty(propertyName, ENTITY_TEST, null); - - // Replace - this.persistenceUnitSetProperty(key, testValue2); - this.verifyPutCachingProperty(propertyName, ENTITY_TEST, testValue2); - } - - protected void verifyPutCachingProperty(String propertyName, String entityName, Object expectedValue) throws Exception { - this.verifyEvent(propertyName); - this.verifyCachingEvent(propertyName, entityName, expectedValue); - } - - protected void verifyCachingEvent(String propertyName, String entityName, Object expectedValue) throws Exception { - // verify event value - Entity entity = (Entity) this.propertyChangedEvent.getNewValue(); - if (propertyName.equals(Entity.CACHE_TYPE_PROPERTY)) { - assertEquals(expectedValue, entity.getParent().getCacheTypeOf(entityName)); - assertEquals(expectedValue, this.caching.getCacheTypeOf(entityName)); - } - else if (propertyName.equals(Entity.CACHE_SIZE_PROPERTY)) { - assertEquals(expectedValue, entity.getParent().getCacheSizeOf(entityName)); - assertEquals(expectedValue, this.caching.getCacheSizeOf(entityName)); - } - else if (propertyName.equals(Entity.SHARED_CACHE_PROPERTY)) { - assertEquals(expectedValue, entity.getParent().getSharedCacheOf(entityName)); - assertEquals(expectedValue, this.caching.getSharedCacheOf(entityName)); - } - else { - this.throwMissingDefinition("verifyCachingEvent", propertyName); - } - } - - // ********** get/set property ********** - @Override - protected void setProperty(String propertyName, Object newValue) throws Exception { - if (propertyName.equals(Caching.CACHE_TYPE_DEFAULT_PROPERTY)) - this.caching.setCacheTypeDefault((CacheType) newValue); - else if (propertyName.equals(Caching.CACHE_SIZE_DEFAULT_PROPERTY)) - this.caching.setCacheSizeDefault((Integer) newValue); - else if (propertyName.equals(Caching.SHARED_CACHE_DEFAULT_PROPERTY)) - this.caching.setSharedCacheDefault((Boolean) newValue); - else if (propertyName.equals(Caching.FLUSH_CLEAR_CACHE_PROPERTY)) - this.caching.setFlushClearCache((FlushClearCache) newValue); - else - this.throwMissingDefinition("setProperty", propertyName); - } - - protected void setCachingProperty(String propertyName, String entityName, Object newValue) throws NoSuchFieldException { - if (propertyName.equals(Entity.CACHE_TYPE_PROPERTY)) - this.caching.setCacheTypeOf(entityName, (CacheType) newValue); - else if (propertyName.equals(Entity.CACHE_SIZE_PROPERTY)) - this.caching.setCacheSizeOf(entityName, (Integer) newValue); - else if (propertyName.equals(Entity.SHARED_CACHE_PROPERTY)) - this.caching.setSharedCacheOf(entityName, (Boolean) newValue); - else - this.throwMissingDefinition("setCachingProperty", propertyName); - } - - @Override - protected Object getProperty(String propertyName) throws NoSuchFieldException { - Object modelValue = null; - if (propertyName.equals(Caching.CACHE_TYPE_DEFAULT_PROPERTY)) - modelValue = this.caching.getCacheTypeDefault(); - else if (propertyName.equals(Caching.CACHE_SIZE_DEFAULT_PROPERTY)) - modelValue = this.caching.getCacheSizeDefault(); - else if (propertyName.equals(Caching.SHARED_CACHE_DEFAULT_PROPERTY)) - modelValue = this.caching.getSharedCacheDefault(); - else if (propertyName.equals(Entity.CACHE_SIZE_PROPERTY)) - modelValue = this.caching.getCacheSizeOf(ENTITY_TEST); - else if (propertyName.equals(Entity.CACHE_TYPE_PROPERTY)) - modelValue = this.caching.getCacheTypeOf(ENTITY_TEST); - else if (propertyName.equals(Entity.SHARED_CACHE_PROPERTY)) - modelValue = this.caching.getSharedCacheOf(ENTITY_TEST); - else if (propertyName.equals(Caching.FLUSH_CLEAR_CACHE_PROPERTY)) - modelValue = this.caching.getFlushClearCache(); - else - this.throwMissingDefinition("getProperty", propertyName); - return modelValue; - } -} diff --git a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/caching/CachingValueModelTests.java b/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/caching/CachingValueModelTests.java deleted file mode 100644 index aad538e72a..0000000000 --- a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/caching/CachingValueModelTests.java +++ /dev/null @@ -1,444 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2008, 2011 Oracle. 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: - * Oracle - initial API and implementation - *******************************************************************************/ -package org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.caching; - -import org.eclipse.jpt.common.utility.internal.model.AbstractModel; -import org.eclipse.jpt.common.utility.internal.model.value.PropertyAspectAdapter; -import org.eclipse.jpt.common.utility.internal.model.value.SimplePropertyValueModel; -import org.eclipse.jpt.common.utility.model.event.PropertyChangeEvent; -import org.eclipse.jpt.common.utility.model.listener.PropertyChangeListener; -import org.eclipse.jpt.common.utility.model.value.PropertyValueModel; -import org.eclipse.jpt.common.utility.model.value.WritablePropertyValueModel; -import org.eclipse.jpt.jpa.core.context.persistence.PersistenceUnitProperties; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.caching.CacheType; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.caching.Caching; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.caching.Entity; -import org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.EclipseLinkPersistenceUnitTestCase; - -/** - * CachingValueModelTests - */ -@SuppressWarnings("nls") -public class CachingValueModelTests extends EclipseLinkPersistenceUnitTestCase -{ - private Caching caching; - private PropertyValueModel<Caching> cachingHolder; - - private WritablePropertyValueModel<CacheType> cacheTypeHolder; - private PropertyChangeListener cacheTypeListener; - private PropertyChangeEvent cacheTypeEvent; - - private WritablePropertyValueModel<Boolean> sharedCacheHolder; - private PropertyChangeListener sharedCacheListener; - private PropertyChangeEvent sharedCacheEvent; - - private WritablePropertyValueModel<CacheType> cacheTypeDefaultHolder; - private PropertyChangeListener cacheTypeDefaultListener; - private PropertyChangeEvent cacheTypeDefaultEvent; - - private WritablePropertyValueModel<Boolean> sharedCacheDefaultHolder; - private PropertyChangeListener sharedCacheDefaultListener; - private PropertyChangeEvent sharedCacheDefaultEvent; - - public static final String ENTITY_NAME_TEST_VALUE = "Employee"; - public static final CacheType CACHE_TYPE_TEST_VALUE = CacheType.hard_weak; - public static final Boolean SHARED_CACHE_TEST_VALUE = Boolean.FALSE; - public static final CacheType CACHE_TYPE_DEFAULT_TEST_VALUE = CacheType.weak; - public static final Boolean SHARED_CACHE_DEFAULT_TEST_VALUE = Boolean.FALSE; - - public CachingValueModelTests(String name) { - super(name); - } - - @Override - protected void setUp() throws Exception { - super.setUp(); - this.caching = this.subject.getCaching(); // Subject - this.cachingHolder = new SimplePropertyValueModel<Caching>(this.caching); - - this.cacheTypeHolder = this.buildCacheTypeAA(this.cachingHolder); - this.cacheTypeListener = this.buildCacheTypeChangeListener(); - this.cacheTypeHolder.addPropertyChangeListener(PropertyValueModel.VALUE, this.cacheTypeListener); - this.cacheTypeEvent = null; - - this.sharedCacheHolder = this.buildSharedCacheAA(this.cachingHolder); - this.sharedCacheListener = this.buildSharedCacheChangeListener(); - this.sharedCacheHolder.addPropertyChangeListener(PropertyValueModel.VALUE, this.sharedCacheListener); - this.sharedCacheEvent = null; - - this.cacheTypeDefaultHolder = this.buildCacheTypeDefaultAA(this.cachingHolder); - this.cacheTypeDefaultListener = this.buildCacheTypeDefaultChangeListener(); - this.cacheTypeDefaultHolder.addPropertyChangeListener(PropertyValueModel.VALUE, this.cacheTypeDefaultListener); - this.cacheTypeDefaultEvent = null; - - this.sharedCacheDefaultHolder = this.buildSharedCacheDefaultAA(this.cachingHolder); - this.sharedCacheDefaultListener = this.buildSharedCacheDefaultChangeListener(); - this.sharedCacheDefaultHolder.addPropertyChangeListener(PropertyValueModel.VALUE, this.sharedCacheDefaultListener); - this.sharedCacheDefaultEvent = null; - } - - public void testHasListeners() { - AbstractModel subjectCaching = (AbstractModel) this.caching; // Subject - PropertyAspectAdapter<Caching, CacheType> cacheTypeAA = - (PropertyAspectAdapter<Caching, CacheType>) this.cacheTypeHolder; - assertTrue(cacheTypeAA.hasAnyPropertyChangeListeners(PropertyValueModel.VALUE)); - assertTrue(subjectCaching.hasAnyPropertyChangeListeners(Caching.CACHE_TYPE_PROPERTY)); - - cacheTypeAA.removePropertyChangeListener(PropertyValueModel.VALUE, this.cacheTypeListener); - assertFalse(subjectCaching.hasAnyPropertyChangeListeners(Caching.CACHE_TYPE_PROPERTY)); - assertFalse(cacheTypeAA.hasAnyPropertyChangeListeners(PropertyValueModel.VALUE)); - - PropertyAspectAdapter<Caching, Boolean> sharedCacheAA = - (PropertyAspectAdapter<Caching, Boolean>) this.sharedCacheHolder; - assertTrue(sharedCacheAA.hasAnyPropertyChangeListeners(PropertyValueModel.VALUE)); - assertTrue(subjectCaching.hasAnyPropertyChangeListeners(Caching.SHARED_CACHE_PROPERTY)); - - sharedCacheAA.removePropertyChangeListener(PropertyValueModel.VALUE, this.sharedCacheListener); - assertFalse(subjectCaching.hasAnyPropertyChangeListeners(Caching.SHARED_CACHE_PROPERTY)); - assertFalse(sharedCacheAA.hasAnyPropertyChangeListeners(PropertyValueModel.VALUE)); - - PropertyAspectAdapter<Caching, CacheType> cacheTypeDefaultAA = - (PropertyAspectAdapter<Caching, CacheType>) this.cacheTypeDefaultHolder; - assertTrue(cacheTypeDefaultAA.hasAnyPropertyChangeListeners(PropertyValueModel.VALUE)); - assertTrue(subjectCaching.hasAnyPropertyChangeListeners(Caching.CACHE_TYPE_DEFAULT_PROPERTY)); - - cacheTypeDefaultAA.removePropertyChangeListener(PropertyValueModel.VALUE, this.cacheTypeDefaultListener); - assertFalse(subjectCaching.hasAnyPropertyChangeListeners(Caching.CACHE_TYPE_DEFAULT_PROPERTY)); - assertFalse(cacheTypeDefaultAA.hasAnyPropertyChangeListeners(PropertyValueModel.VALUE)); - - PropertyAspectAdapter<Caching, Boolean> sharedCacheDefaultAA = - (PropertyAspectAdapter<Caching, Boolean>) this.sharedCacheDefaultHolder; - assertTrue(sharedCacheDefaultAA.hasAnyPropertyChangeListeners(PropertyValueModel.VALUE)); - assertTrue(subjectCaching.hasAnyPropertyChangeListeners(Caching.SHARED_CACHE_DEFAULT_PROPERTY)); - - sharedCacheDefaultAA.removePropertyChangeListener(PropertyValueModel.VALUE, this.sharedCacheDefaultListener); - assertFalse(subjectCaching.hasAnyPropertyChangeListeners(Caching.SHARED_CACHE_DEFAULT_PROPERTY)); - assertFalse(sharedCacheDefaultAA.hasAnyPropertyChangeListeners(PropertyValueModel.VALUE)); - } - - /** - * Initializes directly the PU properties before testing. - */ - @Override - protected void populatePu() { - this.persistenceUnitSetProperty( - Caching.ECLIPSELINK_CACHE_TYPE + ENTITY_NAME_TEST_VALUE, - CACHE_TYPE_TEST_VALUE); - this.persistenceUnitSetProperty( - Caching.ECLIPSELINK_SHARED_CACHE + ENTITY_NAME_TEST_VALUE, - SHARED_CACHE_TEST_VALUE); - this.persistenceUnitSetProperty( - Caching.ECLIPSELINK_CACHE_TYPE_DEFAULT, - CACHE_TYPE_DEFAULT_TEST_VALUE); - this.persistenceUnitSetProperty( - Caching.ECLIPSELINK_CACHE_SHARED_DEFAULT, - SHARED_CACHE_DEFAULT_TEST_VALUE); - return; - } - - @Override - protected PersistenceUnitProperties getModel() { - return this.caching; - } - - /** ****** CacheType ******* */ - private WritablePropertyValueModel<CacheType> buildCacheTypeAA(PropertyValueModel<Caching> subjectHolder) { - return new PropertyAspectAdapter<Caching, CacheType>(subjectHolder, Caching.CACHE_TYPE_PROPERTY) { - @Override - protected CacheType buildValue_() { - return this.subject.getCacheTypeOf(ENTITY_NAME_TEST_VALUE); - } - - @Override - protected void setValue_(CacheType enumValue) { - this.subject.setCacheTypeOf(ENTITY_NAME_TEST_VALUE, enumValue); - } - }; - } - - private PropertyChangeListener buildCacheTypeChangeListener() { - return new PropertyChangeListener() { - public void propertyChanged(PropertyChangeEvent e) { - CachingValueModelTests.this.cacheTypeEvent = e; - } - }; - } - - /** ****** SharedCache ******* */ - private WritablePropertyValueModel<Boolean> buildSharedCacheAA(PropertyValueModel<Caching> subjectHolder) { - return new PropertyAspectAdapter<Caching, Boolean>(subjectHolder, Caching.SHARED_CACHE_PROPERTY) { - @Override - protected Boolean buildValue_() { - return this.subject.getSharedCacheOf(ENTITY_NAME_TEST_VALUE); - } - - @Override - protected void setValue_(Boolean enumValue) { - this.subject.setSharedCacheOf(ENTITY_NAME_TEST_VALUE, enumValue); - } - }; - } - - private PropertyChangeListener buildSharedCacheChangeListener() { - return new PropertyChangeListener() { - public void propertyChanged(PropertyChangeEvent e) { - CachingValueModelTests.this.sharedCacheEvent = e; - } - }; - } - - /** ****** CacheTypeDefault ******* */ - private WritablePropertyValueModel<CacheType> buildCacheTypeDefaultAA(PropertyValueModel<Caching> subjectHolder) { - return new PropertyAspectAdapter<Caching, CacheType>(subjectHolder, Caching.CACHE_TYPE_DEFAULT_PROPERTY) { - @Override - protected CacheType buildValue_() { - return this.subject.getCacheTypeDefault(); - } - - @Override - protected void setValue_(CacheType enumValue) { - this.subject.setCacheTypeDefault(enumValue); - } - }; - } - - private PropertyChangeListener buildCacheTypeDefaultChangeListener() { - return new PropertyChangeListener() { - public void propertyChanged(PropertyChangeEvent e) { - CachingValueModelTests.this.cacheTypeDefaultEvent = e; - } - }; - } - - /** ****** SharedCacheDefault ******* */ - private WritablePropertyValueModel<Boolean> buildSharedCacheDefaultAA(PropertyValueModel<Caching> subjectHolder) { - return new PropertyAspectAdapter<Caching, Boolean>(subjectHolder, Caching.SHARED_CACHE_DEFAULT_PROPERTY) { - @Override - protected Boolean buildValue_() { - return this.subject.getSharedCacheDefault(); - } - - @Override - protected void setValue_(Boolean enumValue) { - this.subject.setSharedCacheDefault(enumValue); - } - }; - } - - private PropertyChangeListener buildSharedCacheDefaultChangeListener() { - return new PropertyChangeListener() { - public void propertyChanged(PropertyChangeEvent e) { - CachingValueModelTests.this.sharedCacheDefaultEvent = e; - } - }; - } - - /** ****** Basic Entity's Properties Tests ******* */ - - public void testClone() { - Entity entity = this.buildEntity("TestEntity", CacheType.full, 100, true); - - this.verifyClone(entity, entity.clone()); - } - - public void testEquals() { - Entity entity1 = this.buildEntity("TestEntityA", CacheType.full, 100, true); - Entity entity2 = this.buildEntity("TestEntityB", CacheType.full, 100, true); - assertEquals(entity1, entity2); - Entity entity3 = this.buildEntity("TestEntityC", CacheType.full, 100, true); - assertEquals(entity1, entity3); - assertEquals(entity2, entity3); - } - - public void testIsEmpty() { - Entity entity = this.buildEntity("TestEntity"); - assertTrue(entity.isEmpty()); - this.caching.setCacheSizeOf(entity.getName(), 100); - assertFalse(entity.isEmpty()); - } - - private void verifyClone(Entity original, Entity clone) { - assertNotSame(original, clone); - assertEquals(original, original); - assertEquals(original, clone); - } - - private Entity buildEntity(String name) { - return this.caching.addEntity(name); - } - - private Entity buildEntity(String name, CacheType cacheType, Integer size, Boolean isShared) { - Entity entity = this.caching.addEntity(name); - this.caching.setCacheTypeOf(entity.getName(), cacheType); - this.caching.setCacheSizeOf(entity.getName(), size); - this.caching.setSharedCacheOf(entity.getName(), isShared); - return entity; - } - - /** ****** Caching Tests ******* */ - public void testValue() { - /** ****** CacheType - defaults for entity level caching are equal to the persistence unit settings ******* */ - this.verifyCacheTypeAAValue(CACHE_TYPE_TEST_VALUE); - assertEquals(this.caching.getCacheTypeDefault(), this.caching.getDefaultCacheType()); - /** ****** SharedCache - defaults for entity level caching are equal to the persistence unit settings ******* */ - this.verifySharedCacheAAValue(SHARED_CACHE_TEST_VALUE); - assertEquals(this.caching.getSharedCacheDefault(), this.caching.getDefaultSharedCache()); - /** ****** CacheTypeDefault ******* */ - this.verifyCacheTypeDefaultAAValue(CACHE_TYPE_DEFAULT_TEST_VALUE); - assertEquals(Caching.DEFAULT_CACHE_TYPE_DEFAULT, this.caching.getDefaultCacheTypeDefault()); - /** ****** SharedCacheDefault ******* */ - this.verifySharedCacheDefaultAAValue(SHARED_CACHE_DEFAULT_TEST_VALUE); - assertEquals(Caching.DEFAULT_SHARED_CACHE_DEFAULT, this.caching.getDefaultSharedCacheDefault()); - } - - public void testSetValue() throws Exception { - /** ****** CacheType ******* */ - this.cacheTypeEvent = null; - this.verifyHasListeners(this.cacheTypeHolder, PropertyValueModel.VALUE); - CacheType newCacheType = CacheType.full; - // Modify the property holder - this.cacheTypeHolder.setValue(newCacheType); - this.verifyCacheTypeAAValue(newCacheType); - assertNotNull(this.cacheTypeEvent); - /** ****** SharedCache ******* */ - this.sharedCacheEvent = null; - this.verifyHasListeners(this.sharedCacheHolder, PropertyValueModel.VALUE); - Boolean newSharedCache = !SHARED_CACHE_TEST_VALUE; - // Modify the property holder - this.sharedCacheHolder.setValue(newSharedCache); - this.verifySharedCacheAAValue(newSharedCache); - assertNotNull(this.sharedCacheEvent); - /** ****** CacheTypeDefault ******* */ - this.cacheTypeDefaultEvent = null; - this.verifyHasListeners(this.cacheTypeDefaultHolder, PropertyValueModel.VALUE); - CacheType newCacheTypeDefault = CacheType.none; - // Modify the property holder - this.cacheTypeDefaultHolder.setValue(newCacheTypeDefault); - this.verifyCacheTypeDefaultAAValue(newCacheTypeDefault); - assertNotNull(this.cacheTypeDefaultEvent); - /** ****** SharedCacheDefault ******* */ - this.sharedCacheDefaultEvent = null; - this.verifyHasListeners(this.sharedCacheDefaultHolder, PropertyValueModel.VALUE); - Boolean newSharedCacheDefault = !SHARED_CACHE_DEFAULT_TEST_VALUE; - // Modify the property holder - this.sharedCacheDefaultHolder.setValue(newSharedCacheDefault); - this.verifySharedCacheDefaultAAValue(newSharedCacheDefault); - assertNotNull(this.sharedCacheDefaultEvent); - } - - public void testSetNullValue() { - String notDeleted = "Property not deleted"; - /** ****** CacheType ******* */ - this.cacheTypeEvent = null; - // Setting the property holder - this.cacheTypeHolder.setValue(null); - // testing Holder - this.verifyCacheTypeAAValue(null); - assertNotNull(this.cacheTypeEvent); - // testing PU properties - this.verifyPuHasNotProperty(Caching.ECLIPSELINK_CACHE_TYPE + ENTITY_NAME_TEST_VALUE, notDeleted); - /** ****** SharedCache ******* */ - this.sharedCacheEvent = null; - // Setting the property holder - this.sharedCacheHolder.setValue(null); - // testing Holder - this.verifySharedCacheAAValue(null); - assertNotNull(this.sharedCacheEvent); - // testing PU properties - this.verifyPuHasNotProperty(Caching.ECLIPSELINK_SHARED_CACHE + ENTITY_NAME_TEST_VALUE, notDeleted); - /** ****** CacheTypeDefault ******* */ - this.cacheTypeDefaultEvent = null; - // Setting the property holder - this.cacheTypeDefaultHolder.setValue(null); - // testing Holder - this.verifyCacheTypeDefaultAAValue(null); - assertNotNull(this.cacheTypeDefaultEvent); - // testing PU properties - this.verifyPuHasNotProperty(Caching.ECLIPSELINK_CACHE_TYPE_DEFAULT, notDeleted); - /** ****** SharedCacheDefault ******* */ - this.sharedCacheDefaultEvent = null; - // Setting the property holder - this.sharedCacheDefaultHolder.setValue(null); - // testing Holder - this.verifySharedCacheDefaultAAValue(null); - assertNotNull(this.sharedCacheDefaultEvent); - // testing PU properties - this.verifyPuHasNotProperty(Caching.ECLIPSELINK_CACHE_SHARED_DEFAULT, notDeleted); - } - - /** ****** convenience methods ******* */ - /** - * Performs three value tests:<br> - * 1. subject value<br> - * 2. aspect adapter value<br> - * 3. persistenceUnit property value<br> - */ - protected void verifyCacheTypeAAValue(CacheType testValue) { - this.verifyAAValue( - testValue, - this.caching.getCacheTypeOf(ENTITY_NAME_TEST_VALUE), - this.cacheTypeHolder, - Caching.ECLIPSELINK_CACHE_TYPE + ENTITY_NAME_TEST_VALUE); - } - - /** - * Performs three value tests:<br> - * 1. subject value<br> - * 2. aspect adapter value<br> - * 3. persistenceUnit property value<br> - */ - protected void verifySharedCacheAAValue(Boolean testValue) { - this.verifyAAValue( - testValue, - this.caching.getSharedCacheOf(ENTITY_NAME_TEST_VALUE), - this.sharedCacheHolder, - Caching.ECLIPSELINK_SHARED_CACHE + ENTITY_NAME_TEST_VALUE); - } - - /** - * Performs three value tests:<br> - * 1. subject value<br> - * 2. aspect adapter value<br> - * 3. persistenceUnit property value<br> - */ - protected void verifyCacheTypeDefaultAAValue(CacheType testValue) { - this.verifyAAValue( - testValue, - this.caching.getCacheTypeDefault(), - this.cacheTypeDefaultHolder, - Caching.ECLIPSELINK_CACHE_TYPE_DEFAULT); - } - - /** - * Performs three value tests:<br> - * 1. subject value<br> - * 2. aspect adapter value<br> - * 3. persistenceUnit property value<br> - */ - protected void verifySharedCacheDefaultAAValue(Boolean testValue) { - this.verifyAAValue( - testValue, - this.caching.getSharedCacheDefault(), - this.sharedCacheDefaultHolder, - Caching.ECLIPSELINK_CACHE_SHARED_DEFAULT); - } - - - // ********** get/set property ********** - @Override - protected void setProperty(String propertyName, Object newValue) throws Exception { - throw new UnsupportedOperationException(); - } - - @Override - protected Object getProperty(String propertyName) throws NoSuchFieldException { - throw new UnsupportedOperationException(); - } -} diff --git a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/caching/JptEclipseLinkPersistenceCachingTests.java b/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/caching/JptEclipseLinkPersistenceCachingTests.java deleted file mode 100644 index fd24717c89..0000000000 --- a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/caching/JptEclipseLinkPersistenceCachingTests.java +++ /dev/null @@ -1,33 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2008 Oracle. 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: - * Oracle - initial API and implementation - ******************************************************************************/ -package org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.caching; - -import junit.framework.Test; -import junit.framework.TestSuite; - -/** - * decentralize test creation code - */ -public class JptEclipseLinkPersistenceCachingTests -{ - public static Test suite() { - TestSuite suite = new TestSuite(JptEclipseLinkPersistenceCachingTests.class.getPackage().getName()); - - suite.addTestSuite(CachingValueModelTests.class); - suite.addTestSuite(CachingAdapterTests.class); - - return suite; - } - - private JptEclipseLinkPersistenceCachingTests() { - super(); - throw new UnsupportedOperationException(); - } -} diff --git a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/connection/EclipseLinkConnectionTests.java b/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/connection/EclipseLinkConnectionTests.java deleted file mode 100644 index bf955c54ab..0000000000 --- a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/connection/EclipseLinkConnectionTests.java +++ /dev/null @@ -1,542 +0,0 @@ -/******************************************************************************* -* Copyright (c) 2008, 2010 Oracle. 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: -* Oracle - initial API and implementation -*******************************************************************************/ -package org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.connection; - -import org.eclipse.jpt.common.utility.model.listener.PropertyChangeListener; -import org.eclipse.jpt.jpa.core.context.persistence.PersistenceUnitProperties; -import org.eclipse.jpt.jpa.core.context.persistence.PersistenceUnitTransactionType; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.connection.BatchWriting; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.connection.Connection; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.connection.ExclusiveConnectionMode; -import org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.EclipseLinkPersistenceUnitTestCase; - -/** - * ConnectionAdapterTests - */ -@SuppressWarnings("nls") -public class EclipseLinkConnectionTests extends EclipseLinkPersistenceUnitTestCase -{ - private Connection connection; - - public static final PersistenceUnitTransactionType TRANSACTION_TYPE_TEST_VALUE = PersistenceUnitTransactionType.RESOURCE_LOCAL; - public static final PersistenceUnitTransactionType TRANSACTION_TYPE_TEST_VALUE_2 = PersistenceUnitTransactionType.JTA; - - public static final String JTA_DATA_SOURCE_TEST_VALUE = "Test_JTA"; - public static final String JTA_DATA_SOURCE_TEST_VALUE_2 = "Test_JTA_2"; - - public static final String NON_JTA_DATA_SOURCE_TEST_VALUE = "Test_Non_JTA"; - public static final String NON_JTA_DATA_SOURCE_TEST_VALUE_2 = "Test_Non_JTA_2"; - - public static final String NATIVE_SQL_KEY = Connection.ECLIPSELINK_NATIVE_SQL; - public static final Boolean NATIVE_SQL_TEST_VALUE = false; - public static final Boolean NATIVE_SQL_TEST_VALUE_2 = ! NATIVE_SQL_TEST_VALUE; - - public static final String BATCH_WRITING_KEY = Connection.ECLIPSELINK_BATCH_WRITING; - public static final BatchWriting BATCH_WRITING_TEST_VALUE = BatchWriting.oracle_jdbc; - public static final BatchWriting BATCH_WRITING_TEST_VALUE_2 = BatchWriting.buffered; - - public static final String CACHE_STATEMENTS_KEY = Connection.ECLIPSELINK_CACHE_STATEMENTS; - public static final Boolean CACHE_STATEMENTS_TEST_VALUE = false; - public static final Boolean CACHE_STATEMENTS_TEST_VALUE_2 = ! CACHE_STATEMENTS_TEST_VALUE; - - public static final String CACHE_STATEMENTS_SIZE_KEY = Connection.ECLIPSELINK_CACHE_STATEMENTS_SIZE; - public static final Integer CACHE_STATEMENTS_SIZE_TEST_VALUE = 100; - public static final Integer CACHE_STATEMENTS_SIZE_TEST_VALUE_2 = 200; - - public static final String DRIVER_KEY = Connection.ECLIPSELINK_DRIVER; - public static final String DRIVER_TEST_VALUE = "connection.driver"; - public static final String DRIVER_TEST_VALUE_2 = "connection.driver.2"; - - public static final String URL_KEY = Connection.ECLIPSELINK_URL; - public static final String URL_TEST_VALUE = "test"; - public static final String URL_TEST_VALUE_2 = "test_2"; - - public static final String USER_KEY = Connection.ECLIPSELINK_USER; - public static final String USER_TEST_VALUE = "test"; - public static final String USER_TEST_VALUE_2 = "test_2"; - - public static final String PASSWORD_KEY = Connection.ECLIPSELINK_PASSWORD; - public static final String PASSWORD_TEST_VALUE = "test"; - public static final String PASSWORD_TEST_VALUE_2 = "test_2"; - - public static final String BIND_PARAMETERS_KEY = Connection.ECLIPSELINK_BIND_PARAMETERS; - public static final Boolean BIND_PARAMETERS_TEST_VALUE = false; - public static final Boolean BIND_PARAMETERS_TEST_VALUE_2 = ! BIND_PARAMETERS_TEST_VALUE; - - public static final String READ_CONNECTIONS_SHARED_KEY = Connection.ECLIPSELINK_READ_CONNECTIONS_SHARED; - public static final Boolean READ_CONNECTIONS_SHARED_TEST_VALUE = false; - public static final Boolean READ_CONNECTIONS_SHARED_TEST_VALUE_2 = ! READ_CONNECTIONS_SHARED_TEST_VALUE; - - public static final String READ_CONNECTIONS_MIN_KEY = Connection.ECLIPSELINK_READ_CONNECTIONS_MIN; - public static final Integer READ_CONNECTIONS_MIN_TEST_VALUE = 100; - public static final Integer READ_CONNECTIONS_MIN_TEST_VALUE_2 = 200; - - public static final String READ_CONNECTIONS_MAX_KEY = Connection.ECLIPSELINK_READ_CONNECTIONS_MAX; - public static final Integer READ_CONNECTIONS_MAX_TEST_VALUE = 100; - public static final Integer READ_CONNECTIONS_MAX_TEST_VALUE_2 = 200; - - public static final String WRITE_CONNECTIONS_MIN_KEY = Connection.ECLIPSELINK_WRITE_CONNECTIONS_MIN; - public static final Integer WRITE_CONNECTIONS_MIN_TEST_VALUE = 100; - public static final Integer WRITE_CONNECTIONS_MIN_TEST_VALUE_2 = 200; - - public static final String WRITE_CONNECTIONS_MAX_KEY = Connection.ECLIPSELINK_WRITE_CONNECTIONS_MAX; - public static final Integer WRITE_CONNECTIONS_MAX_TEST_VALUE = 100; - public static final Integer WRITE_CONNECTIONS_MAX_TEST_VALUE_2 = 200; - - public static final String EXCLUSIVE_CONNECTION_MODE_KEY = Connection.ECLIPSELINK_EXCLUSIVE_CONNECTION_MODE; - public static final ExclusiveConnectionMode EXCLUSIVE_CONNECTION_MODE_TEST_VALUE = ExclusiveConnectionMode.always; - public static final ExclusiveConnectionMode EXCLUSIVE_CONNECTION_MODE_TEST_VALUE_2 = ExclusiveConnectionMode.isolated; - - public static final String LAZY_CONNECTION_KEY = Connection.ECLIPSELINK_LAZY_CONNECTION; - public static final Boolean LAZY_CONNECTION_TEST_VALUE = false; - public static final Boolean LAZY_CONNECTION_TEST_VALUE_2 = ! LAZY_CONNECTION_TEST_VALUE; - - // ********** constructors ********** - public EclipseLinkConnectionTests(String name) { - super(name); - } - - // ********** behavior ********** - @Override - protected void setUp() throws Exception { - super.setUp(); - this.connection = this.subject.getConnection(); - PropertyChangeListener propertyChangeListener = this.buildPropertyChangeListener(); - - this.connection.addPropertyChangeListener(Connection.NATIVE_SQL_PROPERTY, propertyChangeListener); - this.connection.addPropertyChangeListener(Connection.BATCH_WRITING_PROPERTY, propertyChangeListener); - this.connection.addPropertyChangeListener(Connection.CACHE_STATEMENTS_PROPERTY, propertyChangeListener); - this.connection.addPropertyChangeListener(Connection.CACHE_STATEMENTS_SIZE_PROPERTY, propertyChangeListener); - this.connection.addPropertyChangeListener(Connection.DRIVER_PROPERTY, propertyChangeListener); - this.connection.addPropertyChangeListener(Connection.URL_PROPERTY, propertyChangeListener); - this.connection.addPropertyChangeListener(Connection.USER_PROPERTY, propertyChangeListener); - this.connection.addPropertyChangeListener(Connection.PASSWORD_PROPERTY, propertyChangeListener); - this.connection.addPropertyChangeListener(Connection.BIND_PARAMETERS_PROPERTY, propertyChangeListener); - this.connection.addPropertyChangeListener(Connection.READ_CONNECTIONS_SHARED_PROPERTY, propertyChangeListener); - this.connection.addPropertyChangeListener(Connection.READ_CONNECTIONS_MIN_PROPERTY, propertyChangeListener); - this.connection.addPropertyChangeListener(Connection.READ_CONNECTIONS_MAX_PROPERTY, propertyChangeListener); - this.connection.addPropertyChangeListener(Connection.WRITE_CONNECTIONS_MIN_PROPERTY, propertyChangeListener); - this.connection.addPropertyChangeListener(Connection.WRITE_CONNECTIONS_MAX_PROPERTY, propertyChangeListener); - this.connection.addPropertyChangeListener(Connection.EXCLUSIVE_CONNECTION_MODE_PROPERTY, propertyChangeListener); - this.connection.addPropertyChangeListener(Connection.LAZY_CONNECTION_PROPERTY, propertyChangeListener); - - this.clearEvent(); - } - - /** - * Initializes directly the PU properties before testing. - */ - @Override - protected void populatePu() { - this.modelPropertiesSizeOriginal = 16; // EclipseLink properties - this.propertiesTotal = this.modelPropertiesSizeOriginal + 4; // 4 misc properties - this.modelPropertiesSize = this.modelPropertiesSizeOriginal; - - // Initializes EclipseLink properties - this.persistenceUnitSetProperty("misc.property.1", "value.1"); - this.persistenceUnitSetProperty(NATIVE_SQL_KEY, NATIVE_SQL_TEST_VALUE.toString()); - this.persistenceUnitSetProperty(BATCH_WRITING_KEY, BATCH_WRITING_TEST_VALUE); - this.persistenceUnitSetProperty(CACHE_STATEMENTS_KEY, CACHE_STATEMENTS_TEST_VALUE.toString()); - this.persistenceUnitSetProperty(CACHE_STATEMENTS_SIZE_KEY, CACHE_STATEMENTS_SIZE_TEST_VALUE.toString()); - this.persistenceUnitSetProperty(DRIVER_KEY, DRIVER_TEST_VALUE.toString()); - this.persistenceUnitSetProperty(URL_KEY, URL_TEST_VALUE.toString()); - this.persistenceUnitSetProperty(USER_KEY, USER_TEST_VALUE.toString()); - this.persistenceUnitSetProperty(PASSWORD_KEY, PASSWORD_TEST_VALUE.toString()); - this.persistenceUnitSetProperty(BIND_PARAMETERS_KEY, BIND_PARAMETERS_TEST_VALUE.toString()); - this.persistenceUnitSetProperty("misc.property.2", "value.2"); - this.persistenceUnitSetProperty("misc.property.3", "value.3"); - this.persistenceUnitSetProperty(READ_CONNECTIONS_SHARED_KEY, READ_CONNECTIONS_SHARED_TEST_VALUE.toString()); - this.persistenceUnitSetProperty(READ_CONNECTIONS_MIN_KEY, READ_CONNECTIONS_MIN_TEST_VALUE.toString()); - this.persistenceUnitSetProperty(READ_CONNECTIONS_MAX_KEY, READ_CONNECTIONS_MAX_TEST_VALUE.toString()); - this.persistenceUnitSetProperty(WRITE_CONNECTIONS_MIN_KEY, WRITE_CONNECTIONS_MIN_TEST_VALUE.toString()); - this.persistenceUnitSetProperty(WRITE_CONNECTIONS_MAX_KEY, WRITE_CONNECTIONS_MAX_TEST_VALUE.toString()); - this.persistenceUnitSetProperty("misc.property.4", "value.4"); - this.persistenceUnitSetProperty(EXCLUSIVE_CONNECTION_MODE_KEY, EXCLUSIVE_CONNECTION_MODE_TEST_VALUE); - this.persistenceUnitSetProperty(LAZY_CONNECTION_KEY, LAZY_CONNECTION_TEST_VALUE.toString()); - - // Initializes PU elements - this.getPersistenceUnit().setSpecifiedTransactionType(TRANSACTION_TYPE_TEST_VALUE); - this.getPersistenceUnit().setJtaDataSource(JTA_DATA_SOURCE_TEST_VALUE); - this.getPersistenceUnit().setNonJtaDataSource(NON_JTA_DATA_SOURCE_TEST_VALUE); - return; - } - - @Override - protected PersistenceUnitProperties getModel() { - return this.connection; - } - - // ********** get/set property ********** - @Override - protected void setProperty(String propertyName, Object newValue) throws Exception { - if (propertyName.equals(Connection.NATIVE_SQL_PROPERTY)) - this.connection.setNativeSql((Boolean) newValue); - else if (propertyName.equals(Connection.BATCH_WRITING_PROPERTY)) - this.connection.setBatchWriting((BatchWriting) newValue); - else if (propertyName.equals(Connection.CACHE_STATEMENTS_PROPERTY)) - this.connection.setCacheStatements((Boolean) newValue); - else if (propertyName.equals(Connection.CACHE_STATEMENTS_SIZE_PROPERTY)) - this.connection.setCacheStatementsSize((Integer) newValue); - else if (propertyName.equals(Connection.DRIVER_PROPERTY)) - this.connection.setDriver((String) newValue); - else if (propertyName.equals(Connection.URL_PROPERTY)) - this.connection.setUrl((String) newValue); - else if (propertyName.equals(Connection.USER_PROPERTY)) - this.connection.setUser((String) newValue); - else if (propertyName.equals(Connection.PASSWORD_PROPERTY)) - this.connection.setPassword((String) newValue); - else if (propertyName.equals(Connection.BIND_PARAMETERS_PROPERTY)) - this.connection.setBindParameters((Boolean) newValue); - else if (propertyName.equals(Connection.READ_CONNECTIONS_SHARED_PROPERTY)) - this.connection.setReadConnectionsShared((Boolean) newValue); - else if (propertyName.equals(Connection.READ_CONNECTIONS_MIN_PROPERTY)) - this.connection.setReadConnectionsMin((Integer) newValue); - else if (propertyName.equals(Connection.READ_CONNECTIONS_MAX_PROPERTY)) - this.connection.setReadConnectionsMax((Integer) newValue); - else if (propertyName.equals(Connection.WRITE_CONNECTIONS_MIN_PROPERTY)) - this.connection.setWriteConnectionsMin((Integer) newValue); - else if (propertyName.equals(Connection.WRITE_CONNECTIONS_MAX_PROPERTY)) - this.connection.setWriteConnectionsMax((Integer) newValue); - else if (propertyName.equals(Connection.EXCLUSIVE_CONNECTION_MODE_PROPERTY)) - this.connection.setExclusiveConnectionMode((ExclusiveConnectionMode) newValue); - else if (propertyName.equals(Connection.LAZY_CONNECTION_PROPERTY)) - this.connection.setLazyConnection((Boolean) newValue); - else - this.throwMissingDefinition("setProperty", propertyName); - } - - @Override - protected Object getProperty(String propertyName) throws NoSuchFieldException { - Object modelValue = null; - if (propertyName.equals(Connection.NATIVE_SQL_PROPERTY)) - modelValue = this.connection.getNativeSql(); - else if (propertyName.equals(Connection.BATCH_WRITING_PROPERTY)) - modelValue = this.connection.getBatchWriting(); - else if (propertyName.equals(Connection.CACHE_STATEMENTS_PROPERTY)) - modelValue = this.connection.getCacheStatements(); - else if (propertyName.equals(Connection.CACHE_STATEMENTS_SIZE_PROPERTY)) - modelValue = this.connection.getCacheStatementsSize(); - else if (propertyName.equals(Connection.DRIVER_PROPERTY)) - modelValue = this.connection.getDriver(); - else if (propertyName.equals(Connection.URL_PROPERTY)) - modelValue = this.connection.getUrl(); - else if (propertyName.equals(Connection.USER_PROPERTY)) - modelValue = this.connection.getUser(); - else if (propertyName.equals(Connection.PASSWORD_PROPERTY)) - modelValue = this.connection.getPassword(); - else if (propertyName.equals(Connection.BIND_PARAMETERS_PROPERTY)) - modelValue = this.connection.getBindParameters(); - else if (propertyName.equals(Connection.READ_CONNECTIONS_SHARED_PROPERTY)) - modelValue = this.connection.getReadConnectionsShared(); - else if (propertyName.equals(Connection.READ_CONNECTIONS_MIN_PROPERTY)) - modelValue = this.connection.getReadConnectionsMin(); - else if (propertyName.equals(Connection.READ_CONNECTIONS_MAX_PROPERTY)) - modelValue = this.connection.getReadConnectionsMax(); - else if (propertyName.equals(Connection.WRITE_CONNECTIONS_MIN_PROPERTY)) - modelValue = this.connection.getWriteConnectionsMin(); - else if (propertyName.equals(Connection.WRITE_CONNECTIONS_MAX_PROPERTY)) - modelValue = this.connection.getWriteConnectionsMax(); - else if (propertyName.equals(Connection.EXCLUSIVE_CONNECTION_MODE_PROPERTY)) - modelValue = this.connection.getExclusiveConnectionMode(); - else if (propertyName.equals(Connection.LAZY_CONNECTION_PROPERTY)) - modelValue = this.connection.getLazyConnection(); - else - this.throwMissingDefinition("getProperty", propertyName); - return modelValue; - } - - // ********** NativeSql tests ********** - public void testSetNativeSql() throws Exception { - this.verifyModelInitialized( - NATIVE_SQL_KEY, - NATIVE_SQL_TEST_VALUE); - this.verifySetProperty( - NATIVE_SQL_KEY, - NATIVE_SQL_TEST_VALUE, - NATIVE_SQL_TEST_VALUE_2); - } - - public void testAddRemoveNativeSql() throws Exception { - this.verifyAddRemoveProperty( - NATIVE_SQL_KEY, - NATIVE_SQL_TEST_VALUE, - NATIVE_SQL_TEST_VALUE_2); - } - - // ********** BatchWriting tests ********** - public void testSetBatchWriting() throws Exception { - this.verifyModelInitialized( - BATCH_WRITING_KEY, - BATCH_WRITING_TEST_VALUE); - this.verifySetProperty( - BATCH_WRITING_KEY, - BATCH_WRITING_TEST_VALUE, - BATCH_WRITING_TEST_VALUE_2); - } - - public void testAddRemoveBatchWriting() throws Exception { - this.verifyAddRemoveProperty( - BATCH_WRITING_KEY, - BATCH_WRITING_TEST_VALUE, - BATCH_WRITING_TEST_VALUE_2); - } - - // ********** CacheStatements tests ********** - public void testSetCacheStatements() throws Exception { - this.verifyModelInitialized( - CACHE_STATEMENTS_KEY, - CACHE_STATEMENTS_TEST_VALUE); - this.verifySetProperty( - CACHE_STATEMENTS_KEY, - CACHE_STATEMENTS_TEST_VALUE, - CACHE_STATEMENTS_TEST_VALUE_2); - } - - public void testAddRemoveCacheStatements() throws Exception { - this.verifyAddRemoveProperty( - CACHE_STATEMENTS_KEY, - CACHE_STATEMENTS_TEST_VALUE, - CACHE_STATEMENTS_TEST_VALUE_2); - } - - // ********** CacheStatementsSize tests ********** - public void testSetCacheStatementsSize() throws Exception { - this.verifyModelInitialized( - CACHE_STATEMENTS_SIZE_KEY, - CACHE_STATEMENTS_SIZE_TEST_VALUE); - this.verifySetProperty( - CACHE_STATEMENTS_SIZE_KEY, - CACHE_STATEMENTS_SIZE_TEST_VALUE, - CACHE_STATEMENTS_SIZE_TEST_VALUE_2); - } - - public void testAddRemoveCacheStatementsSize() throws Exception { - this.verifyAddRemoveProperty( - CACHE_STATEMENTS_SIZE_KEY, - CACHE_STATEMENTS_SIZE_TEST_VALUE, - CACHE_STATEMENTS_SIZE_TEST_VALUE_2); - } - - // ********** Driver tests ********** - public void testSetDriver() throws Exception { - this.verifyModelInitialized( - DRIVER_KEY, - DRIVER_TEST_VALUE); - this.verifySetProperty( - DRIVER_KEY, - DRIVER_TEST_VALUE, - DRIVER_TEST_VALUE_2); - } - - public void testAddRemoveDriver() throws Exception { - this.verifyAddRemoveProperty( - DRIVER_KEY, - DRIVER_TEST_VALUE, - DRIVER_TEST_VALUE_2); - } - - // ********** Url tests ********** - public void testSetUrl() throws Exception { - this.verifyModelInitialized( - URL_KEY, - URL_TEST_VALUE); - this.verifySetProperty( - URL_KEY, - URL_TEST_VALUE, - URL_TEST_VALUE_2); - } - - public void testAddRemoveUrl() throws Exception { - this.verifyAddRemoveProperty( - URL_KEY, - URL_TEST_VALUE, - URL_TEST_VALUE_2); - } - - // ********** User tests ********** - public void testSetUser() throws Exception { - this.verifyModelInitialized( - USER_KEY, - USER_TEST_VALUE); - this.verifySetProperty( - USER_KEY, - USER_TEST_VALUE, - USER_TEST_VALUE_2); - } - - public void testAddRemoveUser() throws Exception { - this.verifyAddRemoveProperty( - USER_KEY, - USER_TEST_VALUE, - USER_TEST_VALUE_2); - } - - // ********** Password tests ********** - public void testSetPassword() throws Exception { - this.verifyModelInitialized( - PASSWORD_KEY, - PASSWORD_TEST_VALUE); - this.verifySetProperty( - PASSWORD_KEY, - PASSWORD_TEST_VALUE, - PASSWORD_TEST_VALUE_2); - } - - public void testAddRemovePassword() throws Exception { - this.verifyAddRemoveProperty( - PASSWORD_KEY, - PASSWORD_TEST_VALUE, - PASSWORD_TEST_VALUE_2); - } - - // ********** BindParameters tests ********** - public void testSetBindParameters() throws Exception { - this.verifyModelInitialized( - BIND_PARAMETERS_KEY, - BIND_PARAMETERS_TEST_VALUE); - this.verifySetProperty( - BIND_PARAMETERS_KEY, - BIND_PARAMETERS_TEST_VALUE, - BIND_PARAMETERS_TEST_VALUE_2); - } - - public void testAddRemoveBindParameters() throws Exception { - this.verifyAddRemoveProperty( - BIND_PARAMETERS_KEY, - BIND_PARAMETERS_TEST_VALUE, - BIND_PARAMETERS_TEST_VALUE_2); - } - - // ********** ReadConnectionsShared tests ********** - public void testSetReadConnectionsShared() throws Exception { - this.verifyModelInitialized( - READ_CONNECTIONS_SHARED_KEY, - READ_CONNECTIONS_SHARED_TEST_VALUE); - this.verifySetProperty( - READ_CONNECTIONS_SHARED_KEY, - READ_CONNECTIONS_SHARED_TEST_VALUE, - READ_CONNECTIONS_SHARED_TEST_VALUE_2); - } - - public void testAddRemoveReadConnectionsShared() throws Exception { - this.verifyAddRemoveProperty( - READ_CONNECTIONS_SHARED_KEY, - READ_CONNECTIONS_SHARED_TEST_VALUE, - READ_CONNECTIONS_SHARED_TEST_VALUE_2); - } - - // ********** ReadConnectionsMin tests ********** - public void testSetReadConnectionsMin() throws Exception { - this.verifyModelInitialized( - READ_CONNECTIONS_MIN_KEY, - READ_CONNECTIONS_MIN_TEST_VALUE); - this.verifySetProperty( - READ_CONNECTIONS_MIN_KEY, - READ_CONNECTIONS_MIN_TEST_VALUE, - READ_CONNECTIONS_MIN_TEST_VALUE_2); - } - - public void testAddRemoveReadConnectionsMin() throws Exception { - this.verifyAddRemoveProperty( - READ_CONNECTIONS_MIN_KEY, - READ_CONNECTIONS_MIN_TEST_VALUE, - READ_CONNECTIONS_MIN_TEST_VALUE_2); - } - - // ********** ReadConnectionsMax tests ********** - public void testSetReadConnectionsMax() throws Exception { - this.verifyModelInitialized( - READ_CONNECTIONS_MAX_KEY, - READ_CONNECTIONS_MAX_TEST_VALUE); - this.verifySetProperty( - READ_CONNECTIONS_MAX_KEY, - READ_CONNECTIONS_MAX_TEST_VALUE, - READ_CONNECTIONS_MAX_TEST_VALUE_2); - } - - public void testAddRemoveReadConnectionsMax() throws Exception { - this.verifyAddRemoveProperty( - READ_CONNECTIONS_MAX_KEY, - READ_CONNECTIONS_MAX_TEST_VALUE, - READ_CONNECTIONS_MAX_TEST_VALUE_2); - } - - // ********** WriteConnectionsMin tests ********** - public void testSetWriteConnectionsMin() throws Exception { - this.verifyModelInitialized( - WRITE_CONNECTIONS_MIN_KEY, - WRITE_CONNECTIONS_MIN_TEST_VALUE); - this.verifySetProperty( - WRITE_CONNECTIONS_MIN_KEY, - WRITE_CONNECTIONS_MIN_TEST_VALUE, - WRITE_CONNECTIONS_MIN_TEST_VALUE_2); - } - - public void testAddRemoveWriteConnectionsMin() throws Exception { - this.verifyAddRemoveProperty( - WRITE_CONNECTIONS_MIN_KEY, - WRITE_CONNECTIONS_MIN_TEST_VALUE, - WRITE_CONNECTIONS_MIN_TEST_VALUE_2); - } - - // ********** WriteConnectionsMax tests ********** - public void testSetWriteConnectionsMax() throws Exception { - this.verifyModelInitialized( - WRITE_CONNECTIONS_MAX_KEY, - WRITE_CONNECTIONS_MAX_TEST_VALUE); - this.verifySetProperty( - WRITE_CONNECTIONS_MAX_KEY, - WRITE_CONNECTIONS_MAX_TEST_VALUE, - WRITE_CONNECTIONS_MAX_TEST_VALUE_2); - } - - public void testAddRemoveWriteConnectionsMax() throws Exception { - this.verifyAddRemoveProperty( - WRITE_CONNECTIONS_MAX_KEY, - WRITE_CONNECTIONS_MAX_TEST_VALUE, - WRITE_CONNECTIONS_MAX_TEST_VALUE_2); - } - - // ********** ExclusiveConnectionMode tests ********** - public void testSetExclusiveConnectionMode() throws Exception { - this.verifyModelInitialized( - EXCLUSIVE_CONNECTION_MODE_KEY, - EXCLUSIVE_CONNECTION_MODE_TEST_VALUE); - this.verifySetProperty( - EXCLUSIVE_CONNECTION_MODE_KEY, - EXCLUSIVE_CONNECTION_MODE_TEST_VALUE, - EXCLUSIVE_CONNECTION_MODE_TEST_VALUE_2); - } - - public void testAddRemoveExclusiveConnectionMode() throws Exception { - this.verifyAddRemoveProperty( - EXCLUSIVE_CONNECTION_MODE_KEY, - EXCLUSIVE_CONNECTION_MODE_TEST_VALUE, - EXCLUSIVE_CONNECTION_MODE_TEST_VALUE_2); - } - - // ********** LazyConnection tests ********** - public void testSetLazyConnection() throws Exception { - this.verifyModelInitialized( - LAZY_CONNECTION_KEY, - LAZY_CONNECTION_TEST_VALUE); - this.verifySetProperty( - LAZY_CONNECTION_KEY, - LAZY_CONNECTION_TEST_VALUE, - LAZY_CONNECTION_TEST_VALUE_2); - } - - public void testAddRemoveLazyConnection() throws Exception { - this.verifyAddRemoveProperty( - LAZY_CONNECTION_KEY, - LAZY_CONNECTION_TEST_VALUE, - LAZY_CONNECTION_TEST_VALUE_2); - } -} diff --git a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/connection/JptEclipseLinkPersistenceConnectionTests.java b/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/connection/JptEclipseLinkPersistenceConnectionTests.java deleted file mode 100644 index 84a595bfb1..0000000000 --- a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/connection/JptEclipseLinkPersistenceConnectionTests.java +++ /dev/null @@ -1,33 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2008, 2010 Oracle. 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: - * Oracle - initial API and implementation - ******************************************************************************/ -package org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.connection; - -import junit.framework.Test; -import junit.framework.TestSuite; - -/** - * decentralize test creation code - */ -public class JptEclipseLinkPersistenceConnectionTests -{ - public static Test suite() { - TestSuite suite = new TestSuite(JptEclipseLinkPersistenceConnectionTests.class.getPackage().getName()); - -// suite.addTestSuite(ConnectionValueModelTests.class); - suite.addTestSuite(EclipseLinkConnectionTests.class); - - return suite; - } - - private JptEclipseLinkPersistenceConnectionTests() { - super(); - throw new UnsupportedOperationException(); - } -} diff --git a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/customization/CustomizationValueModelTests.java b/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/customization/CustomizationValueModelTests.java deleted file mode 100644 index 4fefb11f86..0000000000 --- a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/customization/CustomizationValueModelTests.java +++ /dev/null @@ -1,205 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2008, 2011 Oracle. 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: - * Oracle - initial API and implementation - *******************************************************************************/ -package org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.customization; - -import org.eclipse.jpt.common.utility.internal.model.AbstractModel; -import org.eclipse.jpt.common.utility.internal.model.value.PropertyAspectAdapter; -import org.eclipse.jpt.common.utility.internal.model.value.SimplePropertyValueModel; -import org.eclipse.jpt.common.utility.model.event.PropertyChangeEvent; -import org.eclipse.jpt.common.utility.model.listener.PropertyChangeListener; -import org.eclipse.jpt.common.utility.model.value.PropertyValueModel; -import org.eclipse.jpt.common.utility.model.value.WritablePropertyValueModel; -import org.eclipse.jpt.jpa.core.context.persistence.PersistenceUnitProperties; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.customization.Customization; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.customization.Entity; -import org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.EclipseLinkPersistenceUnitTestCase; - -/** - * CustomizationValueModelTests - */ -@SuppressWarnings("nls") -public class CustomizationValueModelTests extends EclipseLinkPersistenceUnitTestCase -{ - private Customization customization; - - private WritablePropertyValueModel<Boolean> throwExceptionsHolder; - private PropertyChangeListener throwExceptionsListener; - private PropertyChangeEvent throwExceptionsEvent; - - public static final String ENTITY_NAME_TEST_VALUE = "Employee"; - public static final Boolean THROW_EXCEPTIONS_TEST_VALUE = Boolean.FALSE; - public static final String CUSTOMIZER_TEST_VALUE = "acme.sessions.Customizer"; - - public CustomizationValueModelTests(String name) { - super(name); - } - - @Override - protected void setUp() throws Exception { - super.setUp(); - this.customization = this.subject.getCustomization(); // Subject - PropertyValueModel<Customization> customizationHolder = new SimplePropertyValueModel<Customization>(this.customization); - - this.throwExceptionsHolder = this.buildThrowExceptionsAA(customizationHolder); - this.throwExceptionsListener = this.buildThrowExceptionsChangeListener(); - this.throwExceptionsHolder.addPropertyChangeListener(PropertyValueModel.VALUE, this.throwExceptionsListener); - this.throwExceptionsEvent = null; - } - - public void testHasListeners() { - AbstractModel subjectCustomization = (AbstractModel) this.customization; // Subject - - PropertyAspectAdapter<Customization, Boolean> throwExceptionsAA = - (PropertyAspectAdapter<Customization, Boolean>) this.throwExceptionsHolder; - assertTrue(throwExceptionsAA.hasAnyPropertyChangeListeners(PropertyValueModel.VALUE)); - assertTrue(subjectCustomization.hasAnyPropertyChangeListeners(Customization.THROW_EXCEPTIONS_PROPERTY)); - - throwExceptionsAA.removePropertyChangeListener(PropertyValueModel.VALUE, this.throwExceptionsListener); - assertFalse(subjectCustomization.hasAnyPropertyChangeListeners(Customization.THROW_EXCEPTIONS_PROPERTY)); - assertFalse(throwExceptionsAA.hasAnyPropertyChangeListeners(PropertyValueModel.VALUE)); - } - - /** - * Initializes directly the PU properties before testing. - */ - @Override - protected void populatePu() { - this.persistenceUnitSetProperty( - Customization.ECLIPSELINK_THROW_EXCEPTIONS, - THROW_EXCEPTIONS_TEST_VALUE); - return; - } - - @Override - protected PersistenceUnitProperties getModel() { - return this.customization; - } - - // ****** ThrowExceptions ******* - private WritablePropertyValueModel<Boolean> buildThrowExceptionsAA(PropertyValueModel<Customization> subjectHolder) { - return new PropertyAspectAdapter<Customization, Boolean>(subjectHolder, Customization.THROW_EXCEPTIONS_PROPERTY) { - @Override - protected Boolean buildValue_() { - return this.subject.getThrowExceptions(); - } - - @Override - protected void setValue_(Boolean enumValue) { - this.subject.setThrowExceptions(enumValue); - } - }; - } - - private PropertyChangeListener buildThrowExceptionsChangeListener() { - return new PropertyChangeListener() { - public void propertyChanged(PropertyChangeEvent e) { - CustomizationValueModelTests.this.throwExceptionsEvent = e; - } - }; - } - - /** ****** Basic Entity's Properties Tests ******* */ - - public void testClone() { - Entity entity = this.buildEntity("TestEntity", CUSTOMIZER_TEST_VALUE); - - this.verifyClone(entity, entity.clone()); - } - - public void testEquals() { - Entity entity1 = this.buildEntity("TestEntityA", CUSTOMIZER_TEST_VALUE); - Entity entity2 = this.buildEntity("TestEntityB", CUSTOMIZER_TEST_VALUE); - assertEquals(entity1, entity2); - Entity entity3 = this.buildEntity("TestEntityC", CUSTOMIZER_TEST_VALUE); - assertEquals(entity1, entity3); - assertEquals(entity2, entity3); - } - - public void testIsEmpty() { - Entity entity = this.buildEntity("TestEntity"); - assertTrue(entity.isEmpty()); - this.customization.setDescriptorCustomizerOf(entity.getName(), CUSTOMIZER_TEST_VALUE); - assertFalse(entity.isEmpty()); - } - - private void verifyClone(Entity original, Entity clone) { - assertNotSame(original, clone); - assertEquals(original, original); - assertEquals(original, clone); - } - - private Entity buildEntity(String name) { - return this.customization.addEntity(name); - } - - private Entity buildEntity(String name, String aClassName) { - Entity entity = this.customization.addEntity(name); - this.customization.setDescriptorCustomizerOf(entity.getName(), aClassName); - return entity; - } - - // ****** Tests ******* - public void testValue() { - // ****** ThrowExceptions ******* - this.verifyThrowExceptionsAAValue(THROW_EXCEPTIONS_TEST_VALUE); - assertEquals(Customization.DEFAULT_THROW_EXCEPTIONS, this.customization.getDefaultThrowExceptions()); - } - - public void testSetValue() throws Exception { - // ****** ThrowExceptions ******* - this.throwExceptionsEvent = null; - this.verifyHasListeners(this.throwExceptionsHolder, PropertyValueModel.VALUE); - Boolean newThrowExceptions = !THROW_EXCEPTIONS_TEST_VALUE; - // Modify the property holder - this.throwExceptionsHolder.setValue(newThrowExceptions); - this.verifyThrowExceptionsAAValue(newThrowExceptions); - assertNotNull(this.throwExceptionsEvent); - } - - public void testSetNullValue() { - String notDeleted = "Property not deleted"; - // ****** ThrowExceptions ******* - this.throwExceptionsEvent = null; - // Setting the property holder - this.throwExceptionsHolder.setValue(null); - // testing Holder - this.verifyThrowExceptionsAAValue(null); - assertNotNull(this.throwExceptionsEvent); - // testing PU properties - this.verifyPuHasNotProperty(Customization.ECLIPSELINK_THROW_EXCEPTIONS, notDeleted); - } - - // ****** convenience methods ******* - - /** - * Performs three value tests:<br> - * 1. subject value<br> - * 2. aspect adapter value<br> - * 3. persistenceUnit property value<br> - */ - protected void verifyThrowExceptionsAAValue(Boolean testValue) { - this.verifyAAValue( - testValue, - this.customization.getThrowExceptions(), - this.throwExceptionsHolder, - Customization.ECLIPSELINK_THROW_EXCEPTIONS); - } - - // ********** get/set property ********** - @Override - protected void setProperty(String propertyName, Object newValue) throws Exception { - throw new UnsupportedOperationException(); - } - - @Override - protected Object getProperty(String propertyName) throws NoSuchFieldException { - throw new UnsupportedOperationException(); - } -} diff --git a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/customization/EclipseLinkCustomizationTests.java b/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/customization/EclipseLinkCustomizationTests.java deleted file mode 100644 index 76904218c8..0000000000 --- a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/customization/EclipseLinkCustomizationTests.java +++ /dev/null @@ -1,761 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2007, 2011 Oracle. 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: - * Oracle - initial API and implementation - ******************************************************************************/ -package org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.customization; - -import java.util.ListIterator; -import org.eclipse.jpt.common.utility.model.event.ListAddEvent; -import org.eclipse.jpt.common.utility.model.event.ListChangeEvent; -import org.eclipse.jpt.common.utility.model.event.ListClearEvent; -import org.eclipse.jpt.common.utility.model.event.ListEvent; -import org.eclipse.jpt.common.utility.model.event.ListMoveEvent; -import org.eclipse.jpt.common.utility.model.event.ListRemoveEvent; -import org.eclipse.jpt.common.utility.model.event.ListReplaceEvent; -import org.eclipse.jpt.common.utility.model.listener.ListChangeListener; -import org.eclipse.jpt.common.utility.model.listener.PropertyChangeListener; -import org.eclipse.jpt.jpa.core.context.persistence.PersistenceUnit; -import org.eclipse.jpt.jpa.core.context.persistence.PersistenceUnitProperties; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.customization.Customization; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.customization.Entity; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.customization.Profiler; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.customization.Weaving; -import org.eclipse.jpt.jpa.eclipselink.core.internal.context.persistence.customization.EclipseLinkCustomization; -import org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.EclipseLinkPersistenceUnitTestCase; - -/** - * Tests the update of model objects by the Customization adapter when the - * PersistenceUnit changes. - */ -@SuppressWarnings("nls") -public class EclipseLinkCustomizationTests extends EclipseLinkPersistenceUnitTestCase -{ - private Customization customization; - private ListEvent entitiesEvent; - private ListEvent sessionCustomizersEvent; - - public static final String ENTITY_TEST = "Employee"; - public static final String ENTITY_TEST_2 = "Address"; - - public static final String THROW_EXCEPTIONS_KEY = Customization.ECLIPSELINK_THROW_EXCEPTIONS; - public static final Boolean THROW_EXCEPTIONS_TEST_VALUE = false; - public static final Boolean THROW_EXCEPTIONS_TEST_VALUE_2 = ! THROW_EXCEPTIONS_TEST_VALUE; - - public static final String WEAVING_LAZY_KEY = Customization.ECLIPSELINK_WEAVING_LAZY; - public static final Boolean WEAVING_LAZY_TEST_VALUE = false; - public static final Boolean WEAVING_LAZY_TEST_VALUE_2 = ! WEAVING_LAZY_TEST_VALUE; - - public static final String WEAVING_CHANGE_TRACKING_KEY = Customization.ECLIPSELINK_WEAVING_CHANGE_TRACKING; - public static final Boolean WEAVING_CHANGE_TRACKING_TEST_VALUE = false; - public static final Boolean WEAVING_CHANGE_TRACKING_TEST_VALUE_2 = ! WEAVING_CHANGE_TRACKING_TEST_VALUE; - - public static final String WEAVING_FETCH_GROUPS_KEY = Customization.ECLIPSELINK_WEAVING_FETCH_GROUPS; - public static final Boolean WEAVING_FETCH_GROUPS_TEST_VALUE = false; - public static final Boolean WEAVING_FETCH_GROUPS_TEST_VALUE_2 = ! WEAVING_FETCH_GROUPS_TEST_VALUE; - - public static final String WEAVING_INTERNAL_KEY = Customization.ECLIPSELINK_WEAVING_INTERNAL; - public static final Boolean WEAVING_INTERNAL_TEST_VALUE = false; - public static final Boolean WEAVING_INTERNAL_TEST_VALUE_2 = ! WEAVING_INTERNAL_TEST_VALUE; - - public static final String WEAVING_EAGER_KEY = Customization.ECLIPSELINK_WEAVING_EAGER; - public static final Boolean WEAVING_EAGER_TEST_VALUE = true; - public static final Boolean WEAVING_EAGER_TEST_VALUE_2 = ! WEAVING_EAGER_TEST_VALUE; - - public static final String VALIDATION_ONLY_KEY = Customization.ECLIPSELINK_VALIDATION_ONLY; - public static final Boolean VALIDATION_ONLY_TEST_VALUE = false; - public static final Boolean VALIDATION_ONLY_TEST_VALUE_2 = ! VALIDATION_ONLY_TEST_VALUE; - - public static final String VALIDATE_SCHEMA_KEY = Customization.ECLIPSELINK_VALIDATE_SCHEMA; - public static final Boolean VALIDATE_SCHEMA_TEST_VALUE = true; - public static final Boolean VALIDATE_SCHEMA_TEST_VALUE_2 = ! VALIDATE_SCHEMA_TEST_VALUE; - - private static final String SESSION_CUSTOMIZER_KEY = Customization.ECLIPSELINK_SESSION_CUSTOMIZER; - private static final String SESSION_CUSTOMIZER_TEST_VALUE = "java.lang.String"; - private static final String SESSION_CUSTOMIZER_TEST_VALUE_2 = "java.lang.Boolean"; - - public static final String WEAVING_KEY = Customization.ECLIPSELINK_WEAVING; - public static final Weaving WEAVING_TEST_VALUE = Weaving.false_; - public static final Weaving WEAVING_TEST_VALUE_2 = Weaving.static_; - - public static final String CUSTOMIZER_KEY = Customization.ECLIPSELINK_DESCRIPTOR_CUSTOMIZER + ENTITY_TEST; - public static final String CUSTOMIZER_TEST_VALUE = "acme.sessions.DescriptorCustomizer"; - public static final String CUSTOMIZER_TEST_VALUE_2 = "acme.sessions.Customizer"; - - private static final String PROFILER_KEY = Customization.ECLIPSELINK_PROFILER; - private static final Profiler PROFILER_TEST_VALUE = Profiler.query_monitor; - private static final String PROFILER_TEST_VALUE_2 = "custom.profiler.test"; - - public static final String EXCEPTION_HANDLER_KEY = Customization.ECLIPSELINK_EXCEPTION_HANDLER; - public static final String EXCEPTION_HANDLER_TEST_VALUE = "acme.CustomSessionEventListener"; - public static final String EXCEPTION_HANDLER_TEST_VALUE_2 = "oracle.sessions.CustomSessionEventListener"; - - // ********** constructors ********** - public EclipseLinkCustomizationTests(String name) { - super(name); - } - - // ********** behavior ********** - @Override - protected void setUp() throws Exception { - super.setUp(); - this.customization = this.subject.getCustomization(); - PropertyChangeListener propertyChangeListener = this.buildPropertyChangeListener(); - - this.customization.addPropertyChangeListener(Customization.THROW_EXCEPTIONS_PROPERTY, propertyChangeListener); - this.customization.addPropertyChangeListener(Customization.WEAVING_LAZY_PROPERTY, propertyChangeListener); - this.customization.addPropertyChangeListener(Customization.WEAVING_CHANGE_TRACKING_PROPERTY, propertyChangeListener); - this.customization.addPropertyChangeListener(Customization.WEAVING_FETCH_GROUPS_PROPERTY, propertyChangeListener); - this.customization.addPropertyChangeListener(Customization.WEAVING_INTERNAL_PROPERTY, propertyChangeListener); - this.customization.addPropertyChangeListener(Customization.WEAVING_EAGER_PROPERTY, propertyChangeListener); - this.customization.addPropertyChangeListener(Customization.WEAVING_PROPERTY, propertyChangeListener); - this.customization.addPropertyChangeListener(Customization.VALIDATION_ONLY_PROPERTY, propertyChangeListener); - this.customization.addPropertyChangeListener(Customization.VALIDATE_SCHEMA_PROPERTY, propertyChangeListener); - this.customization.addPropertyChangeListener(Entity.DESCRIPTOR_CUSTOMIZER_PROPERTY, propertyChangeListener); - this.customization.addPropertyChangeListener(Customization.SESSION_CUSTOMIZER_PROPERTY, propertyChangeListener); - this.customization.addPropertyChangeListener(Customization.PROFILER_PROPERTY, propertyChangeListener); - this.customization.addPropertyChangeListener(Customization.EXCEPTION_HANDLER_PROPERTY, propertyChangeListener); - - ListChangeListener sessionCustomizersChangeListener = this.buildSessionCustomizersChangeListener(); - this.customization.addListChangeListener(Customization.SESSION_CUSTOMIZER_LIST, sessionCustomizersChangeListener); - - ListChangeListener entitiesChangeListener = this.buildEntitiesChangeListener(); - this.customization.addListChangeListener(Customization.ENTITIES_LIST, entitiesChangeListener); - this.clearEvent(); - } - - /** - * Initializes directly the PU properties before testing. - */ - @Override - protected void populatePu() { - this.modelPropertiesSizeOriginal = 13; - this.propertiesTotal = this.modelPropertiesSizeOriginal + 4; // 4 misc properties - this.modelPropertiesSize = this.modelPropertiesSizeOriginal; - - this.persistenceUnitSetProperty("misc.property.1", "value.1"); - this.persistenceUnitSetProperty(THROW_EXCEPTIONS_KEY, THROW_EXCEPTIONS_TEST_VALUE.toString()); - this.persistenceUnitSetProperty(WEAVING_LAZY_KEY, WEAVING_LAZY_TEST_VALUE.toString()); - this.persistenceUnitSetProperty(WEAVING_CHANGE_TRACKING_KEY, WEAVING_CHANGE_TRACKING_TEST_VALUE.toString()); - this.persistenceUnitSetProperty(WEAVING_FETCH_GROUPS_KEY, WEAVING_FETCH_GROUPS_TEST_VALUE.toString()); - this.persistenceUnitSetProperty(WEAVING_INTERNAL_KEY, WEAVING_INTERNAL_TEST_VALUE.toString()); - this.persistenceUnitSetProperty(WEAVING_EAGER_KEY, WEAVING_EAGER_TEST_VALUE.toString()); - this.persistenceUnitSetProperty(VALIDATION_ONLY_KEY, VALIDATION_ONLY_TEST_VALUE.toString()); - this.persistenceUnitSetProperty(VALIDATE_SCHEMA_KEY, VALIDATE_SCHEMA_TEST_VALUE.toString()); - this.persistenceUnitSetProperty("misc.property.2", "value.2"); - this.persistenceUnitSetProperty(SESSION_CUSTOMIZER_KEY, SESSION_CUSTOMIZER_TEST_VALUE.toString()); - this.persistenceUnitSetProperty(WEAVING_KEY, WEAVING_TEST_VALUE); - this.persistenceUnitSetProperty("misc.property.3", "value.3"); - this.persistenceUnitSetProperty("misc.property.4", "value.4"); - this.persistenceUnitSetProperty(CUSTOMIZER_KEY, CUSTOMIZER_TEST_VALUE); - this.persistenceUnitSetProperty(PROFILER_KEY, PROFILER_TEST_VALUE); - this.persistenceUnitSetProperty(EXCEPTION_HANDLER_KEY, EXCEPTION_HANDLER_TEST_VALUE); - return; - } - - // ********** Listeners ********** - private ListChangeListener buildEntitiesChangeListener() { - return new ListChangeListener() { - public void itemsAdded(ListAddEvent e) { - EclipseLinkCustomizationTests.this.entityAdded(e); - } - - public void itemsRemoved(ListRemoveEvent e) { - EclipseLinkCustomizationTests.this.entityRemoved(e); - } - - public void itemsReplaced(ListReplaceEvent e) { - EclipseLinkCustomizationTests.this.throwUnsupportedOperationException(e); - } - - public void itemsMoved(ListMoveEvent e) { - EclipseLinkCustomizationTests.this.throwUnsupportedOperationException(e); - } - - public void listCleared(ListClearEvent e) { - EclipseLinkCustomizationTests.this.throwUnsupportedOperationException(e); - } - - public void listChanged(ListChangeEvent e) { - EclipseLinkCustomizationTests.this.throwUnsupportedOperationException(e); - } - }; - } - - private ListChangeListener buildSessionCustomizersChangeListener() { - return new ListChangeListener() { - public void itemsAdded(ListAddEvent e) { - EclipseLinkCustomizationTests.this.sessionCustomizerAdded(e); - } - - public void itemsRemoved(ListRemoveEvent e) { - EclipseLinkCustomizationTests.this.sessionCustomizerRemoved(e); - } - - public void itemsReplaced(ListReplaceEvent e) { - EclipseLinkCustomizationTests.this.sessionCustomizerReplaced(e); - } - - public void itemsMoved(ListMoveEvent e) { - EclipseLinkCustomizationTests.this.throwUnsupportedOperationException(e); - } - - public void listCleared(ListClearEvent e) { - EclipseLinkCustomizationTests.this.sessionCustomizerListCleared(e); - } - - public void listChanged(ListChangeEvent e) { - EclipseLinkCustomizationTests.this.throwUnsupportedOperationException(e); - } - }; - } - - @Override - protected void clearEvent() { - super.clearEvent(); - this.entitiesEvent = null; - this.sessionCustomizersEvent = null; - } - - void entityAdded(ListAddEvent e) { - this.entitiesEvent = e; - } - - void entityRemoved(ListRemoveEvent e) { - this.entitiesEvent = e; - } - - void sessionCustomizerAdded(ListAddEvent e) { - this.sessionCustomizersEvent = e; - } - - void sessionCustomizerRemoved(ListRemoveEvent e) { - this.sessionCustomizersEvent = e; - } - - void sessionCustomizerReplaced(ListReplaceEvent e) { - this.sessionCustomizersEvent = e; - } - - void sessionCustomizerListCleared(ListClearEvent e) { - this.sessionCustomizersEvent = e; - } - - // ********** get/set property ********** - @Override - protected void setProperty(String propertyName, Object newValue) throws Exception { - if (propertyName.equals(Customization.THROW_EXCEPTIONS_PROPERTY)) - this.customization.setThrowExceptions((Boolean) newValue); - else if (propertyName.equals(Customization.WEAVING_LAZY_PROPERTY)) - this.customization.setWeavingLazy((Boolean) newValue); - else if (propertyName.equals(Customization.WEAVING_CHANGE_TRACKING_PROPERTY)) - this.customization.setWeavingChangeTracking((Boolean) newValue); - else if (propertyName.equals(Customization.WEAVING_FETCH_GROUPS_PROPERTY)) - this.customization.setWeavingFetchGroups((Boolean) newValue); - else if (propertyName.equals(Customization.WEAVING_INTERNAL_PROPERTY)) - this.customization.setWeavingInternal((Boolean) newValue); - else if (propertyName.equals(Customization.WEAVING_EAGER_PROPERTY)) - this.customization.setWeavingEager((Boolean) newValue); - else if (propertyName.equals(Customization.VALIDATION_ONLY_PROPERTY)) - this.customization.setValidationOnly((Boolean) newValue); - else if (propertyName.equals(Customization.VALIDATE_SCHEMA_PROPERTY)) - this.customization.setValidateSchema((Boolean) newValue); - else if (propertyName.equals(Customization.EXCEPTION_HANDLER_PROPERTY)) - this.customization.setExceptionHandler((String) newValue); - else if (propertyName.equals(Customization.SESSION_CUSTOMIZER_PROPERTY)) - this.customization.addSessionCustomizer((String) newValue); - else if (propertyName.equals(Customization.WEAVING_PROPERTY)) - this.customization.setWeaving((Weaving) newValue); - else if (propertyName.equals(Customization.PROFILER_PROPERTY)) { - if (newValue.getClass().isEnum()) - this.customization.setProfiler((Profiler) newValue); - else - this.customization.setProfiler((String) newValue); - } - else - this.throwMissingDefinition("setProperty", propertyName); - } - - @Override - protected Object getProperty(String propertyName) throws NoSuchFieldException { - Object modelValue = null; - if (propertyName.equals(Customization.THROW_EXCEPTIONS_PROPERTY)) - modelValue = this.customization.getThrowExceptions(); - else if (propertyName.equals(Customization.WEAVING_PROPERTY)) - modelValue = this.customization.getWeaving(); - else if (propertyName.equals(Customization.WEAVING_LAZY_PROPERTY)) - modelValue = this.customization.getWeavingLazy(); - else if (propertyName.equals(Customization.WEAVING_CHANGE_TRACKING_PROPERTY)) - modelValue = this.customization.getWeavingChangeTracking(); - else if (propertyName.equals(Customization.WEAVING_FETCH_GROUPS_PROPERTY)) - modelValue = this.customization.getWeavingFetchGroups(); - else if (propertyName.equals(Customization.WEAVING_INTERNAL_PROPERTY)) - modelValue = this.customization.getWeavingInternal(); - else if (propertyName.equals(Customization.WEAVING_EAGER_PROPERTY)) - modelValue = this.customization.getWeavingEager(); - else if (propertyName.equals(Customization.VALIDATION_ONLY_PROPERTY)) - modelValue = this.customization.getValidationOnly(); - else if (propertyName.equals(Customization.VALIDATE_SCHEMA_PROPERTY)) - modelValue = this.customization.getValidateSchema(); - else if (propertyName.equals(Customization.EXCEPTION_HANDLER_PROPERTY)) - modelValue = this.customization.getExceptionHandler(); - else if (propertyName.equals(Customization.PROFILER_PROPERTY)) - modelValue = this.customization.getProfiler(); - else if (propertyName.equals(Customization.SESSION_CUSTOMIZER_PROPERTY)) { - ListIterator<String> iterator = this.customization.sessionCustomizers(); - if(iterator.hasNext()) { - modelValue = iterator.next(); - } - } - else if (propertyName.equals(Entity.DESCRIPTOR_CUSTOMIZER_PROPERTY)) - modelValue = this.customization.getDescriptorCustomizerOf(ENTITY_TEST); - else - this.throwMissingDefinition("getProperty", propertyName); - return modelValue; - } - - @Override - protected void verifyPutProperty(String propertyName, Object expectedValue) throws Exception { - Object expectedValue_ = expectedValue; - if (propertyName.equals(Customization.PROFILER_PROPERTY)) { - - expectedValue_ = (expectedValue != null && expectedValue.getClass().isEnum()) ? - this.getPropertyStringValueOf(PROFILER_TEST_VALUE) : // model is storing EclipseLinkStringValue - expectedValue; - } - super.verifyPutProperty(propertyName, expectedValue_); - } - - @Override - protected PersistenceUnitProperties getModel() { - return this.customization; - } - - // ********** entities list ********** - public void testEntitiesList() throws Exception { - // add - this.clearEvent(); - this.customization.addEntity(ENTITY_TEST_2); - - // verify event received - assertNotNull("No Event Fired.", this.entitiesEvent); - // verify event for the expected property - assertEquals("Wrong Event.", this.entitiesEvent.getListName(), Customization.ENTITIES_LIST); - - // remove - this.clearEvent(); - this.customization.removeEntity(ENTITY_TEST_2); - - // verify event received - assertNotNull("No Event Fired.", this.entitiesEvent); - // verify event for the expected property - assertEquals("Wrong Event.", this.entitiesEvent.getListName(), Customization.ENTITIES_LIST); - } - - // ********** sessionCustomizers list ********** - public void testSessionCustomizersList() throws Exception { - // add - this.clearEvent(); - String className = this.customization.addSessionCustomizer(SESSION_CUSTOMIZER_TEST_VALUE_2); - - // verify event received - assertNotNull("No Event Fired.", this.sessionCustomizersEvent); - // verify event for the expected property - assertEquals("Wrong Event.", this.sessionCustomizersEvent.getListName(), Customization.SESSION_CUSTOMIZER_LIST); - - // remove - this.clearEvent(); - - this.customization.removeSessionCustomizer(className); - // verify event received - assertNotNull("No Event Fired.", this.sessionCustomizersEvent); - // verify event for the expected property - assertEquals("Wrong Event.", this.sessionCustomizersEvent.getListName(), Customization.SESSION_CUSTOMIZER_LIST); - } - - // ********** ThrowExceptions tests ********** - public void testSetThrowExceptions() throws Exception { - this.verifyModelInitialized( - THROW_EXCEPTIONS_KEY, - THROW_EXCEPTIONS_TEST_VALUE); - this.verifySetProperty( - THROW_EXCEPTIONS_KEY, - THROW_EXCEPTIONS_TEST_VALUE, - THROW_EXCEPTIONS_TEST_VALUE_2); - } - - public void testAddRemoveThrowExceptions() throws Exception { - this.verifyAddRemoveProperty( - THROW_EXCEPTIONS_KEY, - THROW_EXCEPTIONS_TEST_VALUE, - THROW_EXCEPTIONS_TEST_VALUE_2); - } - - // ********** WeavingLazy tests ********** - public void testSetWeavingLazy() throws Exception { - this.verifyModelInitialized( - WEAVING_LAZY_KEY, - WEAVING_LAZY_TEST_VALUE); - this.verifySetProperty( - WEAVING_LAZY_KEY, - WEAVING_LAZY_TEST_VALUE, - WEAVING_LAZY_TEST_VALUE_2); - } - - public void testAddRemoveWeavingLazy() throws Exception { - this.verifyAddRemoveProperty( - WEAVING_LAZY_KEY, - WEAVING_LAZY_TEST_VALUE, - WEAVING_LAZY_TEST_VALUE_2); - } - - // ********** WeavingChangeTracking tests ********** - public void testSetWeavingChangeTracking() throws Exception { - this.verifyModelInitialized( - WEAVING_CHANGE_TRACKING_KEY, - WEAVING_CHANGE_TRACKING_TEST_VALUE); - this.verifySetProperty( - WEAVING_CHANGE_TRACKING_KEY, - WEAVING_CHANGE_TRACKING_TEST_VALUE, - WEAVING_CHANGE_TRACKING_TEST_VALUE_2); - } - - public void testAddRemoveWeavingChangeTracking() throws Exception { - this.verifyAddRemoveProperty( - WEAVING_CHANGE_TRACKING_KEY, - WEAVING_CHANGE_TRACKING_TEST_VALUE, - WEAVING_CHANGE_TRACKING_TEST_VALUE_2); - } - - // ********** WeavingFetchGroups tests ********** - public void testSetWeavingFetchGroups() throws Exception { - this.verifyModelInitialized( - WEAVING_FETCH_GROUPS_KEY, - WEAVING_FETCH_GROUPS_TEST_VALUE); - this.verifySetProperty( - WEAVING_FETCH_GROUPS_KEY, - WEAVING_FETCH_GROUPS_TEST_VALUE, - WEAVING_FETCH_GROUPS_TEST_VALUE_2); - } - - public void testAddRemoveWeavingFetchGroups() throws Exception { - this.verifyAddRemoveProperty( - WEAVING_FETCH_GROUPS_KEY, - WEAVING_FETCH_GROUPS_TEST_VALUE, - WEAVING_FETCH_GROUPS_TEST_VALUE_2); - } - - // ********** WeavingInternal tests ********** - public void testSetWeavingInternal() throws Exception { - this.verifyModelInitialized( - WEAVING_INTERNAL_KEY, - WEAVING_INTERNAL_TEST_VALUE); - this.verifySetProperty( - WEAVING_INTERNAL_KEY, - WEAVING_INTERNAL_TEST_VALUE, - WEAVING_INTERNAL_TEST_VALUE_2); - } - - public void testAddRemoveWeavingInternal() throws Exception { - this.verifyAddRemoveProperty( - WEAVING_INTERNAL_KEY, - WEAVING_INTERNAL_TEST_VALUE, - WEAVING_INTERNAL_TEST_VALUE_2); - } - - // ********** WeavingEager tests ********** - public void testSetWeavingEager() throws Exception { - this.verifyModelInitialized( - WEAVING_EAGER_KEY, - WEAVING_EAGER_TEST_VALUE); - this.verifySetProperty( - WEAVING_EAGER_KEY, - WEAVING_EAGER_TEST_VALUE, - WEAVING_EAGER_TEST_VALUE_2); - } - - public void testAddRemoveWeavingEager() throws Exception { - this.verifyAddRemoveProperty( - WEAVING_EAGER_KEY, - WEAVING_EAGER_TEST_VALUE, - WEAVING_EAGER_TEST_VALUE_2); - } - - // ********** SessionCustomizer tests ********** - public void testSetSessionCustomizer() throws Exception { - this.verifyModelInitialized( - SESSION_CUSTOMIZER_KEY, - SESSION_CUSTOMIZER_TEST_VALUE); - this.verifySetSessionCustomizationProperty( - Customization.SESSION_CUSTOMIZER_PROPERTY, - SESSION_CUSTOMIZER_KEY, - SESSION_CUSTOMIZER_TEST_VALUE, - SESSION_CUSTOMIZER_TEST_VALUE_2); - } - - public void testAddRemoveSessionCustomizer() throws Exception { - this.verifyAddRemoveSessionCustomizationProperty( - Customization.SESSION_CUSTOMIZER_PROPERTY, - SESSION_CUSTOMIZER_KEY, - SESSION_CUSTOMIZER_TEST_VALUE, - SESSION_CUSTOMIZER_TEST_VALUE_2); - } - - // ********** Weaving tests ********** - /** - * Tests the update of Weaving property by the Customization adapter when - * the PU or the model changes. - */ - public void testSetWeaving() throws Exception { - this.verifyModelInitialized( - WEAVING_KEY, - WEAVING_TEST_VALUE); - this.verifySetProperty( - WEAVING_KEY, - WEAVING_TEST_VALUE, - WEAVING_TEST_VALUE_2); - } - - public void testAddRemoveWeaving() throws Exception { - this.verifyAddRemoveProperty( - WEAVING_KEY, - WEAVING_TEST_VALUE, - WEAVING_TEST_VALUE_2); - } - - // ********** ValidationOnly tests ********** - public void testSetValidationOnly() throws Exception { - this.verifyModelInitialized( - VALIDATION_ONLY_KEY, - VALIDATION_ONLY_TEST_VALUE); - this.verifySetProperty( - VALIDATION_ONLY_KEY, - VALIDATION_ONLY_TEST_VALUE, - VALIDATION_ONLY_TEST_VALUE_2); - } - - public void testAddRemoveValidationOnly() throws Exception { - this.verifyAddRemoveProperty( - VALIDATION_ONLY_KEY, - VALIDATION_ONLY_TEST_VALUE, - VALIDATION_ONLY_TEST_VALUE_2); - } - - // ********** ValidateSchema tests ********** - public void testSetValidateSchema() throws Exception { - this.verifyModelInitialized( - VALIDATE_SCHEMA_KEY, - VALIDATE_SCHEMA_TEST_VALUE); - this.verifySetProperty( - VALIDATE_SCHEMA_KEY, - VALIDATE_SCHEMA_TEST_VALUE, - VALIDATE_SCHEMA_TEST_VALUE_2); - } - - public void testAddRemoveValidateSchema() throws Exception { - this.verifyAddRemoveProperty( - VALIDATE_SCHEMA_KEY, - VALIDATE_SCHEMA_TEST_VALUE, - VALIDATE_SCHEMA_TEST_VALUE_2); - } - - // ********** ExceptionHandler tests ********** - public void testSetExceptionHandler() throws Exception { - this.verifyModelInitialized( - EXCEPTION_HANDLER_KEY, - EXCEPTION_HANDLER_TEST_VALUE); - this.verifySetProperty( - EXCEPTION_HANDLER_KEY, - EXCEPTION_HANDLER_TEST_VALUE, - EXCEPTION_HANDLER_TEST_VALUE_2); - } - - public void testAddRemoveExceptionHandler() throws Exception { - this.verifyAddRemoveProperty( - EXCEPTION_HANDLER_KEY, - EXCEPTION_HANDLER_TEST_VALUE, - EXCEPTION_HANDLER_TEST_VALUE_2); - } - - // ********** Customization class ********** - /** - * Tests the update of Customization property by the Customization adapter when the - * PU or the model changes. - */ - public void testSetCustomization() throws Exception { - this.verifyModelInitialized( - CUSTOMIZER_KEY, - CUSTOMIZER_TEST_VALUE); - this.verifySetCustomizationProperty( - Entity.DESCRIPTOR_CUSTOMIZER_PROPERTY, - CUSTOMIZER_KEY, - CUSTOMIZER_TEST_VALUE, - CUSTOMIZER_TEST_VALUE_2); - } - - public void testAddRemoveCustomization() throws Exception { - this.verifyAddRemoveCustomizationProperty( - Entity.DESCRIPTOR_CUSTOMIZER_PROPERTY, - CUSTOMIZER_KEY, - CUSTOMIZER_TEST_VALUE, - CUSTOMIZER_TEST_VALUE_2); - } - - // ********** Profiler tests ********** - public void testSetProfiler() throws Exception { - this.verifyModelInitialized( - PROFILER_KEY, - this.getPropertyStringValueOf(PROFILER_TEST_VALUE)); // model is storing EclipseLinkStringValue - // verify set enum value - this.verifySetProperty( - PROFILER_KEY, - PROFILER_TEST_VALUE, - PROFILER_TEST_VALUE_2); - // verify set custom and literal value - this.verifySetProfiler( - PROFILER_KEY, - PROFILER_TEST_VALUE, - PROFILER_TEST_VALUE_2); - } - - public void testAddRemoveProfiler() throws Exception { - this.verifyAddRemoveProperty( - PROFILER_KEY, - PROFILER_TEST_VALUE, - PROFILER_TEST_VALUE_2); - } - - /** - * Verifies setting custom profiler and literals. - */ - protected void verifySetProfiler(String elKey, Object testValue1, Object testValue2) throws Exception { - PersistenceUnit.Property property = this.getPersistenceUnit().getProperty(elKey); - String propertyName = this.getModel().propertyIdOf(property); - // test set custom profiler. - this.clearEvent(); - this.setProperty(propertyName, testValue2); - this.verifyPutProperty(propertyName, testValue2); - - // test set (Profiler) null - this.clearEvent(); - this.customization.setProfiler((Profiler) null); - assertNull(this.getPersistenceUnit().getProperty(elKey)); - this.verifyPutProperty(propertyName, null); - - // test set enum literal - this.clearEvent(); - this.setProperty(propertyName, testValue1.toString()); - assertNotNull(this.getPersistenceUnit().getProperty(elKey)); - this.verifyPutProperty(propertyName, this.getPropertyStringValueOf(testValue1)); - - // test set (String) null - this.clearEvent(); - this.customization.setProfiler((String) null); - assertNull(this.getPersistenceUnit().getProperty(elKey)); - this.verifyPutProperty(propertyName, null); - } - - - - // ****** convenience methods ******* - - // ********** verify SessionCustomizer property ********** - protected void verifySetSessionCustomizationProperty(String propertyName, String key, Object testValue1, Object testValue2) throws Exception { - // Replace - this.persistenceUnitSetProperty(key, testValue2, true); - this.propertiesTotal++; - this.verifyPutSessionCustomizerProperty(propertyName, testValue1); - } - - @SuppressWarnings("unused") - protected void verifyAddRemoveSessionCustomizationProperty(String propertyName, String key, Object testValue1, Object testValue2) throws Exception { - // Remove - this.clearEvent(); - --this.propertiesTotal; - --this.modelPropertiesSize; - this.getPersistenceUnit().removeProperty(key, (String) testValue1); - assertFalse(this.customization.sessionCustomizerExists(key)); - assertEquals(this.modelPropertiesSize, this.modelPropertiesSizeOriginal - 1); - - // Add original Property - ++this.propertiesTotal; - ++this.modelPropertiesSize; - this.persistenceUnitSetProperty(key, testValue1, true); - this.verifyPutSessionCustomizerProperty(propertyName, testValue1); - } - - protected void verifyPutSessionCustomizerProperty(String propertyName, Object expectedValue) throws Exception { - // verify event received - assertNotNull("No Event Fired.", this.sessionCustomizersEvent); - this.verifySessionCustomizerEvent(propertyName, expectedValue); - } - - @SuppressWarnings("unused") - protected void verifySessionCustomizerEvent(String propertyName, Object expectedValue) throws Exception { - // verify event value - EclipseLinkCustomization customization = (EclipseLinkCustomization) this.sessionCustomizersEvent.getSource(); - assertTrue(customization.sessionCustomizerExists((String) expectedValue)); - return; - } - - // ********** verify entity property ********** - protected void verifySetCustomizationProperty(String propertyName, String key, Object testValue1, Object testValue2) throws Exception { - // Replace - this.persistenceUnitSetProperty(key, testValue2); - this.verifyPutCustomizationProperty(propertyName, ENTITY_TEST, testValue2); - - // Replace by setting model object - this.clearEvent(); - this.setCustomizationProperty(propertyName, ENTITY_TEST, testValue1); - this.verifyPutCustomizationProperty(propertyName, ENTITY_TEST, testValue1); - } - - protected void verifyAddRemoveCustomizationProperty(String propertyName, String key, Object testValue1, Object testValue2) throws Exception { - // Remove - this.clearEvent(); - --this.propertiesTotal; - --this.modelPropertiesSize; - this.getPersistenceUnit().removeProperty(key); - assertNull(this.getPersistenceUnit().getProperty(key)); - assertEquals(this.modelPropertiesSize, this.modelPropertiesSizeOriginal - 1); - this.verifyPutCustomizationProperty(propertyName, ENTITY_TEST, null); - - // Add original Property - ++this.propertiesTotal; - ++this.modelPropertiesSize; - this.persistenceUnitSetProperty(key, testValue1); - this.verifyPutCustomizationProperty(propertyName, ENTITY_TEST, testValue1); - - // Replace - this.persistenceUnitSetProperty(key, testValue2); - this.verifyPutCustomizationProperty(propertyName, ENTITY_TEST, testValue2); - } - - protected void verifyPutCustomizationProperty(String propertyName, String entityName, Object expectedValue) throws Exception { - this.verifyEvent(propertyName); - this.verifyCustomizationEvent(propertyName, entityName, expectedValue); - } - - protected void verifyCustomizationEvent(String propertyName, String entityName, Object expectedValue) throws Exception { - // verify event value - Entity entity = (Entity) this.propertyChangedEvent.getNewValue(); - if (propertyName.equals(Entity.DESCRIPTOR_CUSTOMIZER_PROPERTY)) { - assertEquals(expectedValue, entity.getParent().getDescriptorCustomizerOf(entityName)); - assertEquals(expectedValue, this.customization.getDescriptorCustomizerOf(entityName)); - } - else { - this.throwMissingDefinition("verifyCustomizationEvent", propertyName); - } - } - - protected void setCustomizationProperty(String propertyName, String entityName, Object newValue) throws NoSuchFieldException { - if (propertyName.equals(Entity.DESCRIPTOR_CUSTOMIZER_PROPERTY)) - this.customization.setDescriptorCustomizerOf(entityName, (String) newValue); - else - this.throwMissingDefinition("setCustomizationProperty", propertyName); - } -} diff --git a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/customization/JptEclipseLinkPersistenceCustomizationTests.java b/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/customization/JptEclipseLinkPersistenceCustomizationTests.java deleted file mode 100644 index 48445e28a6..0000000000 --- a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/customization/JptEclipseLinkPersistenceCustomizationTests.java +++ /dev/null @@ -1,33 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2008, 2010 Oracle. 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: - * Oracle - initial API and implementation - ******************************************************************************/ -package org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.customization; - -import junit.framework.Test; -import junit.framework.TestSuite; - -/** - * decentralize test creation code - */ -public class JptEclipseLinkPersistenceCustomizationTests -{ - public static Test suite() { - TestSuite suite = new TestSuite(JptEclipseLinkPersistenceCustomizationTests.class.getPackage().getName()); - - suite.addTestSuite(CustomizationValueModelTests.class); - suite.addTestSuite(EclipseLinkCustomizationTests.class); - - return suite; - } - - private JptEclipseLinkPersistenceCustomizationTests() { - super(); - throw new UnsupportedOperationException(); - } -} diff --git a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/general/GeneralPropertiesAdapterTests.java b/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/general/GeneralPropertiesAdapterTests.java deleted file mode 100644 index 7d8f4f5bd3..0000000000 --- a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/general/GeneralPropertiesAdapterTests.java +++ /dev/null @@ -1,105 +0,0 @@ -/******************************************************************************* -* Copyright (c) 2008, 2009 Oracle. 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: -* Oracle - initial API and implementation -*******************************************************************************/ -package org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.general; - -import org.eclipse.jpt.common.utility.model.listener.PropertyChangeListener; -import org.eclipse.jpt.jpa.core.context.persistence.PersistenceUnitProperties; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.general.GeneralProperties; -import org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.EclipseLinkPersistenceUnitTestCase; - -/** - * GeneralAdapterTests - */ -@SuppressWarnings("nls") -public class GeneralPropertiesAdapterTests extends EclipseLinkPersistenceUnitTestCase -{ - private GeneralProperties generalProperties; - - public static final String EXCLUDE_ECLIPSELINK_ORM_KEY = GeneralProperties.ECLIPSELINK_EXCLUDE_ECLIPSELINK_ORM; - public static final Boolean EXCLUDE_ECLIPSELINK_ORM_TEST_VALUE = false; - public static final Boolean EXCLUDE_ECLIPSELINK_ORM_TEST_VALUE_2 = ! EXCLUDE_ECLIPSELINK_ORM_TEST_VALUE; - - - public GeneralPropertiesAdapterTests(String name) { - super(name); - } - - @Override - protected void setUp() throws Exception { - super.setUp(); - this.generalProperties = this.subject.getGeneralProperties(); - PropertyChangeListener propertyChangeListener = this.buildPropertyChangeListener(); - - this.generalProperties.addPropertyChangeListener(GeneralProperties.EXCLUDE_ECLIPSELINK_ORM_PROPERTY, propertyChangeListener); - - this.clearEvent(); - } - - /** - * Initializes directly the PU properties before testing. - */ - @Override - protected void populatePu() { - this.modelPropertiesSizeOriginal = 1; - this.propertiesTotal = this.modelPropertiesSizeOriginal + 2; // misc properties - this.modelPropertiesSize = this.modelPropertiesSizeOriginal; - - this.persistenceUnitSetProperty("misc.property.1", "value.1"); - this.persistenceUnitSetProperty(EXCLUDE_ECLIPSELINK_ORM_KEY, EXCLUDE_ECLIPSELINK_ORM_TEST_VALUE.toString()); - this.persistenceUnitSetProperty("misc.property.2", "value.2"); - - return; - } - - - // ********** ExcludeEclipselinkOrm tests ********** - public void testSetExcludeEclipselinkOrm() throws Exception { - this.verifyModelInitialized( - EXCLUDE_ECLIPSELINK_ORM_KEY, - EXCLUDE_ECLIPSELINK_ORM_TEST_VALUE); - this.verifySetProperty( - EXCLUDE_ECLIPSELINK_ORM_KEY, - EXCLUDE_ECLIPSELINK_ORM_TEST_VALUE, - EXCLUDE_ECLIPSELINK_ORM_TEST_VALUE_2); - } - - public void testAddRemoveExcludeEclipselinkOrm() throws Exception { - this.verifyAddRemoveProperty( - EXCLUDE_ECLIPSELINK_ORM_KEY, - EXCLUDE_ECLIPSELINK_ORM_TEST_VALUE, - EXCLUDE_ECLIPSELINK_ORM_TEST_VALUE_2); - } - - - - // ********** get/set property ********** - @Override - protected Object getProperty(String propertyName) throws NoSuchFieldException { - Object modelValue = null; - if (propertyName.equals(GeneralProperties.EXCLUDE_ECLIPSELINK_ORM_PROPERTY)) - modelValue = this.generalProperties.getExcludeEclipselinkOrm(); - else - this.throwMissingDefinition("getProperty", propertyName); - return modelValue; - } - - @Override - protected void setProperty(String propertyName, Object newValue) throws Exception { - if (propertyName.equals(GeneralProperties.EXCLUDE_ECLIPSELINK_ORM_PROPERTY)) - this.generalProperties.setExcludeEclipselinkOrm((Boolean) newValue); - else - this.throwMissingDefinition("setProperty", propertyName); - } - - @Override - protected PersistenceUnitProperties getModel() { - return this.generalProperties; - } -} diff --git a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/general/GeneralPropertiesValueModelTests.java b/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/general/GeneralPropertiesValueModelTests.java deleted file mode 100644 index 4551315689..0000000000 --- a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/general/GeneralPropertiesValueModelTests.java +++ /dev/null @@ -1,162 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2008, 2009 Oracle. 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: - * Oracle - initial API and implementation - *******************************************************************************/ -package org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.general; - -import org.eclipse.jpt.common.utility.internal.model.AbstractModel; -import org.eclipse.jpt.common.utility.internal.model.value.PropertyAspectAdapter; -import org.eclipse.jpt.common.utility.internal.model.value.SimplePropertyValueModel; -import org.eclipse.jpt.common.utility.model.event.PropertyChangeEvent; -import org.eclipse.jpt.common.utility.model.listener.PropertyChangeListener; -import org.eclipse.jpt.common.utility.model.value.PropertyValueModel; -import org.eclipse.jpt.common.utility.model.value.WritablePropertyValueModel; -import org.eclipse.jpt.jpa.core.context.persistence.PersistenceUnitProperties; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.general.GeneralProperties; -import org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.EclipseLinkPersistenceUnitTestCase; - -/** - * GeneralPropertyValueModelTests - */ -@SuppressWarnings("nls") -public class GeneralPropertiesValueModelTests extends EclipseLinkPersistenceUnitTestCase -{ - private GeneralProperties generalProperty; - - private WritablePropertyValueModel<Boolean> excludeEclipselinkOrmHolder; - private PropertyChangeListener excludeEclipselinkOrmListener; - private PropertyChangeEvent excludeEclipselinkOrmEvent; - - public static final Boolean EXCLUDE_ECLIPSELINK_ORM_TEST_VALUE = Boolean.FALSE; - - public GeneralPropertiesValueModelTests(String name) { - super(name); - } - - @Override - protected void setUp() throws Exception { - super.setUp(); - this.generalProperty = this.subject.getGeneralProperties(); // Subject - PropertyValueModel<GeneralProperties> generalPropertyHolder = new SimplePropertyValueModel<GeneralProperties>(this.generalProperty); - - this.excludeEclipselinkOrmHolder = this.buildExcludeEclipselinkOrmAA(generalPropertyHolder); - this.excludeEclipselinkOrmListener = this.buildExcludeEclipselinkOrmChangeListener(); - this.excludeEclipselinkOrmHolder.addPropertyChangeListener(PropertyValueModel.VALUE, this.excludeEclipselinkOrmListener); - this.excludeEclipselinkOrmEvent = null; - } - - public void testHasListeners() { - AbstractModel subjectGeneralProperty = (AbstractModel) this.generalProperty; // Subject - - PropertyAspectAdapter<GeneralProperties, Boolean> excludeEclipselinkOrmAA = - (PropertyAspectAdapter<GeneralProperties, Boolean>) this.excludeEclipselinkOrmHolder; - assertTrue(excludeEclipselinkOrmAA.hasAnyPropertyChangeListeners(PropertyValueModel.VALUE)); - assertTrue(subjectGeneralProperty.hasAnyPropertyChangeListeners(GeneralProperties.EXCLUDE_ECLIPSELINK_ORM_PROPERTY)); - - excludeEclipselinkOrmAA.removePropertyChangeListener(PropertyValueModel.VALUE, this.excludeEclipselinkOrmListener); - assertFalse(subjectGeneralProperty.hasAnyPropertyChangeListeners(GeneralProperties.EXCLUDE_ECLIPSELINK_ORM_PROPERTY)); - assertFalse(excludeEclipselinkOrmAA.hasAnyPropertyChangeListeners(PropertyValueModel.VALUE)); - } - - /** - * Initializes directly the PU properties before testing. - */ - @Override - protected void populatePu() { - this.persistenceUnitSetProperty( - GeneralProperties.ECLIPSELINK_EXCLUDE_ECLIPSELINK_ORM, - EXCLUDE_ECLIPSELINK_ORM_TEST_VALUE); - return; - } - - @Override - protected PersistenceUnitProperties getModel() { - return this.generalProperty; - } - - // ****** ExcludeEclipselinkOrm ******* - private WritablePropertyValueModel<Boolean> buildExcludeEclipselinkOrmAA(PropertyValueModel<GeneralProperties> subjectHolder) { - return new PropertyAspectAdapter<GeneralProperties, Boolean>(subjectHolder, GeneralProperties.EXCLUDE_ECLIPSELINK_ORM_PROPERTY) { - @Override - protected Boolean buildValue_() { - return this.subject.getExcludeEclipselinkOrm(); - } - - @Override - protected void setValue_(Boolean enumValue) { - this.subject.setExcludeEclipselinkOrm(enumValue); - } - }; - } - - private PropertyChangeListener buildExcludeEclipselinkOrmChangeListener() { - return new PropertyChangeListener() { - public void propertyChanged(PropertyChangeEvent e) { - GeneralPropertiesValueModelTests.this.excludeEclipselinkOrmEvent = e; - } - }; - } - - // ****** Tests ******* - public void testValue() { - // ****** ExcludeEclipselinkOrm ******* - this.verifyExcludeEclipselinkOrmAAValue(EXCLUDE_ECLIPSELINK_ORM_TEST_VALUE); - assertEquals(GeneralProperties.DEFAULT_EXCLUDE_ECLIPSELINK_ORM, this.generalProperty.getDefaultExcludeEclipselinkOrm()); - } - - public void testSetValue() throws Exception { - // ****** ExcludeEclipselinkOrm ******* - this.excludeEclipselinkOrmEvent = null; - this.verifyHasListeners(this.excludeEclipselinkOrmHolder, PropertyValueModel.VALUE); - Boolean newExcludeEclipselinkOrm = !EXCLUDE_ECLIPSELINK_ORM_TEST_VALUE; - // Modify the property holder - this.excludeEclipselinkOrmHolder.setValue(newExcludeEclipselinkOrm); - this.verifyExcludeEclipselinkOrmAAValue(newExcludeEclipselinkOrm); - assertNotNull(this.excludeEclipselinkOrmEvent); - } - - public void testSetNullValue() { - String notDeleted = "Property not deleted"; - // ****** ExcludeEclipselinkOrm ******* - this.excludeEclipselinkOrmEvent = null; - // Setting the property holder - this.excludeEclipselinkOrmHolder.setValue(null); - // testing Holder - this.verifyExcludeEclipselinkOrmAAValue(null); - assertNotNull(this.excludeEclipselinkOrmEvent); - // testing PU properties - this.verifyPuHasNotProperty(GeneralProperties.ECLIPSELINK_EXCLUDE_ECLIPSELINK_ORM, notDeleted); - } - - // ****** convenience methods ******* - - /** - * Performs three value tests:<br> - * 1. subject value<br> - * 2. aspect adapter value<br> - * 3. persistenceUnit property value<br> - */ - protected void verifyExcludeEclipselinkOrmAAValue(Boolean testValue) { - this.verifyAAValue( - testValue, - this.generalProperty.getExcludeEclipselinkOrm(), - this.excludeEclipselinkOrmHolder, - GeneralProperties.ECLIPSELINK_EXCLUDE_ECLIPSELINK_ORM); - } - - // ********** get/set property ********** - @Override - protected void setProperty(String propertyName, Object newValue) throws Exception { - throw new UnsupportedOperationException(); - } - - @Override - protected Object getProperty(String propertyName) throws NoSuchFieldException { - throw new UnsupportedOperationException(); - } -} diff --git a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/general/JptEclipseLinkPersistenceGeneralTests.java b/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/general/JptEclipseLinkPersistenceGeneralTests.java deleted file mode 100644 index 1c0be55124..0000000000 --- a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/general/JptEclipseLinkPersistenceGeneralTests.java +++ /dev/null @@ -1,33 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2008 Oracle. 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: - * Oracle - initial API and implementation - ******************************************************************************/ -package org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.general; - -import junit.framework.Test; -import junit.framework.TestSuite; - -/** - * decentralize test creation code - */ -public class JptEclipseLinkPersistenceGeneralTests -{ - public static Test suite() { - TestSuite suite = new TestSuite(JptEclipseLinkPersistenceGeneralTests.class.getPackage().getName()); - - suite.addTestSuite(GeneralPropertiesValueModelTests.class); - suite.addTestSuite(GeneralPropertiesAdapterTests.class); - - return suite; - } - - private JptEclipseLinkPersistenceGeneralTests() { - super(); - throw new UnsupportedOperationException(); - } -} diff --git a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/logging/JptEclipseLinkPersistenceLoggingTests.java b/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/logging/JptEclipseLinkPersistenceLoggingTests.java deleted file mode 100644 index 30d275491f..0000000000 --- a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/logging/JptEclipseLinkPersistenceLoggingTests.java +++ /dev/null @@ -1,33 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2008 Oracle. 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: - * Oracle - initial API and implementation - ******************************************************************************/ -package org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.logging; - -import junit.framework.Test; -import junit.framework.TestSuite; - -/** - * decentralize test creation code - */ -public class JptEclipseLinkPersistenceLoggingTests -{ - public static Test suite() { - TestSuite suite = new TestSuite(JptEclipseLinkPersistenceLoggingTests.class.getPackage().getName()); - - suite.addTestSuite(LoggingValueModelTests.class); - suite.addTestSuite(LoggingAdapterTests.class); - - return suite; - } - - private JptEclipseLinkPersistenceLoggingTests() { - super(); - throw new UnsupportedOperationException(); - } -} diff --git a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/logging/LoggingAdapterTests.java b/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/logging/LoggingAdapterTests.java deleted file mode 100644 index 4a10869b36..0000000000 --- a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/logging/LoggingAdapterTests.java +++ /dev/null @@ -1,340 +0,0 @@ -/******************************************************************************* -* Copyright (c) 2008, 2010 Oracle. 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: -* Oracle - initial API and implementation -*******************************************************************************/ -package org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.logging; - -import org.eclipse.jpt.common.utility.model.listener.PropertyChangeListener; -import org.eclipse.jpt.jpa.core.context.persistence.PersistenceUnit; -import org.eclipse.jpt.jpa.core.context.persistence.PersistenceUnitProperties; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.logging.Logger; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.logging.Logging; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.logging.LoggingLevel; -import org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.EclipseLinkPersistenceUnitTestCase; - -/** - * Tests the update of model objects by the Logging adapter when the - * PersistenceUnit changes. - */ -@SuppressWarnings("nls") -public class LoggingAdapterTests extends EclipseLinkPersistenceUnitTestCase -{ - private Logging logging; - - public static final String LEVEL_KEY = Logging.ECLIPSELINK_LEVEL; - public static final LoggingLevel LEVEL_TEST_VALUE = LoggingLevel.fine; - public static final LoggingLevel LEVEL_TEST_VALUE_2 = LoggingLevel.finest; - - public static final String TIMESTAMP_KEY = Logging.ECLIPSELINK_TIMESTAMP; - public static final Boolean TIMESTAMP_TEST_VALUE = false; - public static final Boolean TIMESTAMP_TEST_VALUE_2 = ! TIMESTAMP_TEST_VALUE; - - public static final String THREAD_KEY = Logging.ECLIPSELINK_THREAD; - public static final Boolean THREAD_TEST_VALUE = false; - public static final Boolean THREAD_TEST_VALUE_2 = ! THREAD_TEST_VALUE; - - public static final String SESSION_KEY = Logging.ECLIPSELINK_SESSION; - public static final Boolean SESSION_TEST_VALUE = false; - public static final Boolean SESSION_TEST_VALUE_2 = ! SESSION_TEST_VALUE; - - public static final String EXCEPTIONS_KEY = Logging.ECLIPSELINK_EXCEPTIONS; - public static final Boolean EXCEPTIONS_TEST_VALUE = false; - public static final Boolean EXCEPTIONS_TEST_VALUE_2 = ! EXCEPTIONS_TEST_VALUE; - - private static final String LOG_FILE_LOCATION_KEY = Logging.ECLIPSELINK_LOG_FILE_LOCATION; - private static final String LOG_FILE_LOCATION_TEST_VALUE = "C:/temp"; - private static final String LOG_FILE_LOCATION_TEST_VALUE_2 = "C:/tmp"; - - private static final String LOGGER_KEY = Logging.ECLIPSELINK_LOGGER; - private static final Logger LOGGER_TEST_VALUE = Logger.java_logger; - private static final String LOGGER_TEST_VALUE_2 = "custom.logger.test"; - - public LoggingAdapterTests(String name) { - super(name); - } - - @Override - protected void setUp() throws Exception { - super.setUp(); - this.logging = this.subject.getLogging(); - PropertyChangeListener propertyChangeListener = this.buildPropertyChangeListener(); - - this.logging.addPropertyChangeListener(Logging.LEVEL_PROPERTY, propertyChangeListener); - this.logging.addPropertyChangeListener(Logging.TIMESTAMP_PROPERTY, propertyChangeListener); - this.logging.addPropertyChangeListener(Logging.THREAD_PROPERTY, propertyChangeListener); - this.logging.addPropertyChangeListener(Logging.SESSION_PROPERTY, propertyChangeListener); - this.logging.addPropertyChangeListener(Logging.EXCEPTIONS_PROPERTY, propertyChangeListener); - this.logging.addPropertyChangeListener(Logging.LOG_FILE_LOCATION_PROPERTY, propertyChangeListener); - this.logging.addPropertyChangeListener(Logging.LOGGER_PROPERTY, propertyChangeListener); - - this.clearEvent(); - } - - /** - * Initializes directly the PU properties before testing. - */ - @Override - protected void populatePu() { - this.modelPropertiesSizeOriginal = 7; - this.propertiesTotal = this.modelPropertiesSizeOriginal + 4; // 4 misc properties - this.modelPropertiesSize = this.modelPropertiesSizeOriginal; - - this.persistenceUnitSetProperty("misc.property.1", "value.1"); - this.persistenceUnitSetProperty(TIMESTAMP_KEY, TIMESTAMP_TEST_VALUE.toString()); - this.persistenceUnitSetProperty("misc.property.2", "value.2"); - this.persistenceUnitSetProperty(LEVEL_KEY, LEVEL_TEST_VALUE); - this.persistenceUnitSetProperty("misc.property.3", "value.3"); - this.persistenceUnitSetProperty(THREAD_KEY, THREAD_TEST_VALUE.toString()); - this.persistenceUnitSetProperty(SESSION_KEY, SESSION_TEST_VALUE.toString()); - this.persistenceUnitSetProperty(EXCEPTIONS_KEY, EXCEPTIONS_TEST_VALUE.toString()); - this.persistenceUnitSetProperty("misc.property.4", "value.4"); - this.persistenceUnitSetProperty(LOG_FILE_LOCATION_KEY, LOG_FILE_LOCATION_TEST_VALUE); - this.persistenceUnitSetProperty(LOGGER_KEY, LOGGER_TEST_VALUE); - return; - } - - // ********** Level tests ********** - public void testSetLevel() throws Exception { - this.verifyModelInitialized( - LEVEL_KEY, - LEVEL_TEST_VALUE); - this.verifySetProperty( - LEVEL_KEY, - LEVEL_TEST_VALUE, - LEVEL_TEST_VALUE_2); - } - - public void testAddRemoveLevel() throws Exception { - this.verifyAddRemoveProperty( - LEVEL_KEY, - LEVEL_TEST_VALUE, - LEVEL_TEST_VALUE_2); - } - - // ********** Timestamp tests ********** - public void testSetTimestamp() throws Exception { - this.verifyModelInitialized( - TIMESTAMP_KEY, - TIMESTAMP_TEST_VALUE); - this.verifySetProperty( - TIMESTAMP_KEY, - TIMESTAMP_TEST_VALUE, - TIMESTAMP_TEST_VALUE_2); - } - - public void testAddRemoveTimestamp() throws Exception { - this.verifyAddRemoveProperty( - TIMESTAMP_KEY, - TIMESTAMP_TEST_VALUE, - TIMESTAMP_TEST_VALUE_2); - } - - // ********** Thread tests ********** - public void testSetThread() throws Exception { - this.verifyModelInitialized( - THREAD_KEY, - THREAD_TEST_VALUE); - this.verifySetProperty( - THREAD_KEY, - THREAD_TEST_VALUE, - THREAD_TEST_VALUE_2); - } - - public void testAddRemoveThread() throws Exception { - this.verifyAddRemoveProperty( - THREAD_KEY, - THREAD_TEST_VALUE, - THREAD_TEST_VALUE_2); - } - - // ********** Session tests ********** - public void testSetSession() throws Exception { - this.verifyModelInitialized( - SESSION_KEY, - SESSION_TEST_VALUE); - this.verifySetProperty( - SESSION_KEY, - SESSION_TEST_VALUE, - SESSION_TEST_VALUE_2); - } - - public void testAddRemoveSession() throws Exception { - this.verifyAddRemoveProperty( - SESSION_KEY, - SESSION_TEST_VALUE, - SESSION_TEST_VALUE_2); - } - - // ********** Exceptions tests ********** - public void testSetExceptions() throws Exception { - this.verifyModelInitialized( - EXCEPTIONS_KEY, - EXCEPTIONS_TEST_VALUE); - this.verifySetProperty( - EXCEPTIONS_KEY, - EXCEPTIONS_TEST_VALUE, - EXCEPTIONS_TEST_VALUE_2); - } - - public void testAddRemoveExceptions() throws Exception { - this.verifyAddRemoveProperty( - EXCEPTIONS_KEY, - EXCEPTIONS_TEST_VALUE, - EXCEPTIONS_TEST_VALUE_2); - } - - // ********** LogFileLocation ********** - public void testSetLogFileLocation() throws Exception { - this.verifyModelInitialized( - LOG_FILE_LOCATION_KEY, - LOG_FILE_LOCATION_TEST_VALUE); - this.verifySetProperty( - LOG_FILE_LOCATION_KEY, - LOG_FILE_LOCATION_TEST_VALUE, - LOG_FILE_LOCATION_TEST_VALUE_2); - } - - public void testAddRemoveLogFileLocation() throws Exception { - this.verifyAddRemoveProperty( - LOG_FILE_LOCATION_KEY, - LOG_FILE_LOCATION_TEST_VALUE, - LOG_FILE_LOCATION_TEST_VALUE_2); - } - - public void testSetEmptyFileLocation() throws Exception { - String puKey = LOG_FILE_LOCATION_KEY; - PersistenceUnit.Property property = this.getPersistenceUnit().getProperty(puKey); - String propertyName = this.getModel().propertyIdOf(property); - - // Set FileLocation to "" & verify that the property is deleted - this.verifyPuHasProperty(puKey, "persistenceUnit.properties doesn't contains: "); - this.setProperty(propertyName, ""); - - this.verifyPuHasNotProperty(puKey, "Property was not deleted"); - this.verifyPutProperty(propertyName, null); - assertNull(this.getPersistenceUnit().getProperty(puKey)); - } - - // ********** Logger tests ********** - public void testSetLogger() throws Exception { - this.verifyModelInitialized( - LOGGER_KEY, - this.getPropertyStringValueOf(LOGGER_TEST_VALUE)); // model is storing EclipseLinkStringValue - // verify set enum value - this.verifySetProperty( - LOGGER_KEY, - LOGGER_TEST_VALUE, - LOGGER_TEST_VALUE_2); - // verify set custom and literal value - this.verifySetLogger( - LOGGER_KEY, - LOGGER_TEST_VALUE, - LOGGER_TEST_VALUE_2); - } - - public void testAddRemoveLogger() throws Exception { - this.verifyAddRemoveProperty( - LOGGER_KEY, - LOGGER_TEST_VALUE, - LOGGER_TEST_VALUE_2); - } - - /** - * Verifies setting custom logger and literals. - */ - protected void verifySetLogger(String elKey, Object testValue1, Object testValue2) throws Exception { - PersistenceUnit.Property property = this.getPersistenceUnit().getProperty(elKey); - String propertyName = this.getModel().propertyIdOf(property); - // test set custom logger. - this.clearEvent(); - this.setProperty(propertyName, testValue2); - this.verifyPutProperty(propertyName, testValue2); - - // test set (Logger) null - this.clearEvent(); - this.logging.setLogger((Logger) null); - assertNull(this.getPersistenceUnit().getProperty(elKey)); - this.verifyPutProperty(propertyName, null); - - // test set enum literal - this.clearEvent(); - this.setProperty(propertyName, testValue1.toString()); - assertNotNull(this.getPersistenceUnit().getProperty(elKey)); - this.verifyPutProperty(propertyName, this.getPropertyStringValueOf(testValue1)); - - // test set (String) null - this.clearEvent(); - this.logging.setLogger((String) null); - assertNull(this.getPersistenceUnit().getProperty(elKey)); - this.verifyPutProperty(propertyName, null); - } - - // ********** get/set property ********** - @Override - protected void setProperty(String propertyName, Object newValue) throws Exception { - if (propertyName.equals(Logging.LEVEL_PROPERTY)) - this.logging.setLevel((LoggingLevel) newValue); - else if (propertyName.equals(Logging.TIMESTAMP_PROPERTY)) - this.logging.setTimestamp((Boolean) newValue); - else if (propertyName.equals(Logging.THREAD_PROPERTY)) - this.logging.setThread((Boolean) newValue); - else if (propertyName.equals(Logging.SESSION_PROPERTY)) - this.logging.setSession((Boolean) newValue); - else if (propertyName.equals(Logging.EXCEPTIONS_PROPERTY)) - this.logging.setExceptions((Boolean) newValue); - else if (propertyName.equals(Logging.LOG_FILE_LOCATION_PROPERTY)) - this.logging.setLogFileLocation((String) newValue); - else if (propertyName.equals(Logging.LOGGER_PROPERTY)) { - if (newValue.getClass().isEnum()) - this.logging.setLogger((Logger) newValue); - else - this.logging.setLogger((String) newValue); - } - else - this.throwMissingDefinition("setProperty", propertyName); - } - - @Override - protected Object getProperty(String propertyName) throws NoSuchFieldException { - Object modelValue = null; - if (propertyName.equals(Logging.LEVEL_PROPERTY)) - modelValue = this.logging.getLevel(); - else if (propertyName.equals(Logging.TIMESTAMP_PROPERTY)) - modelValue = this.logging.getTimestamp(); - else if (propertyName.equals(Logging.THREAD_PROPERTY)) - modelValue = this.logging.getThread(); - else if (propertyName.equals(Logging.SESSION_PROPERTY)) - modelValue = this.logging.getSession(); - else if (propertyName.equals(Logging.EXCEPTIONS_PROPERTY)) - modelValue = this.logging.getExceptions(); - else if (propertyName.equals(Logging.LOG_FILE_LOCATION_PROPERTY)) - modelValue = this.logging.getLogFileLocation(); - else if (propertyName.equals(Logging.LOGGER_PROPERTY)) - modelValue = this.logging.getLogger(); - else - this.throwMissingDefinition("getProperty", propertyName); - return modelValue; - } - - @Override - protected void verifyPutProperty(String propertyName, Object expectedValue) throws Exception { - Object expectedValue_ = expectedValue; - if (propertyName.equals(Logging.LOGGER_PROPERTY)) { - - expectedValue_ = (expectedValue != null && expectedValue.getClass().isEnum()) ? - this.getPropertyStringValueOf(LOGGER_TEST_VALUE) : // model is storing EclipseLinkStringValue - expectedValue; - } - super.verifyPutProperty(propertyName, expectedValue_); - } - - @Override - protected PersistenceUnitProperties getModel() { - return this.logging; - } -} diff --git a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/logging/LoggingValueModelTests.java b/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/logging/LoggingValueModelTests.java deleted file mode 100644 index cf1076f1bb..0000000000 --- a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/logging/LoggingValueModelTests.java +++ /dev/null @@ -1,162 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2008, 2009 Oracle. 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: - * Oracle - initial API and implementation - *******************************************************************************/ -package org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.logging; - -import org.eclipse.jpt.common.utility.internal.model.AbstractModel; -import org.eclipse.jpt.common.utility.internal.model.value.PropertyAspectAdapter; -import org.eclipse.jpt.common.utility.internal.model.value.SimplePropertyValueModel; -import org.eclipse.jpt.common.utility.model.event.PropertyChangeEvent; -import org.eclipse.jpt.common.utility.model.listener.PropertyChangeListener; -import org.eclipse.jpt.common.utility.model.value.PropertyValueModel; -import org.eclipse.jpt.common.utility.model.value.WritablePropertyValueModel; -import org.eclipse.jpt.jpa.core.context.persistence.PersistenceUnitProperties; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.logging.Logging; -import org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.EclipseLinkPersistenceUnitTestCase; - -/** - * LoggingValueModelTests - */ -@SuppressWarnings("nls") -public class LoggingValueModelTests extends EclipseLinkPersistenceUnitTestCase -{ - private Logging logging; - - private WritablePropertyValueModel<Boolean> timestampHolder; - private PropertyChangeListener timestampListener; - private PropertyChangeEvent timestampEvent; - - public static final Boolean TIMESTAMP_TEST_VALUE = Boolean.FALSE; - - public LoggingValueModelTests(String name) { - super(name); - } - - @Override - protected void setUp() throws Exception { - super.setUp(); - this.logging = this.subject.getLogging(); // Subject - PropertyValueModel<Logging> loggingHolder = new SimplePropertyValueModel<Logging>(this.logging); - - this.timestampHolder = this.buildTimestampAA(loggingHolder); - this.timestampListener = this.buildTimestampChangeListener(); - this.timestampHolder.addPropertyChangeListener(PropertyValueModel.VALUE, this.timestampListener); - this.timestampEvent = null; - } - - public void testHasListeners() { - AbstractModel subjectLogging = (AbstractModel) this.logging; // Subject - - PropertyAspectAdapter<Logging, Boolean> timestampAA = - (PropertyAspectAdapter<Logging, Boolean>) this.timestampHolder; - assertTrue(timestampAA.hasAnyPropertyChangeListeners(PropertyValueModel.VALUE)); - assertTrue(subjectLogging.hasAnyPropertyChangeListeners(Logging.TIMESTAMP_PROPERTY)); - - timestampAA.removePropertyChangeListener(PropertyValueModel.VALUE, this.timestampListener); - assertFalse(subjectLogging.hasAnyPropertyChangeListeners(Logging.TIMESTAMP_PROPERTY)); - assertFalse(timestampAA.hasAnyPropertyChangeListeners(PropertyValueModel.VALUE)); - } - - /** - * Initializes directly the PU properties before testing. - */ - @Override - protected void populatePu() { - this.persistenceUnitSetProperty( - Logging.ECLIPSELINK_TIMESTAMP, - TIMESTAMP_TEST_VALUE); - return; - } - - @Override - protected PersistenceUnitProperties getModel() { - return this.logging; - } - - // ****** Timestamp ******* - private WritablePropertyValueModel<Boolean> buildTimestampAA(PropertyValueModel<Logging> subjectHolder) { - return new PropertyAspectAdapter<Logging, Boolean>(subjectHolder, Logging.TIMESTAMP_PROPERTY) { - @Override - protected Boolean buildValue_() { - return this.subject.getTimestamp(); - } - - @Override - protected void setValue_(Boolean enumValue) { - this.subject.setTimestamp(enumValue); - } - }; - } - - private PropertyChangeListener buildTimestampChangeListener() { - return new PropertyChangeListener() { - public void propertyChanged(PropertyChangeEvent e) { - LoggingValueModelTests.this.timestampEvent = e; - } - }; - } - - // ****** Tests ******* - public void testValue() { - // ****** Timestamp ******* - this.verifyTimestampAAValue(TIMESTAMP_TEST_VALUE); - assertEquals(Logging.DEFAULT_TIMESTAMP, this.logging.getDefaultTimestamp()); - } - - public void testSetValue() throws Exception { - // ****** Timestamp ******* - this.timestampEvent = null; - this.verifyHasListeners(this.timestampHolder, PropertyValueModel.VALUE); - Boolean newTimestamp = !TIMESTAMP_TEST_VALUE; - // Modify the property holder - this.timestampHolder.setValue(newTimestamp); - this.verifyTimestampAAValue(newTimestamp); - assertNotNull(this.timestampEvent); - } - - public void testSetNullValue() { - String notDeleted = "Property not deleted"; - // ****** Timestamp ******* - this.timestampEvent = null; - // Setting the property holder - this.timestampHolder.setValue(null); - // testing Holder - this.verifyTimestampAAValue(null); - assertNotNull(this.timestampEvent); - // testing PU properties - this.verifyPuHasNotProperty(Logging.ECLIPSELINK_TIMESTAMP, notDeleted); - } - - // ****** convenience methods ******* - - /** - * Performs three value tests:<br> - * 1. subject value<br> - * 2. aspect adapter value<br> - * 3. persistenceUnit property value<br> - */ - protected void verifyTimestampAAValue(Boolean testValue) { - this.verifyAAValue( - testValue, - this.logging.getTimestamp(), - this.timestampHolder, - Logging.ECLIPSELINK_TIMESTAMP); - } - - // ********** get/set property ********** - @Override - protected void setProperty(String propertyName, Object newValue) throws Exception { - throw new UnsupportedOperationException(); - } - - @Override - protected Object getProperty(String propertyName) throws NoSuchFieldException { - throw new UnsupportedOperationException(); - } -} diff --git a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/options/JptEclipseLinkPersistenceOptionsTests.java b/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/options/JptEclipseLinkPersistenceOptionsTests.java deleted file mode 100644 index 102a23f641..0000000000 --- a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/options/JptEclipseLinkPersistenceOptionsTests.java +++ /dev/null @@ -1,33 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2008 Oracle. 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: - * Oracle - initial API and implementation - ******************************************************************************/ -package org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.options; - -import junit.framework.Test; -import junit.framework.TestSuite; - -/** - * decentralize test creation code - */ -public class JptEclipseLinkPersistenceOptionsTests -{ - public static Test suite() { - TestSuite suite = new TestSuite(JptEclipseLinkPersistenceOptionsTests.class.getPackage().getName()); - - suite.addTestSuite(OptionsValueModelTests.class); - suite.addTestSuite(OptionsAdapterTests.class); - - return suite; - } - - private JptEclipseLinkPersistenceOptionsTests() { - super(); - throw new UnsupportedOperationException(); - } -} diff --git a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/options/OptionsAdapterTests.java b/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/options/OptionsAdapterTests.java deleted file mode 100644 index 4fd722d6fd..0000000000 --- a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/options/OptionsAdapterTests.java +++ /dev/null @@ -1,380 +0,0 @@ -/******************************************************************************* -* Copyright (c) 2008, 2009 Oracle. 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: -* Oracle - initial API and implementation -*******************************************************************************/ -package org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.options; - -import org.eclipse.jpt.common.utility.model.listener.PropertyChangeListener; -import org.eclipse.jpt.jpa.core.context.persistence.PersistenceUnit; -import org.eclipse.jpt.jpa.core.context.persistence.PersistenceUnitProperties; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.options.Options; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.options.TargetDatabase; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.options.TargetServer; -import org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.EclipseLinkPersistenceUnitTestCase; - -/** - * Tests the update of model objects by the Option adapter when the - * PersistenceUnit changes. - */ -@SuppressWarnings("nls") -public class OptionsAdapterTests extends EclipseLinkPersistenceUnitTestCase -{ - private Options options; - - private static final String SESSION_NAME_KEY = Options.ECLIPSELINK_SESSION_NAME; - private static final String SESSION_NAME_TEST_VALUE = "session-name.test"; - private static final String SESSION_NAME_TEST_VALUE_2 = "session-name-2.test"; - - private static final String SESSIONS_XML_KEY = Options.ECLIPSELINK_SESSIONS_XML; - private static final String SESSIONS_XML_TEST_VALUE = "sessions-xml.test"; - private static final String SESSIONS_XML_TEST_VALUE_2 = "sessions-xml-2.test"; - - public static final String TARGET_DATABASE_KEY = Options.ECLIPSELINK_TARGET_DATABASE; - public static final TargetDatabase TARGET_DATABASE_TEST_VALUE = TargetDatabase.cloudscape; - public static final String TARGET_DATABASE_TEST_VALUE_2 = "custom.targetDatabase.test"; - - private static final String TARGET_SERVER_KEY = Options.ECLIPSELINK_TARGET_SERVER; - private static final TargetServer TARGET_SERVER_TEST_VALUE = TargetServer.weblogic_9; - private static final String TARGET_SERVER_TEST_VALUE_2 = "custom.targetServer.test"; - - public static final String INCLUDE_DESCRIPTOR_QUERIES_KEY = Options.ECLIPSELINK_SESSION_INCLUDE_DESCRIPTOR_QUERIES; - public static final Boolean INCLUDE_DESCRIPTOR_QUERIES_TEST_VALUE = false; - public static final Boolean INCLUDE_DESCRIPTOR_QUERIES_TEST_VALUE_2 = ! INCLUDE_DESCRIPTOR_QUERIES_TEST_VALUE; - - public static final String SESSION_EVENT_LISTENER_KEY = Options.ECLIPSELINK_SESSION_EVENT_LISTENER; - public static final String SESSION_EVENT_LISTENER_TEST_VALUE = "acme.CustomSessionEventListener"; - public static final String SESSION_EVENT_LISTENER_TEST_VALUE_2 = "oracle.sessions.CustomSessionEventListener"; - - public static final String TEMPORAL_MUTABLE_KEY = Options.ECLIPSELINK_TEMPORAL_MUTABLE; - public static final Boolean TEMPORAL_MUTABLE_TEST_VALUE = true; - public static final Boolean TEMPORAL_MUTABLE_TEST_VALUE_2 = ! TEMPORAL_MUTABLE_TEST_VALUE; - - public OptionsAdapterTests(String name) { - super(name); - } - - @Override - protected void setUp() throws Exception { - super.setUp(); - this.options = this.subject.getOptions(); - PropertyChangeListener propertyChangeListener = this.buildPropertyChangeListener(); - - this.options.addPropertyChangeListener(Options.SESSION_NAME_PROPERTY, propertyChangeListener); - this.options.addPropertyChangeListener(Options.SESSIONS_XML_PROPERTY, propertyChangeListener); - this.options.addPropertyChangeListener(Options.TARGET_DATABASE_PROPERTY, propertyChangeListener); - this.options.addPropertyChangeListener(Options.TARGET_SERVER_PROPERTY, propertyChangeListener); - this.options.addPropertyChangeListener(Options.SESSION_EVENT_LISTENER_PROPERTY, propertyChangeListener); - this.options.addPropertyChangeListener( - Options.SESSION_INCLUDE_DESCRIPTOR_QUERIES_PROPERTY, propertyChangeListener); - this.options.addPropertyChangeListener(Options.TEMPORAL_MUTABLE_PROPERTY, propertyChangeListener); - - this.clearEvent(); - } - - /** - * Initializes directly the PU properties before testing. - */ - @Override - protected void populatePu() { - this.modelPropertiesSizeOriginal = 7; - this.propertiesTotal = this.modelPropertiesSizeOriginal + 4; // 4 misc properties - this.modelPropertiesSize = this.modelPropertiesSizeOriginal; - - this.persistenceUnitSetProperty(SESSION_NAME_KEY, SESSION_NAME_TEST_VALUE); - this.persistenceUnitSetProperty(SESSIONS_XML_KEY, SESSIONS_XML_TEST_VALUE); - this.persistenceUnitSetProperty("misc.property.1", "value.1"); - this.persistenceUnitSetProperty(INCLUDE_DESCRIPTOR_QUERIES_KEY, INCLUDE_DESCRIPTOR_QUERIES_TEST_VALUE.toString()); - this.persistenceUnitSetProperty("misc.property.2", "value.2"); - this.persistenceUnitSetProperty("misc.property.3", "value.3"); - this.persistenceUnitSetProperty(TARGET_DATABASE_KEY, TARGET_DATABASE_TEST_VALUE); - this.persistenceUnitSetProperty(TARGET_SERVER_KEY, TARGET_SERVER_TEST_VALUE); - this.persistenceUnitSetProperty(SESSION_EVENT_LISTENER_KEY, SESSION_EVENT_LISTENER_TEST_VALUE); - this.persistenceUnitSetProperty("misc.property.4", "value.4"); - this.persistenceUnitSetProperty(TEMPORAL_MUTABLE_KEY, TEMPORAL_MUTABLE_TEST_VALUE.toString()); - return; - } - - // ********** Listeners ********** - - // ********** SessionName tests ********** - public void testSetSessionName() throws Exception { - this.verifyModelInitialized( - SESSION_NAME_KEY, - SESSION_NAME_TEST_VALUE); - this.verifySetProperty( - SESSION_NAME_KEY, - SESSION_NAME_TEST_VALUE, - SESSION_NAME_TEST_VALUE_2); - } - - public void testAddRemoveSessionName() throws Exception { - this.verifyAddRemoveProperty( - SESSION_NAME_KEY, - SESSION_NAME_TEST_VALUE, - SESSION_NAME_TEST_VALUE_2); - } - - // ********** SessionsXml tests ********** - public void testSetSessionsXml() throws Exception { - this.verifyModelInitialized( - SESSIONS_XML_KEY, - SESSIONS_XML_TEST_VALUE); - this.verifySetProperty( - SESSIONS_XML_KEY, - SESSIONS_XML_TEST_VALUE, - SESSIONS_XML_TEST_VALUE_2); - } - - public void testAddRemoveSessionsXml() throws Exception { - this.verifyAddRemoveProperty( - SESSIONS_XML_KEY, - SESSIONS_XML_TEST_VALUE, - SESSIONS_XML_TEST_VALUE_2); - } - - // ********** IncludeDescriptorQueries tests ********** - public void testSetIncludeDescriptorQueries() throws Exception { - this.verifyModelInitialized( - INCLUDE_DESCRIPTOR_QUERIES_KEY, - INCLUDE_DESCRIPTOR_QUERIES_TEST_VALUE); - this.verifySetProperty( - INCLUDE_DESCRIPTOR_QUERIES_KEY, - INCLUDE_DESCRIPTOR_QUERIES_TEST_VALUE, - INCLUDE_DESCRIPTOR_QUERIES_TEST_VALUE_2); - } - - public void testAddRemoveIncludeDescriptorQueries() throws Exception { - this.verifyAddRemoveProperty( - INCLUDE_DESCRIPTOR_QUERIES_KEY, - INCLUDE_DESCRIPTOR_QUERIES_TEST_VALUE, - INCLUDE_DESCRIPTOR_QUERIES_TEST_VALUE_2); - } - - // ********** TargetDatabase tests ********** - public void testSetTargetDatabase() throws Exception { - this.verifyModelInitialized( - TARGET_DATABASE_KEY, - this.getPropertyStringValueOf(TARGET_DATABASE_TEST_VALUE)); // model is storing EclipseLinkStringValue - this.verifySetProperty( - TARGET_DATABASE_KEY, - TARGET_DATABASE_TEST_VALUE, - TARGET_DATABASE_TEST_VALUE_2); - // verify set custom and literal value - this.verifySetTargetDatabase( - TARGET_DATABASE_KEY, - TARGET_DATABASE_TEST_VALUE, - TARGET_DATABASE_TEST_VALUE_2); - } - - public void testAddRemoveTargetDatabase() throws Exception { - this.verifyAddRemoveProperty( - TARGET_DATABASE_KEY, - TARGET_DATABASE_TEST_VALUE, - TARGET_DATABASE_TEST_VALUE_2); - } - - /** - * Verifies setting custom targetDatabase and literals. - */ - protected void verifySetTargetDatabase(String elKey, Object testValue1, Object testValue2) throws Exception { - PersistenceUnit.Property property = this.getPersistenceUnit().getProperty(elKey); - String propertyName = this.getModel().propertyIdOf(property); - // test set custom targetDatabase. - this.clearEvent(); - this.setProperty(propertyName, testValue2); - this.verifyPutProperty(propertyName, testValue2); - - // test set (TargetDatabase) null - this.clearEvent(); - this.options.setTargetDatabase((TargetDatabase) null); - assertNull(this.getPersistenceUnit().getProperty(elKey)); - this.verifyPutProperty(propertyName, null); - - // test set enum literal - this.clearEvent(); - this.setProperty(propertyName, testValue1.toString()); - assertNotNull(this.getPersistenceUnit().getProperty(elKey)); - this.verifyPutProperty(propertyName, this.getPropertyStringValueOf(testValue1)); - - // test set (String) null - this.clearEvent(); - this.options.setTargetDatabase((String) null); - assertNull(this.getPersistenceUnit().getProperty(elKey)); - this.verifyPutProperty(propertyName, null); - } - - // ********** TargetServer tests ********** - public void testSetTargetServer() throws Exception { - this.verifyModelInitialized( - TARGET_SERVER_KEY, - this.getPropertyStringValueOf(TARGET_SERVER_TEST_VALUE)); // model is storing EclipseLinkStringValue - // verify set enum value - this.verifySetProperty( - TARGET_SERVER_KEY, - TARGET_SERVER_TEST_VALUE, - TARGET_SERVER_TEST_VALUE_2); - // verify set custom and literal value - this.verifySetTargetServer( - TARGET_SERVER_KEY, - TARGET_SERVER_TEST_VALUE, - TARGET_SERVER_TEST_VALUE_2); - } - - public void testAddRemoveTargetServer() throws Exception { - this.verifyAddRemoveProperty( - TARGET_SERVER_KEY, - TARGET_SERVER_TEST_VALUE, - TARGET_SERVER_TEST_VALUE_2); - } - - /** - * Verifies setting custom targetServer and literals. - */ - protected void verifySetTargetServer(String elKey, Object testValue1, Object testValue2) throws Exception { - PersistenceUnit.Property property = this.getPersistenceUnit().getProperty(elKey); - String propertyName = this.getModel().propertyIdOf(property); - // test set custom targetServer. - this.clearEvent(); - this.setProperty(propertyName, testValue2); - this.verifyPutProperty(propertyName, testValue2); - - // test set (TargetServer) null - this.clearEvent(); - this.options.setTargetServer((TargetServer) null); - assertNull(this.getPersistenceUnit().getProperty(elKey)); - this.verifyPutProperty(propertyName, null); - - // test set enum literal - this.clearEvent(); - this.setProperty(propertyName, testValue1.toString()); - assertNotNull(this.getPersistenceUnit().getProperty(elKey)); - this.verifyPutProperty(propertyName, this.getPropertyStringValueOf(testValue1)); - - // test set (String) null - this.clearEvent(); - this.options.setTargetServer((String) null); - assertNull(this.getPersistenceUnit().getProperty(elKey)); - this.verifyPutProperty(propertyName, null); - } - - // ********** EventListener tests ********** - public void testSetEventListener() throws Exception { - this.verifyModelInitialized( - SESSION_EVENT_LISTENER_KEY, - SESSION_EVENT_LISTENER_TEST_VALUE); - this.verifySetProperty( - SESSION_EVENT_LISTENER_KEY, - SESSION_EVENT_LISTENER_TEST_VALUE, - SESSION_EVENT_LISTENER_TEST_VALUE_2); - } - - public void testAddRemoveEventListener() throws Exception { - this.verifyAddRemoveProperty( - SESSION_EVENT_LISTENER_KEY, - SESSION_EVENT_LISTENER_TEST_VALUE, - SESSION_EVENT_LISTENER_TEST_VALUE_2); - } - - // ********** TemporalMutable tests ********** - public void testSetTemporalMutable() throws Exception { - this.verifyModelInitialized( - TEMPORAL_MUTABLE_KEY, - TEMPORAL_MUTABLE_TEST_VALUE); - this.verifySetProperty( - TEMPORAL_MUTABLE_KEY, - TEMPORAL_MUTABLE_TEST_VALUE, - TEMPORAL_MUTABLE_TEST_VALUE_2); - } - - public void testAddRemoveTemporalMutable() throws Exception { - this.verifyAddRemoveProperty( - TEMPORAL_MUTABLE_KEY, - TEMPORAL_MUTABLE_TEST_VALUE, - TEMPORAL_MUTABLE_TEST_VALUE_2); - } - - // ********** get/set property ********** - @Override - protected void setProperty(String propertyName, Object newValue) throws Exception { - if (propertyName.equals(Options.SESSION_NAME_PROPERTY)) - this.options.setSessionName((String) newValue); - else if (propertyName.equals(Options.SESSIONS_XML_PROPERTY)) - this.options.setSessionsXml((String) newValue); - else if (propertyName.equals(Options.SESSION_INCLUDE_DESCRIPTOR_QUERIES_PROPERTY)) - this.options.setIncludeDescriptorQueries((Boolean) newValue); - else if (propertyName.equals(Options.TARGET_DATABASE_PROPERTY)) - this.setTargetDatabaseProperty(newValue); - else if (propertyName.equals(Options.TARGET_SERVER_PROPERTY)) - this.setTargetServerProperty(newValue); - else if (propertyName.equals(Options.SESSION_EVENT_LISTENER_PROPERTY)) - this.options.setEventListener((String) newValue); - else if (propertyName.equals(Options.TEMPORAL_MUTABLE_PROPERTY)) - this.options.setTemporalMutable((Boolean) newValue); - else - this.throwMissingDefinition("setProperty", propertyName); - } - - private void setTargetDatabaseProperty(Object newValue) { - if (newValue.getClass().isEnum()) - this.options.setTargetDatabase((TargetDatabase) newValue); - else - this.options.setTargetDatabase((String) newValue); - } - - private void setTargetServerProperty(Object newValue) { - if (newValue.getClass().isEnum()) - this.options.setTargetServer((TargetServer) newValue); - else - this.options.setTargetServer((String) newValue); - } - - @Override - protected Object getProperty(String propertyName) throws NoSuchFieldException { - Object modelValue = null; - if (propertyName.equals(Options.SESSION_NAME_PROPERTY)) - modelValue = this.options.getSessionName(); - else if (propertyName.equals(Options.SESSIONS_XML_PROPERTY)) - modelValue = this.options.getSessionsXml(); - else if (propertyName.equals(Options.SESSION_INCLUDE_DESCRIPTOR_QUERIES_PROPERTY)) - modelValue = this.options.getIncludeDescriptorQueries(); - else if (propertyName.equals(Options.TARGET_DATABASE_PROPERTY)) - modelValue = this.options.getTargetDatabase(); - else if (propertyName.equals(Options.TARGET_SERVER_PROPERTY)) - modelValue = this.options.getTargetServer(); - else if (propertyName.equals(Options.SESSION_EVENT_LISTENER_PROPERTY)) - modelValue = this.options.getEventListener(); - else if (propertyName.equals(Options.TEMPORAL_MUTABLE_PROPERTY)) - modelValue = this.options.getTemporalMutable(); - else - this.throwMissingDefinition("getProperty", propertyName); - return modelValue; - } - - @Override - protected void verifyPutProperty(String propertyName, Object expectedValue) throws Exception { - Object expectedValue_ = expectedValue; - if (propertyName.equals(Options.TARGET_DATABASE_PROPERTY) || - propertyName.equals(Options.TARGET_SERVER_PROPERTY)) { - - expectedValue_ = this.convertToEclipseLinkStringValue(expectedValue); - } - - super.verifyPutProperty(propertyName, expectedValue_); - } - - private String convertToEclipseLinkStringValue(Object expectedValue) { - return (String) ((expectedValue != null && expectedValue.getClass().isEnum()) ? - this.getPropertyStringValueOf(expectedValue) : // model is storing EclipseLinkStringValue - expectedValue); // already a EclipseLinkStringValue - } - - @Override - protected PersistenceUnitProperties getModel() { - return this.options; - } -} diff --git a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/options/OptionsValueModelTests.java b/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/options/OptionsValueModelTests.java deleted file mode 100644 index 8ba58a029b..0000000000 --- a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/options/OptionsValueModelTests.java +++ /dev/null @@ -1,161 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2008, 2009 Oracle. 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: - * Oracle - initial API and implementation - *******************************************************************************/ -package org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.options; - -import org.eclipse.jpt.common.utility.internal.model.AbstractModel; -import org.eclipse.jpt.common.utility.internal.model.value.PropertyAspectAdapter; -import org.eclipse.jpt.common.utility.internal.model.value.SimplePropertyValueModel; -import org.eclipse.jpt.common.utility.model.event.PropertyChangeEvent; -import org.eclipse.jpt.common.utility.model.listener.PropertyChangeListener; -import org.eclipse.jpt.common.utility.model.value.PropertyValueModel; -import org.eclipse.jpt.common.utility.model.value.WritablePropertyValueModel; -import org.eclipse.jpt.jpa.core.context.persistence.PersistenceUnitProperties; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.options.Options; -import org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.EclipseLinkPersistenceUnitTestCase; - -/** - * OptionsValueModelTests - */ -public class OptionsValueModelTests extends EclipseLinkPersistenceUnitTestCase -{ - private Options options; - - private WritablePropertyValueModel<Boolean> includeDescriptorQueriesHolder; - private PropertyChangeListener includeDescriptorQueriesListener; - private PropertyChangeEvent includeDescriptorQueriesEvent; - - public static final Boolean INCLUDE_DESCRIPTOR_QUERIES_TEST_VALUE = Boolean.FALSE; - - public OptionsValueModelTests(String name) { - super(name); - } - - @Override - protected void setUp() throws Exception { - super.setUp(); - this.options = this.subject.getOptions(); // Subject - PropertyValueModel<Options> optionsHolder = new SimplePropertyValueModel<Options>(this.options); - - this.includeDescriptorQueriesHolder = this.buildIncludeDescriptorQueriesAA(optionsHolder); - this.includeDescriptorQueriesListener = this.buildIncludeDescriptorQueriesChangeListener(); - this.includeDescriptorQueriesHolder.addPropertyChangeListener(PropertyValueModel.VALUE, this.includeDescriptorQueriesListener); - this.includeDescriptorQueriesEvent = null; - } - - public void testHasListeners() { - AbstractModel subjectOptions = (AbstractModel) this.options; // Subject - - PropertyAspectAdapter<Options, Boolean> includeDescriptorQueriesAA = - (PropertyAspectAdapter<Options, Boolean>) this.includeDescriptorQueriesHolder; - assertTrue(includeDescriptorQueriesAA.hasAnyPropertyChangeListeners(PropertyValueModel.VALUE)); - assertTrue(subjectOptions.hasAnyPropertyChangeListeners(Options.SESSION_INCLUDE_DESCRIPTOR_QUERIES_PROPERTY)); - - includeDescriptorQueriesAA.removePropertyChangeListener(PropertyValueModel.VALUE, this.includeDescriptorQueriesListener); - assertFalse(subjectOptions.hasAnyPropertyChangeListeners(Options.SESSION_INCLUDE_DESCRIPTOR_QUERIES_PROPERTY)); - assertFalse(includeDescriptorQueriesAA.hasAnyPropertyChangeListeners(PropertyValueModel.VALUE)); - } - - /** - * Initializes directly the PU properties before testing. - */ - @Override - protected void populatePu() { - this.persistenceUnitSetProperty( - Options.ECLIPSELINK_SESSION_INCLUDE_DESCRIPTOR_QUERIES, - INCLUDE_DESCRIPTOR_QUERIES_TEST_VALUE); - return; - } - - @Override - protected PersistenceUnitProperties getModel() { - return this.options; - } - - // ****** IncludeDescriptorQueries ******* - private WritablePropertyValueModel<Boolean> buildIncludeDescriptorQueriesAA(PropertyValueModel<Options> subjectHolder) { - return new PropertyAspectAdapter<Options, Boolean>(subjectHolder, Options.SESSION_INCLUDE_DESCRIPTOR_QUERIES_PROPERTY) { - @Override - protected Boolean buildValue_() { - return this.subject.getIncludeDescriptorQueries(); - } - - @Override - protected void setValue_(Boolean enumValue) { - this.subject.setIncludeDescriptorQueries(enumValue); - } - }; - } - - private PropertyChangeListener buildIncludeDescriptorQueriesChangeListener() { - return new PropertyChangeListener() { - public void propertyChanged(PropertyChangeEvent e) { - OptionsValueModelTests.this.includeDescriptorQueriesEvent = e; - } - }; - } - - // ****** Tests ******* - public void testValue() { - // ****** IncludeDescriptorQueries ******* - this.verifyIncludeDescriptorQueriesAAValue(INCLUDE_DESCRIPTOR_QUERIES_TEST_VALUE); - assertEquals(Options.DEFAULT_SESSION_INCLUDE_DESCRIPTOR_QUERIES, this.options.getDefaultIncludeDescriptorQueries()); - } - - public void testSetValue() throws Exception { - // ****** IncludeDescriptorQueries ******* - this.includeDescriptorQueriesEvent = null; - this.verifyHasListeners(this.includeDescriptorQueriesHolder, PropertyValueModel.VALUE); - Boolean newIncludeDescriptorQueries = !INCLUDE_DESCRIPTOR_QUERIES_TEST_VALUE; - // Modify the property holder - this.includeDescriptorQueriesHolder.setValue(newIncludeDescriptorQueries); - this.verifyIncludeDescriptorQueriesAAValue(newIncludeDescriptorQueries); - assertNotNull(this.includeDescriptorQueriesEvent); - } - - public void testSetNullValue() { - String notDeleted = "Property not deleted"; - // ****** IncludeDescriptorQueries ******* - this.includeDescriptorQueriesEvent = null; - // Setting the property holder - this.includeDescriptorQueriesHolder.setValue(null); - // testing Holder - this.verifyIncludeDescriptorQueriesAAValue(null); - assertNotNull(this.includeDescriptorQueriesEvent); - // testing PU properties - this.verifyPuHasNotProperty(Options.ECLIPSELINK_SESSION_INCLUDE_DESCRIPTOR_QUERIES, notDeleted); - } - - // ****** convenience methods ******* - - /** - * Performs three value tests:<br> - * 1. subject value<br> - * 2. aspect adapter value<br> - * 3. persistenceUnit property value<br> - */ - protected void verifyIncludeDescriptorQueriesAAValue(Boolean testValue) { - this.verifyAAValue( - testValue, - this.options.getIncludeDescriptorQueries(), - this.includeDescriptorQueriesHolder, - Options.ECLIPSELINK_SESSION_INCLUDE_DESCRIPTOR_QUERIES); - } - - // ********** get/set property ********** - @Override - protected void setProperty(String propertyName, Object newValue) throws Exception { - throw new UnsupportedOperationException(); - } - - @Override - protected Object getProperty(String propertyName) throws NoSuchFieldException { - throw new UnsupportedOperationException(); - } -} diff --git a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/schema/generation/JptEclipseLinkPersistenceSchemaGenerationTests.java b/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/schema/generation/JptEclipseLinkPersistenceSchemaGenerationTests.java deleted file mode 100644 index 2f7e74595a..0000000000 --- a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/schema/generation/JptEclipseLinkPersistenceSchemaGenerationTests.java +++ /dev/null @@ -1,35 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2008 Oracle. 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: - * Oracle - initial API and implementation - ******************************************************************************/ -package org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.schema.generation; - -import junit.framework.Test; -import junit.framework.TestSuite; - -/** - * decentralize test creation code - */ -public class JptEclipseLinkPersistenceSchemaGenerationTests { - - public static Test suite() { - TestSuite suite = new TestSuite(JptEclipseLinkPersistenceSchemaGenerationTests.class.getPackage().getName()); - - suite.addTestSuite(SchemaGenerationValueModelTests.class); - suite.addTestSuite(SchemaGenerationBasicAdapterTests.class); - suite.addTestSuite(SchemaGenerationAdapterTests.class); - - return suite; - } - - private JptEclipseLinkPersistenceSchemaGenerationTests() { - super(); - throw new UnsupportedOperationException(); - } - -} diff --git a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/schema/generation/SchemaGenerationAdapterTests.java b/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/schema/generation/SchemaGenerationAdapterTests.java deleted file mode 100644 index 18e265ce7c..0000000000 --- a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/schema/generation/SchemaGenerationAdapterTests.java +++ /dev/null @@ -1,254 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2008, 2010 Oracle. 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: - * Oracle - initial API and implementation - ******************************************************************************/ -package org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.schema.generation; - -import org.eclipse.jpt.common.utility.model.listener.PropertyChangeListener; -import org.eclipse.jpt.jpa.core.context.persistence.PersistenceUnit; -import org.eclipse.jpt.jpa.core.context.persistence.PersistenceUnitProperties; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.schema.generation.DdlGenerationType; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.schema.generation.OutputMode; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.schema.generation.SchemaGeneration; -import org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.EclipseLinkPersistenceUnitTestCase; - -/** - * Tests the update of OutputMode model object by the SchemaGeneration adapter - * when the PersistenceUnit changes. - */ -@SuppressWarnings("nls") -public class SchemaGenerationAdapterTests extends EclipseLinkPersistenceUnitTestCase -{ - private SchemaGeneration schemaGeneration; - - public static final String DDL_GENERATION_TYPE_KEY = SchemaGeneration.ECLIPSELINK_DDL_GENERATION_TYPE; - public static final DdlGenerationType DDL_GENERATION_TYPE_TEST_VALUE = DdlGenerationType.drop_and_create_tables; - public static final DdlGenerationType DDL_GENERATION_TYPE_TEST_VALUE_2 = DdlGenerationType.none; - - public static final String OUTPUT_MODE_KEY = SchemaGeneration.ECLIPSELINK_DDL_GENERATION_OUTPUT_MODE; - public static final OutputMode OUTPUT_MODE_TEST_VALUE = OutputMode.sql_script; - public static final OutputMode OUTPUT_MODE_TEST_VALUE_2 = OutputMode.database; - - private static final String CREATE_FILE_NAME_KEY = SchemaGeneration.ECLIPSELINK_CREATE_FILE_NAME; - private static final String CREATE_FILE_NAME_TEST_VALUE = "create-file-name.test"; - private static final String CREATE_FILE_NAME_TEST_VALUE_2 = "create-file-name-2.test"; - - private static final String DROP_FILE_NAME_KEY = SchemaGeneration.ECLIPSELINK_DROP_FILE_NAME; - private static final String DROP_FILE_NAME_TEST_VALUE = "drop-file-name.test"; - private static final String DROP_FILE_NAME_TEST_VALUE_2 = "drop-file-name-2.test"; - - private static final String APPLICATION_LOCATION_KEY = SchemaGeneration.ECLIPSELINK_APPLICATION_LOCATION; - private static final String APPLICATION_LOCATION_TEST_VALUE = "C:/temp"; - private static final String APPLICATION_LOCATION_TEST_VALUE_2 = "C:/tmp"; - - public SchemaGenerationAdapterTests(String name) { - super(name); - } - - @Override - protected void setUp() throws Exception { - super.setUp(); - this.schemaGeneration = this.subject.getSchemaGeneration(); - - PropertyChangeListener propertyChangeListener = this.buildPropertyChangeListener(); - this.schemaGeneration.addPropertyChangeListener(SchemaGeneration.OUTPUT_MODE_PROPERTY, propertyChangeListener); - this.schemaGeneration.addPropertyChangeListener(SchemaGeneration.DDL_GENERATION_TYPE_PROPERTY, propertyChangeListener); - this.schemaGeneration.addPropertyChangeListener(SchemaGeneration.CREATE_FILE_NAME_PROPERTY, propertyChangeListener); - this.schemaGeneration.addPropertyChangeListener(SchemaGeneration.DROP_FILE_NAME_PROPERTY, propertyChangeListener); - this.schemaGeneration.addPropertyChangeListener(SchemaGeneration.APPLICATION_LOCATION_PROPERTY, propertyChangeListener); - this.clearEvent(); - } - - /** - * Initializes directly the PU properties before testing. Cannot use - * Property Holder to initialize because it is not created yet - */ - @Override - protected void populatePu() { - this.propertiesTotal = 9; - this.modelPropertiesSizeOriginal = 5; - this.modelPropertiesSize = this.modelPropertiesSizeOriginal; - - this.persistenceUnitSetProperty("property.0", "value.0"); - this.persistenceUnitSetProperty(OUTPUT_MODE_KEY, this.getPropertyStringValueOf(OUTPUT_MODE_TEST_VALUE)); - this.persistenceUnitSetProperty("property.2", "value.2"); - this.persistenceUnitSetProperty("property.3", "value.3"); - this.persistenceUnitSetProperty("property.4", "value.4"); - this.persistenceUnitSetProperty(DDL_GENERATION_TYPE_KEY, this.getPropertyStringValueOf(DDL_GENERATION_TYPE_TEST_VALUE)); - this.persistenceUnitSetProperty(CREATE_FILE_NAME_KEY, CREATE_FILE_NAME_TEST_VALUE); - this.persistenceUnitSetProperty(DROP_FILE_NAME_KEY, DROP_FILE_NAME_TEST_VALUE); - this.persistenceUnitSetProperty(APPLICATION_LOCATION_KEY, APPLICATION_LOCATION_TEST_VALUE); - return; - } - - // ********** CreateFileName ********** - /** - * Tests the update of CreateFileName property by the SchemaGeneration - * adapter when the PU or the model changes. - */ - public void testSetCreateFileName() throws Exception { - this.verifyModelInitialized( - CREATE_FILE_NAME_KEY, - CREATE_FILE_NAME_TEST_VALUE); - this.verifySetProperty( - CREATE_FILE_NAME_KEY, - CREATE_FILE_NAME_TEST_VALUE, - CREATE_FILE_NAME_TEST_VALUE_2); - } - - public void testAddRemoveCreateFileName() throws Exception { - this.verifyAddRemoveProperty( - CREATE_FILE_NAME_KEY, - CREATE_FILE_NAME_TEST_VALUE, - CREATE_FILE_NAME_TEST_VALUE_2); - } - - // ********** DropFileName ********** - /** - * Tests the update of DropFileName property by the SchemaGeneration adapter - * when the PU or the model changes. - */ - public void testSetDropFileName() throws Exception { - this.verifyModelInitialized( - DROP_FILE_NAME_KEY, - DROP_FILE_NAME_TEST_VALUE); - this.verifySetProperty( - DROP_FILE_NAME_KEY, - DROP_FILE_NAME_TEST_VALUE, - DROP_FILE_NAME_TEST_VALUE_2); - } - - public void testAddRemoveDropFileName() throws Exception { - this.verifyAddRemoveProperty( - DROP_FILE_NAME_KEY, - DROP_FILE_NAME_TEST_VALUE, - DROP_FILE_NAME_TEST_VALUE_2); - } - - // ********** ApplicationLocation ********** - /** - * Tests the update of ApplicationLocation property by the SchemaGeneration - * adapter when the PU or the model changes. - */ - public void testSetApplicationLocation() throws Exception { - this.verifyModelInitialized( - APPLICATION_LOCATION_KEY, - APPLICATION_LOCATION_TEST_VALUE); - this.verifySetProperty( - APPLICATION_LOCATION_KEY, - APPLICATION_LOCATION_TEST_VALUE, - APPLICATION_LOCATION_TEST_VALUE_2); - } - - public void testAddRemoveApplicationLocation() throws Exception { - this.verifyAddRemoveProperty( - APPLICATION_LOCATION_KEY, - APPLICATION_LOCATION_TEST_VALUE, - APPLICATION_LOCATION_TEST_VALUE_2); - } - - public void testSetEmptyApplicationLocation() throws Exception { - String puKey = APPLICATION_LOCATION_KEY; - PersistenceUnit.Property property = this.getPersistenceUnit().getProperty(puKey); - String propertyName = this.getModel().propertyIdOf(property); - - // Set ApplicationLocation to "" & verify that the property is deleted - this.verifyPuHasProperty(puKey, "persistenceUnit.properties doesn't contains: "); - this.setProperty(propertyName, ""); - - this.verifyPuHasNotProperty(puKey, "Property was not deleted"); - this.verifyPutProperty(propertyName, null); - assertNull(this.getPersistenceUnit().getProperty(puKey)); - } - - // ********** OutputMode ********** - /** - * Tests the update of OutputMode property by the SchemaGeneration adapter - * when the PU or the model changes. - */ - public void testSetOutputMode() throws Exception { - this.verifyModelInitialized( - OUTPUT_MODE_KEY, - OUTPUT_MODE_TEST_VALUE); - this.verifySetProperty( - OUTPUT_MODE_KEY, - OUTPUT_MODE_TEST_VALUE, - OUTPUT_MODE_TEST_VALUE_2); - } - - public void testAddRemoveOutputMode() throws Exception { - this.verifyAddRemoveProperty( - OUTPUT_MODE_KEY, - OUTPUT_MODE_TEST_VALUE, - OUTPUT_MODE_TEST_VALUE_2); - } - - // ********** DdlGenerationType ********** - /** - * Tests the update of DdlGenerationType property by the SchemaGeneration - * adapter when the PU or the model changes. - */ - public void testSetDdlGenerationType() throws Exception { - this.verifyModelInitialized( - DDL_GENERATION_TYPE_KEY, - DDL_GENERATION_TYPE_TEST_VALUE); - this.verifySetProperty( - DDL_GENERATION_TYPE_KEY, - DDL_GENERATION_TYPE_TEST_VALUE, - DDL_GENERATION_TYPE_TEST_VALUE_2); - } - - public void testAddRemoveDdlGenerationType() throws Exception { - this.verifyAddRemoveProperty( - DDL_GENERATION_TYPE_KEY, - DDL_GENERATION_TYPE_TEST_VALUE, - DDL_GENERATION_TYPE_TEST_VALUE_2); - } - - // ********** get/set property ********** - @Override - protected void setProperty(String propertyName, Object newValue) throws NoSuchFieldException { - if (propertyName.equals(SchemaGeneration.OUTPUT_MODE_PROPERTY)) - this.schemaGeneration.setOutputMode((OutputMode) newValue); - // else if( propertyName.equals( Caching.CACHE_SIZE_PROPERTY)) - // TODO - else if (propertyName.equals(SchemaGeneration.DDL_GENERATION_TYPE_PROPERTY)) - this.schemaGeneration.setDdlGenerationType((DdlGenerationType) newValue); - else if (propertyName.equals(SchemaGeneration.APPLICATION_LOCATION_PROPERTY)) - this.schemaGeneration.setApplicationLocation((String) newValue); - else if (propertyName.equals(SchemaGeneration.CREATE_FILE_NAME_PROPERTY)) - this.schemaGeneration.setCreateFileName((String) newValue); - else if (propertyName.equals(SchemaGeneration.DROP_FILE_NAME_PROPERTY)) - this.schemaGeneration.setDropFileName((String) newValue); - else - this.throwMissingDefinition("setProperty", propertyName); - } - - @Override - protected Object getProperty(String propertyName) throws NoSuchFieldException { - Object modelValue = null; - if (propertyName.equals(SchemaGeneration.OUTPUT_MODE_PROPERTY)) - modelValue = this.schemaGeneration.getOutputMode(); - else if (propertyName.equals(SchemaGeneration.DDL_GENERATION_TYPE_PROPERTY)) - modelValue = this.schemaGeneration.getDdlGenerationType(); - else if (propertyName.equals(SchemaGeneration.APPLICATION_LOCATION_PROPERTY)) - modelValue = this.schemaGeneration.getApplicationLocation(); - else if (propertyName.equals(SchemaGeneration.CREATE_FILE_NAME_PROPERTY)) - modelValue = this.schemaGeneration.getCreateFileName(); - else if (propertyName.equals(SchemaGeneration.DROP_FILE_NAME_PROPERTY)) - modelValue = this.schemaGeneration.getDropFileName(); - else - this.throwMissingDefinition("getProperty", propertyName); - return modelValue; - } - - @Override - protected PersistenceUnitProperties getModel() { - return this.schemaGeneration; - } -} diff --git a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/schema/generation/SchemaGenerationBasicAdapterTests.java b/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/schema/generation/SchemaGenerationBasicAdapterTests.java deleted file mode 100644 index fb0565e815..0000000000 --- a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/schema/generation/SchemaGenerationBasicAdapterTests.java +++ /dev/null @@ -1,154 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2008, 2011 Oracle. 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: - * Oracle - initial API and implementation - ******************************************************************************/ -package org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.schema.generation; - -import java.util.ListIterator; -import org.eclipse.jpt.common.utility.internal.model.value.ItemPropertyListValueModelAdapter; -import org.eclipse.jpt.common.utility.internal.model.value.ListAspectAdapter; -import org.eclipse.jpt.common.utility.model.listener.PropertyChangeListener; -import org.eclipse.jpt.common.utility.model.value.ListValueModel; -import org.eclipse.jpt.common.utility.model.value.PropertyValueModel; -import org.eclipse.jpt.jpa.core.context.persistence.PersistenceUnit; -import org.eclipse.jpt.jpa.core.context.persistence.PersistenceUnitProperties; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.EclipseLinkPersistenceUnit; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.schema.generation.DdlGenerationType; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.schema.generation.OutputMode; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.schema.generation.SchemaGeneration; -import org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.EclipseLinkPersistenceUnitTestCase; - -/** - * Tests the update of OutputMode model object by the SchemaGeneration adapter - * when the PersistenceUnit changes. - */ -@SuppressWarnings("nls") -public class SchemaGenerationBasicAdapterTests extends EclipseLinkPersistenceUnitTestCase -{ - private SchemaGeneration schemaGeneration; - - public static final String outputModeKey = SchemaGeneration.ECLIPSELINK_DDL_GENERATION_OUTPUT_MODE; - public static final String ddlGenTypeKey = SchemaGeneration.ECLIPSELINK_DDL_GENERATION_TYPE; - - public static final OutputMode OUTPUT_MODE_TEST_VALUE = OutputMode.sql_script; - public static final OutputMode OUTPUT_MODE_TEST_VALUE_2 = OutputMode.database; - - public static final DdlGenerationType DDL_GENERATION_TYPE_TEST_VALUE = DdlGenerationType.drop_and_create_tables; - public static final DdlGenerationType DDL_GENERATION_TYPE_TEST_VALUE_2 = DdlGenerationType.none; - - public SchemaGenerationBasicAdapterTests(String name) { - super(name); - } - - @Override - protected void setUp() throws Exception { - super.setUp(); - - this.schemaGeneration = this.subject.getSchemaGeneration(); - PropertyChangeListener propertyChangeListener = this.buildPropertyChangeListener(); - this.schemaGeneration.addPropertyChangeListener(SchemaGeneration.OUTPUT_MODE_PROPERTY, propertyChangeListener); - this.schemaGeneration.addPropertyChangeListener(SchemaGeneration.DDL_GENERATION_TYPE_PROPERTY, propertyChangeListener); - this.clearEvent(); - } - - /** - * Initializes directly the PU properties before testing. Cannot use - * Property Holder to initialize because it is not created yet - */ - @Override - protected void populatePu() { - this.propertiesTotal = 6; - this.modelPropertiesSizeOriginal = 2; - this.modelPropertiesSize = this.modelPropertiesSizeOriginal; - - this.persistenceUnitSetProperty("property.0", "value.0"); - this.persistenceUnitSetProperty(outputModeKey, this.getPropertyStringValueOf(OUTPUT_MODE_TEST_VALUE)); - this.persistenceUnitSetProperty("property.2", "value.2"); - this.persistenceUnitSetProperty("property.3", "value.3"); - this.persistenceUnitSetProperty("property.4", "value.4"); - this.persistenceUnitSetProperty(ddlGenTypeKey, this.getPropertyStringValueOf(DDL_GENERATION_TYPE_TEST_VALUE)); - return; - } - - /** ****** test methods ******* */ - - /** - * Tests the update of OutputMode property by the SchemaGeneration adapter - * when the PU changes. - */ - public void testOutputModeUpdate() throws Exception { - ListValueModel<PersistenceUnit.Property> propertiesAdapter = this.buildPropertiesAdapter(this.subjectHolder); - ListValueModel<PersistenceUnit.Property> propertyListAdapter = new ItemPropertyListValueModelAdapter<PersistenceUnit.Property>(propertiesAdapter, PersistenceUnit.Property.VALUE_PROPERTY); - - this.verifyHasListeners(this.schemaGeneration, SchemaGeneration.OUTPUT_MODE_PROPERTY); - - // Basic - assertTrue(schemaGeneration.itemIsProperty(this.getPersistenceUnit().getProperty(outputModeKey))); - assertEquals(OUTPUT_MODE_TEST_VALUE, this.schemaGeneration.getOutputMode()); - - // Replace - this.persistenceUnitSetProperty(outputModeKey, OUTPUT_MODE_TEST_VALUE_2); - this.verifyPutEvent(SchemaGeneration.OUTPUT_MODE_PROPERTY, OUTPUT_MODE_TEST_VALUE_2, this.schemaGeneration.getOutputMode()); - - // Remove - this.clearEvent(); - --this.propertiesTotal; - --this.modelPropertiesSize; - this.getPersistenceUnit().removeProperty(outputModeKey); - assertNull(this.getPersistenceUnit().getProperty(outputModeKey)); - assertEquals(this.modelPropertiesSize, this.modelPropertiesSizeOriginal - 1); - assertNotNull(this.propertyChangedEvent); - assertNull(this.propertyChangedEvent.getNewValue()); - - // Add original OutputMode - ++this.propertiesTotal; - ++this.modelPropertiesSize; - this.persistenceUnitSetProperty(outputModeKey, OUTPUT_MODE_TEST_VALUE); - this.verifyPutEvent(SchemaGeneration.OUTPUT_MODE_PROPERTY, OUTPUT_MODE_TEST_VALUE, this.schemaGeneration.getOutputMode()); - - // Replace again - this.persistenceUnitSetProperty(outputModeKey, OUTPUT_MODE_TEST_VALUE_2); - this.verifyPutEvent(SchemaGeneration.OUTPUT_MODE_PROPERTY, OUTPUT_MODE_TEST_VALUE_2, this.schemaGeneration.getOutputMode()); - - // Replace by setting model object - this.clearEvent(); - this.schemaGeneration.setOutputMode(OUTPUT_MODE_TEST_VALUE); - this.verifyPutEvent(SchemaGeneration.OUTPUT_MODE_PROPERTY, OUTPUT_MODE_TEST_VALUE, this.schemaGeneration.getOutputMode()); - } - - // ****** convenience methods ******* - @Override - protected PersistenceUnitProperties getModel() { - return this.schemaGeneration; - } - - private ListValueModel<PersistenceUnit.Property> buildPropertiesAdapter(PropertyValueModel<EclipseLinkPersistenceUnit> subjectHolder) { - return new ListAspectAdapter<EclipseLinkPersistenceUnit, PersistenceUnit.Property>(subjectHolder, PersistenceUnit.PROPERTIES_LIST) { - @Override - protected ListIterator<PersistenceUnit.Property> listIterator_() { - return this.subject.properties(); - } - - @Override - protected int size_() { - return this.subject.propertiesSize(); - } - }; - } - - // ********** get/set property ********** - @Override - protected void setProperty(String propertyName, Object newValue) throws Exception { - throw new UnsupportedOperationException(); - } - - @Override - protected Object getProperty(String propertyName) throws NoSuchFieldException { - throw new UnsupportedOperationException(); - } -} diff --git a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/schema/generation/SchemaGenerationValueModelTests.java b/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/schema/generation/SchemaGenerationValueModelTests.java deleted file mode 100644 index 2cda6aec46..0000000000 --- a/jpa/tests/org.eclipse.jpt.jpa.eclipselink.core.tests/src/org/eclipse/jpt/jpa/eclipselink/core/tests/internal/context/persistence/schema/generation/SchemaGenerationValueModelTests.java +++ /dev/null @@ -1,232 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2008, 2009 Oracle. 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: - * Oracle - initial API and implementation - *******************************************************************************/ -package org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.schema.generation; - -import org.eclipse.jpt.common.utility.internal.model.value.PropertyAspectAdapter; -import org.eclipse.jpt.common.utility.internal.model.value.SimplePropertyValueModel; -import org.eclipse.jpt.common.utility.model.event.PropertyChangeEvent; -import org.eclipse.jpt.common.utility.model.listener.PropertyChangeListener; -import org.eclipse.jpt.common.utility.model.value.PropertyValueModel; -import org.eclipse.jpt.common.utility.model.value.WritablePropertyValueModel; -import org.eclipse.jpt.jpa.core.context.persistence.PersistenceUnit; -import org.eclipse.jpt.jpa.core.context.persistence.PersistenceUnitProperties; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.schema.generation.DdlGenerationType; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.schema.generation.OutputMode; -import org.eclipse.jpt.jpa.eclipselink.core.context.persistence.schema.generation.SchemaGeneration; -import org.eclipse.jpt.jpa.eclipselink.core.tests.internal.context.persistence.EclipseLinkPersistenceUnitTestCase; - -/** - * SchemaGenerationValueModelTests - * - * Tests the PropertyValueModel of SchemaGeneration model and the update of the - * PersistenceUnit. - */ -public class SchemaGenerationValueModelTests extends EclipseLinkPersistenceUnitTestCase -{ - private SchemaGeneration schemaGen; - private PropertyValueModel<SchemaGeneration> schemaGenHolder; - - private WritablePropertyValueModel<DdlGenerationType> ddlGenerationTypeHolder; - private PropertyChangeEvent ddlGenerationTypeEvent; - - private WritablePropertyValueModel<OutputMode> outputModeHolder; - private PropertyChangeEvent outputModeEvent; - - public static final DdlGenerationType DDL_GENERATION_TYPE_TEST_VALUE = DdlGenerationType.drop_and_create_tables; - public static final OutputMode OUTPUT_MODE_TEST_VALUE = OutputMode.sql_script; - - public SchemaGenerationValueModelTests(String name) { - super(name); - } - - @Override - protected void setUp() throws Exception { - super.setUp(); - this.schemaGen = this.subject.getSchemaGeneration(); // Subject - this.schemaGenHolder = new SimplePropertyValueModel<SchemaGeneration>(this.schemaGen); - - this.ddlGenerationTypeHolder = this.buildDdlGenerationTypeAA(this.schemaGenHolder); - PropertyChangeListener ddlGenerationTypeListener = this.buildDdlGenerationTypeChangeListener(); - this.ddlGenerationTypeHolder.addPropertyChangeListener(PropertyValueModel.VALUE, ddlGenerationTypeListener); - this.ddlGenerationTypeEvent = null; - - this.outputModeHolder = this.buildOutputModeAA(this.schemaGenHolder); - PropertyChangeListener outputModeListener = this.buildOutputModeChangeListener(); - this.outputModeHolder.addPropertyChangeListener(PropertyValueModel.VALUE, outputModeListener); - this.outputModeEvent = null; - } - - /** - * Initializes directly the PU properties before testing. Cannot use - * Property Holder to initialize because it is not created yet - */ - @Override - protected void populatePu() { - this.persistenceUnitSetProperty( - SchemaGeneration.ECLIPSELINK_DDL_GENERATION_TYPE, - DDL_GENERATION_TYPE_TEST_VALUE); - this.persistenceUnitSetProperty( - SchemaGeneration.ECLIPSELINK_DDL_GENERATION_OUTPUT_MODE, - OUTPUT_MODE_TEST_VALUE); - return; - } - - @Override - protected PersistenceUnitProperties getModel() { - return this.schemaGen; - } - - /** ****** DdlGenerationType ******* */ - private WritablePropertyValueModel<DdlGenerationType> buildDdlGenerationTypeAA(PropertyValueModel<SchemaGeneration> subjectHolder) { - return new PropertyAspectAdapter<SchemaGeneration, DdlGenerationType>(subjectHolder, SchemaGeneration.DDL_GENERATION_TYPE_PROPERTY) { - @Override - protected DdlGenerationType buildValue_() { - return this.subject.getDdlGenerationType(); - } - - @Override - protected void setValue_(DdlGenerationType enumValue) { - this.subject.setDdlGenerationType(enumValue); - } - }; - } - - private PropertyChangeListener buildDdlGenerationTypeChangeListener() { - return new PropertyChangeListener() { - public void propertyChanged(PropertyChangeEvent e) { - SchemaGenerationValueModelTests.this.ddlGenerationTypeEvent = e; - } - }; - } - - /** ****** OutputMode ******* */ - private WritablePropertyValueModel<OutputMode> buildOutputModeAA(PropertyValueModel<SchemaGeneration> subjectHolder) { - return new PropertyAspectAdapter<SchemaGeneration, OutputMode>(subjectHolder, SchemaGeneration.OUTPUT_MODE_PROPERTY) { - @Override - protected OutputMode buildValue_() { - return this.subject.getOutputMode(); - } - - @Override - protected void setValue_(OutputMode enumValue) { - this.subject.setOutputMode(enumValue); - } - }; - } - - private PropertyChangeListener buildOutputModeChangeListener() { - return new PropertyChangeListener() { - public void propertyChanged(PropertyChangeEvent e) { - SchemaGenerationValueModelTests.this.outputModeEvent = e; - } - }; - } - - public void testValue() { - /** ****** DdlGenerationType ******* */ - this.verifyDdlGenerationTypeAAValue(DDL_GENERATION_TYPE_TEST_VALUE); - assertEquals( - SchemaGeneration.DEFAULT_SCHEMA_GENERATION_DDL_GENERATION_TYPE, - this.schemaGen.getDefaultDdlGenerationType()); - /** ****** OutputMode ******* */ - this.verifyOutputModeAAValue(OUTPUT_MODE_TEST_VALUE); - assertEquals( - SchemaGeneration.DEFAULT_SCHEMA_GENERATION_OUTPUT_MODE, - this.schemaGen.getDefaultOutputMode()); - } - - public void testSetValue() throws Exception { - /** ****** DdlGenerationType ******* */ - this.ddlGenerationTypeEvent = null; - this.verifyHasListeners(this.ddlGenerationTypeHolder, PropertyValueModel.VALUE); - DdlGenerationType newDdlGenerationType = DdlGenerationType.create_tables; - // Modify the persistenceUnit directly - this.subject.setProperty( - SchemaGeneration.ECLIPSELINK_DDL_GENERATION_TYPE, - this.getPropertyStringValueOf(newDdlGenerationType), - false); - this.verifyDdlGenerationTypeAAValue(newDdlGenerationType); - assertNotNull(this.ddlGenerationTypeEvent); - - /** ****** OutputMode ******* */ - this.outputModeEvent = null; - this.verifyHasListeners(this.outputModeHolder, PropertyValueModel.VALUE); - OutputMode newOutputMode = OutputMode.database; - // Modify the property holder - this.outputModeHolder.setValue(newOutputMode); - this.verifyOutputModeAAValue(newOutputMode); - assertNotNull(this.outputModeEvent); - } - - public void testSetNullValue() { - /** ****** DdlGenerationType ******* */ - this.ddlGenerationTypeEvent = null; - // Setting the persistenceUnit directly - this.subject.setProperty(SchemaGeneration.ECLIPSELINK_DDL_GENERATION_TYPE, null, false); - this.ddlGenerationTypeHolder.setValue(null); - // testing Holder - this.verifyDdlGenerationTypeAAValue(null); - assertNotNull(this.ddlGenerationTypeEvent); - // testing PU properties - PersistenceUnit.Property property = this.getPersistenceUnit().getProperty(SchemaGeneration.ECLIPSELINK_DDL_GENERATION_TYPE); - assertNull(property); - - /** ****** OutputMode ******* */ - this.outputModeEvent = null; - // Setting the property holder - this.outputModeHolder.setValue(null); - // testing Holder - this.verifyOutputModeAAValue(null); - assertNotNull(this.outputModeEvent); - // testing PU properties - property = this.getPersistenceUnit().getProperty(SchemaGeneration.ECLIPSELINK_DDL_GENERATION_OUTPUT_MODE); - assertNull(property); - } - - /** ****** convenience methods ******* */ - /** - * Performs three value tests:<br> - * 1. subject value<br> - * 2. aspect adapter value<br> - * 3. persistenceUnit property value<br> - */ - protected void verifyDdlGenerationTypeAAValue(DdlGenerationType testValue) { - this.verifyAAValue( - testValue, - this.schemaGen.getDdlGenerationType(), - this.ddlGenerationTypeHolder, - SchemaGeneration.ECLIPSELINK_DDL_GENERATION_TYPE); - } - - /** - * Performs three value tests:<br> - * 1. subject value<br> - * 2. aspect adapter value<br> - * 3. persistenceUnit property value<br> - */ - protected void verifyOutputModeAAValue(OutputMode testValue) { - this.verifyAAValue( - testValue, - this.schemaGen.getOutputMode(), - this.outputModeHolder, - SchemaGeneration.ECLIPSELINK_DDL_GENERATION_OUTPUT_MODE); - } - - // ********** get/set property ********** - @Override - protected void setProperty(String propertyName, Object newValue) throws Exception { - throw new UnsupportedOperationException(); - } - - @Override - protected Object getProperty(String propertyName) throws NoSuchFieldException { - throw new UnsupportedOperationException(); - } -} |