diff options
author | Eike Stepper | 2016-12-30 18:30:06 +0000 |
---|---|---|
committer | Eike Stepper | 2016-12-30 18:30:06 +0000 |
commit | 83bd6c9ca6cd12158a744eb190d0fca70b5bb504 (patch) | |
tree | 572d62c6394c8e4cf8414e87b4e3b7e4170a604a /plugins/org.eclipse.emf.cdo.tests/src | |
parent | 6f3cfd8668e5ba4c346e4ba26230c37b7215c410 (diff) | |
download | cdo-83bd6c9ca6cd12158a744eb190d0fca70b5bb504.tar.gz cdo-83bd6c9ca6cd12158a744eb190d0fca70b5bb504.tar.xz cdo-83bd6c9ca6cd12158a744eb190d0fca70b5bb504.zip |
[DB] Factor out AbstractListDeltaWriter
Diffstat (limited to 'plugins/org.eclipse.emf.cdo.tests/src')
29 files changed, 201 insertions, 46 deletions
diff --git a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/AllConfigs.java b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/AllConfigs.java index bdcb9fdcb5..cae164936a 100644 --- a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/AllConfigs.java +++ b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/AllConfigs.java @@ -99,7 +99,7 @@ public class AllConfigs extends ConfigTestSuite testClasses.add(LockingSequenceTest.class); testClasses.add(MultiValuedOfAttributeTest.class); testClasses.add(MapTest.class); - testClasses.add(FeatureMapTest.class); + // testClasses.add(FeatureMapTest.class); testClasses.add(AdapterManagerTest.class); testClasses.add(ConflictResolverTest.class); testClasses.add(ConflictResolverExtendedTest.class); diff --git a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/CDOIDTest.java b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/CDOIDTest.java index 02bc88869a..bdb0bfba18 100644 --- a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/CDOIDTest.java +++ b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/CDOIDTest.java @@ -57,12 +57,14 @@ public class CDOIDTest extends AbstractCDOTest assertIllegalArgument(id); } + @Requires(IRepositoryConfig.CAPABILITY_EXTERNAL_REFS) public void testGetLong_ExtTempId() { CDOIDTempObjectExternalImpl id = CDOIDTempObjectExternalImpl.create("cdo://repo123/resource456"); assertIllegalArgument(id); } + @Requires(IRepositoryConfig.CAPABILITY_EXTERNAL_REFS) public void testGetLong_ExtId() { CDOIDExternal id = CDOIDUtil.createExternal("cdo://repo123/resource456"); diff --git a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/ChunkingClearCachedRevisionTest.java b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/ChunkingClearCachedRevisionTest.java index e04ecd7d89..04265d01fa 100644 --- a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/ChunkingClearCachedRevisionTest.java +++ b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/ChunkingClearCachedRevisionTest.java @@ -15,6 +15,7 @@ import org.eclipse.emf.cdo.common.revision.CDORevision; import org.eclipse.emf.cdo.eresource.CDOResource; import org.eclipse.emf.cdo.session.CDOSession; import org.eclipse.emf.cdo.spi.common.revision.InternalCDORevisionManager; +import org.eclipse.emf.cdo.tests.config.IRepositoryConfig; import org.eclipse.emf.cdo.tests.model1.Customer; import org.eclipse.emf.cdo.tests.model1.SalesOrder; import org.eclipse.emf.cdo.transaction.CDOTransaction; @@ -31,6 +32,7 @@ import java.util.Iterator; */ public class ChunkingClearCachedRevisionTest extends AbstractCDOTest { + @Requires(IRepositoryConfig.CAPABILITY_CHUNKING) public void testReadNative() throws Exception { CDORevision revisionToRemove = null; @@ -78,6 +80,7 @@ public class ChunkingClearCachedRevisionTest extends AbstractCDOTest } } + @Requires(IRepositoryConfig.CAPABILITY_CHUNKING) public void testWriteNative() throws Exception { CDORevision revisionToRemove = null; diff --git a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/ChunkingTest.java b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/ChunkingTest.java index a3e433fa3c..399fcaa0db 100644 --- a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/ChunkingTest.java +++ b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/ChunkingTest.java @@ -12,6 +12,8 @@ package org.eclipse.emf.cdo.tests; import org.eclipse.emf.cdo.eresource.CDOResource; import org.eclipse.emf.cdo.session.CDOSession; +import org.eclipse.emf.cdo.tests.config.IRepositoryConfig; +import org.eclipse.emf.cdo.tests.config.impl.ConfigTest.Requires; import org.eclipse.emf.cdo.tests.model1.Category; import org.eclipse.emf.cdo.tests.model1.Company; import org.eclipse.emf.cdo.tests.model1.Customer; @@ -36,6 +38,7 @@ import java.util.List; /** * @author Eike Stepper */ +@Requires(IRepositoryConfig.CAPABILITY_CHUNKING) public class ChunkingTest extends AbstractCDOTest { private static final String RESOURCE_PATH = "/test"; diff --git a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/CrossReferenceTest.java b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/CrossReferenceTest.java index 00ef7cd404..5cd0fe5401 100644 --- a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/CrossReferenceTest.java +++ b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/CrossReferenceTest.java @@ -15,6 +15,7 @@ import org.eclipse.emf.cdo.common.id.CDOID; import org.eclipse.emf.cdo.common.revision.CDORevisionData; import org.eclipse.emf.cdo.eresource.CDOResource; import org.eclipse.emf.cdo.session.CDOSession; +import org.eclipse.emf.cdo.tests.config.IRepositoryConfig; import org.eclipse.emf.cdo.tests.model1.Company; import org.eclipse.emf.cdo.tests.model1.Customer; import org.eclipse.emf.cdo.tests.model1.SalesOrder; @@ -326,9 +327,9 @@ public class CrossReferenceTest extends AbstractCDOTest } @Skips("Hibernate") + @Requires(IRepositoryConfig.CAPABILITY_EXTERNAL_REFS) public void testDetachXRefExternal() throws Exception { - skipStoreWithoutExternalReferences(); Customer customer = getModel1Factory().createCustomer(); customer.setName("customer"); @@ -393,9 +394,9 @@ public class CrossReferenceTest extends AbstractCDOTest } @Skips("Hibernate") + @Requires(IRepositoryConfig.CAPABILITY_EXTERNAL_REFS) public void testNewMakeExternal() throws Exception { - skipStoreWithoutExternalReferences(); Customer customer = getModel1Factory().createCustomer(); customer.setName("customer"); @@ -423,6 +424,7 @@ public class CrossReferenceTest extends AbstractCDOTest assertEquals(true, id.isExternal()); } + @Requires(IRepositoryConfig.CAPABILITY_EXTERNAL_REFS) public void testExternalMakeNew() throws Exception { Customer customer = getModel1Factory().createCustomer(); @@ -456,10 +458,9 @@ public class CrossReferenceTest extends AbstractCDOTest } @Skips("Hibernate") + @Requires(IRepositoryConfig.CAPABILITY_EXTERNAL_REFS) public void testExternalMakeDangling() throws Exception { - skipStoreWithoutExternalReferences(); - Customer customer = getModel1Factory().createCustomer(); customer.setName("customer"); diff --git a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/ExternalReferenceTest.java b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/ExternalReferenceTest.java index f01fbb088f..2e7a8cbee8 100644 --- a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/ExternalReferenceTest.java +++ b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/ExternalReferenceTest.java @@ -20,6 +20,8 @@ import org.eclipse.emf.cdo.eresource.CDOResource; import org.eclipse.emf.cdo.internal.net4j.protocol.LoadRevisionsRequest; import org.eclipse.emf.cdo.session.CDOSession; import org.eclipse.emf.cdo.tests.config.IModelConfig; +import org.eclipse.emf.cdo.tests.config.IRepositoryConfig; +import org.eclipse.emf.cdo.tests.config.impl.ConfigTest.Requires; import org.eclipse.emf.cdo.tests.model1.Company; import org.eclipse.emf.cdo.tests.model1.PurchaseOrder; import org.eclipse.emf.cdo.tests.model1.Supplier; @@ -59,14 +61,13 @@ import java.util.Map; /** * @author Simon McDuff */ +@Requires(IRepositoryConfig.CAPABILITY_EXTERNAL_REFS) public class ExternalReferenceTest extends AbstractCDOTest { private static final String REPOSITORY_B_NAME = "repo2"; public void testExternalWithDynamicEObject() throws Exception { - skipStoreWithoutExternalReferences(); - ResourceSet resourceSet = new ResourceSetImpl(); resourceSet.getResourceFactoryRegistry().getProtocolToFactoryMap().put("test", new XMIResourceFactoryImpl()); @@ -94,8 +95,6 @@ public class ExternalReferenceTest extends AbstractCDOTest public void testExternalWithEClass() throws Exception { - skipStoreWithoutExternalReferences(); - { ResourceSet resourceSet = new ResourceSetImpl(); @@ -129,8 +128,6 @@ public class ExternalReferenceTest extends AbstractCDOTest public void testExternalWithEPackage() throws Exception { - skipStoreWithoutExternalReferences(); - { CDOSession sessionA = openSession(); @@ -168,8 +165,6 @@ public class ExternalReferenceTest extends AbstractCDOTest @Skips("Postgresql") public void testOneXMIResourceManyViewsOnOneResourceSet() throws Exception { - skipStoreWithoutExternalReferences(); - byte[] dataOfresD = null; getRepository(REPOSITORY_B_NAME); @@ -279,8 +274,6 @@ public class ExternalReferenceTest extends AbstractCDOTest @Skips({ IModelConfig.CAPABILITY_LEGACY, "Postgresql" }) public void testManyViewsOnOneResourceSet() throws Exception { - skipStoreWithoutExternalReferences(); - getRepository(REPOSITORY_B_NAME); { @@ -390,8 +383,6 @@ public class ExternalReferenceTest extends AbstractCDOTest public void testWithXML() throws Exception { - skipStoreWithoutExternalReferences(); - ResourceSet resourceSet = new ResourceSetImpl(); Map<String, Object> map = resourceSet.getResourceFactoryRegistry().getExtensionToFactoryMap(); map.put("xml", new XMLResourceFactoryImpl()); @@ -417,7 +408,6 @@ public class ExternalReferenceTest extends AbstractCDOTest public void testWithXMLAndPrefetching() throws Exception { - skipStoreWithoutExternalReferences(); { ResourceSet resourceSet = new ResourceSetImpl(); @@ -491,8 +481,6 @@ public class ExternalReferenceTest extends AbstractCDOTest @CleanRepositoriesBefore(reason = "Ref counting") public void testXRefExternalObject() throws Exception { - skipStoreWithoutExternalReferences(); - ResourceSet resourceSet = new ResourceSetImpl(); Map<String, Object> map = resourceSet.getResourceFactoryRegistry().getExtensionToFactoryMap(); map.put("xml", new XMLResourceFactoryImpl()); diff --git a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/FeatureMapTest.java b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/FeatureMapTest.java index 7bae3be135..1d1f5863f6 100644 --- a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/FeatureMapTest.java +++ b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/FeatureMapTest.java @@ -36,6 +36,7 @@ import java.util.List; /** * @author Simon McDuff */ +@Deprecated public class FeatureMapTest extends AbstractCDOTest { private EPackage pkg; diff --git a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/InitialTest.java b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/InitialTest.java index bc74a6b92a..a91a77b1f0 100644 --- a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/InitialTest.java +++ b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/InitialTest.java @@ -183,6 +183,33 @@ public class InitialTest extends AbstractCDOTest assertCreatedTime(supplier, commit.getTimeStamp()); } + public void testCommitNewInverseList() throws Exception + { + CDOSession session = openSession(); + CDOTransaction transaction = session.openTransaction(); + CDOResource resource = transaction.createResource(getResourcePath("/test1")); + + Category category = getModel1Factory().createCategory(); + category.setName("Category"); + resource.getContents().add(category); + + Product1 product = getModel1Factory().createProduct1(); + product.setName("Product1"); + category.getProducts().add(product); + + OrderDetail orderDetail = getModel1Factory().createOrderDetail(); + orderDetail.setPrice(47.11f); + orderDetail.setProduct(product); + resource.getContents().add(orderDetail); + + CDOCommitInfo commit = transaction.commit(); + assertEquals(CDOState.CLEAN, resource.cdoState()); + assertEquals(CDOState.CLEAN, CDOUtil.getCDOObject(orderDetail).cdoState()); + assertEquals(1, CDOUtil.getCDOObject(orderDetail).cdoRevision().getVersion()); + assertCreatedTime(resource, commit.getTimeStamp()); + assertCreatedTime(orderDetail, commit.getTimeStamp()); + } + public void testReadResourceClean() throws Exception { CDOSession session = openSession(); @@ -262,6 +289,41 @@ public class InitialTest extends AbstractCDOTest assertCreatedTime(supplier, commitTime2); } + public void testCommitDirtyInverseList() throws Exception + { + CDOSession session = openSession(); + CDOTransaction transaction = session.openTransaction(); + CDOResource resource = transaction.createResource(getResourcePath("/test1")); + + Category category = getModel1Factory().createCategory(); + category.setName("Category"); + resource.getContents().add(category); + + Product1 product = getModel1Factory().createProduct1(); + product.setName("Product1"); + category.getProducts().add(product); + + OrderDetail orderDetail = getModel1Factory().createOrderDetail(); + orderDetail.setPrice(47.11f); + orderDetail.setProduct(product); + resource.getContents().add(orderDetail); + + CDOCommitInfo commit = transaction.commit(); + long commitTime1 = commit.getTimeStamp(); + assertCreatedTime(product, commitTime1); + + OrderDetail orderDetail2 = getModel1Factory().createOrderDetail(); + orderDetail2.setPrice(0.815f); + orderDetail2.setProduct(product); + resource.getContents().add(orderDetail2); + + long commitTime2 = transaction.commit().getTimeStamp(); + assertEquals(true, commitTime1 < commitTime2); + assertEquals(CDOState.CLEAN, resource.cdoState()); + assertEquals(CDOState.CLEAN, CDOUtil.getCDOObject(product).cdoState()); + assertCreatedTime(product, commitTime2); + } + public void testGetResource() throws Exception { CDOSession session = openSession(); @@ -456,6 +518,52 @@ public class InitialTest extends AbstractCDOTest assertEquals("Stepper", s.getName()); } + public void testLoadObjectInverseList() throws Exception + { + { + CDOSession session = openSession(); + CDOTransaction transaction = session.openTransaction(); + CDOResource resource = transaction.createResource(getResourcePath("/test1")); + + Category category = getModel1Factory().createCategory(); + category.setName("Category"); + resource.getContents().add(category); + + Product1 product = getModel1Factory().createProduct1(); + product.setName("Product1"); + category.getProducts().add(product); + + OrderDetail orderDetail = getModel1Factory().createOrderDetail(); + orderDetail.setPrice(47.11f); + orderDetail.setProduct(product); + resource.getContents().add(orderDetail); + + transaction.commit(); + session.close(); + clearCache(getRepository().getRevisionManager()); + } + + CDOSession session = openSession(); + CDOTransaction transaction = session.openTransaction(); + CDOResource resource = transaction.getResource(getResourcePath("/test1")); + EList<EObject> contents = resource.getContents(); + + Category category = (Category)contents.get(0); + assertNotNull(category); + assertEquals("Category", category.getName()); + assertEquals(1, category.getProducts().size()); + + Product1 product = category.getProducts().get(0); + assertNotNull(product); + assertEquals("Product1", product.getName()); + assertEquals(1, product.getOrderDetails().size()); + + OrderDetail orderDetail = product.getOrderDetails().get(0); + assertNotNull(orderDetail); + assertEquals(47.11f, orderDetail.getPrice()); + assertEquals(product, orderDetail.getProduct()); + } + /** * bug 226317 */ diff --git a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/MetaTest.java b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/MetaTest.java index dfda28180d..1d33264d91 100644 --- a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/MetaTest.java +++ b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/MetaTest.java @@ -12,6 +12,7 @@ package org.eclipse.emf.cdo.tests; import org.eclipse.emf.cdo.eresource.CDOResource; import org.eclipse.emf.cdo.session.CDOSession; +import org.eclipse.emf.cdo.tests.config.IRepositoryConfig; import org.eclipse.emf.cdo.tests.model3.MetaRef; import org.eclipse.emf.cdo.transaction.CDOTransaction; @@ -22,10 +23,9 @@ import org.eclipse.emf.ecore.EReference; */ public class MetaTest extends AbstractCDOTest { + @Requires(IRepositoryConfig.CAPABILITY_EXTERNAL_REFS) public void testMetaReference() throws Exception { - skipStoreWithoutExternalReferences(); - { CDOSession session = openSession(); CDOTransaction transaction = session.openTransaction(); @@ -46,10 +46,9 @@ public class MetaTest extends AbstractCDOTest assertEquals(getModel3Package(), metaRef.getEPackageRef()); } + @Requires(IRepositoryConfig.CAPABILITY_EXTERNAL_REFS) public void testMetaReferenceAttachFirst() throws Exception { - skipStoreWithoutExternalReferences(); - { CDOSession session = openSession(); CDOTransaction transaction = session.openTransaction(); @@ -70,10 +69,9 @@ public class MetaTest extends AbstractCDOTest assertEquals(getModel3Package(), metaRef.getEPackageRef()); } + @Requires(IRepositoryConfig.CAPABILITY_EXTERNAL_REFS) public void testMetaReference2() throws Exception { - skipStoreWithoutExternalReferences(); - EReference targetRef = getModel3SubpackagePackage().getClass2_Class1(); { diff --git a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/MultiValuedOfAttributeTest.java b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/MultiValuedOfAttributeTest.java index f43cf3b917..f65eee1771 100644 --- a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/MultiValuedOfAttributeTest.java +++ b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/MultiValuedOfAttributeTest.java @@ -13,6 +13,8 @@ package org.eclipse.emf.cdo.tests; import org.eclipse.emf.cdo.eresource.CDOResource; import org.eclipse.emf.cdo.session.CDOSession; +import org.eclipse.emf.cdo.tests.config.IRepositoryConfig; +import org.eclipse.emf.cdo.tests.config.impl.ConfigTest.Requires; import org.eclipse.emf.cdo.transaction.CDOTransaction; import org.eclipse.emf.cdo.util.CDOUtil; import org.eclipse.emf.cdo.util.CommitException; @@ -31,6 +33,7 @@ import java.util.List; /** * @author Simon McDuff */ +@Requires(IRepositoryConfig.CAPABILITY_CHUNKING) public class MultiValuedOfAttributeTest extends AbstractCDOTest { public void testListOfString() throws Exception diff --git a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/ViewTest.java b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/ViewTest.java index 1db4442fdc..bdd29e4263 100644 --- a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/ViewTest.java +++ b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/ViewTest.java @@ -15,6 +15,7 @@ import org.eclipse.emf.cdo.common.revision.CDORevisionData; import org.eclipse.emf.cdo.eresource.CDOResource; import org.eclipse.emf.cdo.eresource.EresourcePackage; import org.eclipse.emf.cdo.session.CDOSession; +import org.eclipse.emf.cdo.tests.config.IRepositoryConfig; import org.eclipse.emf.cdo.tests.model1.Company; import org.eclipse.emf.cdo.transaction.CDOTransaction; import org.eclipse.emf.cdo.util.CDOUtil; @@ -98,6 +99,7 @@ public class ViewTest extends AbstractCDOTest session.close(); } + @Requires(IRepositoryConfig.CAPABILITY_CHUNKING) public void testUniqueResourceContents() throws Exception { { @@ -137,6 +139,7 @@ public class ViewTest extends AbstractCDOTest session.close(); } + @Requires(IRepositoryConfig.CAPABILITY_CHUNKING) public void testNonUniqueResourceContents() throws Exception { { diff --git a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/XATransactionTest.java b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/XATransactionTest.java index 88d048c12c..9b169596a7 100644 --- a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/XATransactionTest.java +++ b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/XATransactionTest.java @@ -80,9 +80,9 @@ public class XATransactionTest extends AbstractCDOTest xaTransaction.commit(); } + @Requires(IRepositoryConfig.CAPABILITY_EXTERNAL_REFS) public void testRollback_AfterSetpoint() throws Exception { - skipStoreWithoutExternalReferences(); getRepository(REPOSITORY2_NAME); CDOSession sessionA = openSession(); @@ -143,9 +143,9 @@ public class XATransactionTest extends AbstractCDOTest // XXX disabled because of Bug 290097 @Skips("Postgresql") + @Requires(IRepositoryConfig.CAPABILITY_EXTERNAL_REFS) public void testCommitFromTransactionDisabled() throws Exception { - skipStoreWithoutExternalReferences(); getRepository(REPOSITORY2_NAME); { @@ -191,9 +191,9 @@ public class XATransactionTest extends AbstractCDOTest // Skip this test until the problems with XATransactions are solved. @Skips({ IModelConfig.CAPABILITY_LEGACY, IRepositoryConfig.CAPABILITY_UUIDS, "DB" }) + @Requires(IRepositoryConfig.CAPABILITY_EXTERNAL_REFS) public void testNotUsingXATransaction_Exception() throws Exception { - skipStoreWithoutExternalReferences(); getRepository(REPOSITORY2_NAME); { @@ -236,9 +236,9 @@ public class XATransactionTest extends AbstractCDOTest // XXX disabled because of Bug 290097 @Skips("Postgresql") + @Requires(IRepositoryConfig.CAPABILITY_EXTERNAL_REFS) public void test_ExceptionInReadingStream() throws Exception { - skipStoreWithoutExternalReferences(); getRepository(REPOSITORY2_NAME); CDOSession sessionA = openSession(); diff --git a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_306998_Test.java b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_306998_Test.java index 4cc3b0e3e8..3bb065a980 100644 --- a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_306998_Test.java +++ b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_306998_Test.java @@ -15,7 +15,6 @@ import org.eclipse.emf.cdo.eresource.CDOResource; import org.eclipse.emf.cdo.session.CDOSession; import org.eclipse.emf.cdo.tests.AbstractCDOTest; import org.eclipse.emf.cdo.tests.model1.VAT; -import org.eclipse.emf.cdo.tests.model1.legacy.Model1Package; import org.eclipse.emf.cdo.transaction.CDOTransaction; import org.eclipse.emf.cdo.util.CDOUtil; import org.eclipse.emf.cdo.util.CommitException; @@ -36,7 +35,7 @@ public class Bugzilla_306998_Test extends AbstractCDOTest { EPackage pkg = createUniquePackage(); EClass cls = EMFUtil.createEClass(pkg, "cls", false, false); - EAttribute att = EMFUtil.createEAttribute(cls, "att", Model1Package.eINSTANCE.getVAT()); + EAttribute att = EMFUtil.createEAttribute(cls, "att", getModel1Package().getVAT()); att.setDefaultValueLiteral("vat7"); CDOUtil.prepareDynamicEPackage(pkg); @@ -75,9 +74,9 @@ public class Bugzilla_306998_Test extends AbstractCDOTest { EPackage pkg = createUniquePackage(); EClass cls = EMFUtil.createEClass(pkg, "cls", false, false); - EAttribute att = EMFUtil.createEAttribute(cls, "att", Model1Package.eINSTANCE.getVAT()); + EAttribute att = EMFUtil.createEAttribute(cls, "att", getModel1Package().getVAT()); att.setDefaultValueLiteral("vat8"); - att.setDefaultValue(Model1Package.eINSTANCE.getVAT().getEEnumLiteral("vat8")); + att.setDefaultValue(getModel1Package().getVAT().getEEnumLiteral("vat8")); CDOUtil.prepareDynamicEPackage(pkg); diff --git a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_322218_Test.java b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_322218_Test.java index bfb8cf4252..148d678a7e 100644 --- a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_322218_Test.java +++ b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_322218_Test.java @@ -13,6 +13,7 @@ package org.eclipse.emf.cdo.tests.bugzilla; import org.eclipse.emf.cdo.eresource.CDOResource; import org.eclipse.emf.cdo.session.CDOSession; import org.eclipse.emf.cdo.tests.AbstractCDOTest; +import org.eclipse.emf.cdo.tests.config.IRepositoryConfig; import org.eclipse.emf.cdo.tests.model6.MyEnum; import org.eclipse.emf.cdo.tests.model6.MyEnumList; import org.eclipse.emf.cdo.tests.model6.MyEnumListUnsettable; @@ -73,6 +74,7 @@ public class Bugzilla_322218_Test extends AbstractCDOTest transaction.commit(); } + @Requires(IRepositoryConfig.CAPABILITY_CHUNKING) public void testMyEnumListPCL() throws Exception { MyEnumList myEnumList = getModel6Factory().createMyEnumList(); @@ -91,6 +93,7 @@ public class Bugzilla_322218_Test extends AbstractCDOTest transaction.commit(); } + @Requires(IRepositoryConfig.CAPABILITY_CHUNKING) public void testMyEnumList2PCL() throws Exception { CDOSession session = openSession(); @@ -109,6 +112,7 @@ public class Bugzilla_322218_Test extends AbstractCDOTest transaction.commit(); } + @Requires(IRepositoryConfig.CAPABILITY_CHUNKING) public void testMyEnumList3PCL() throws Exception { CDOSession session = openSession(); @@ -128,6 +132,7 @@ public class Bugzilla_322218_Test extends AbstractCDOTest transaction.commit(); } + @Requires(IRepositoryConfig.CAPABILITY_CHUNKING) public void testMyEnumList3PCL_Reload() throws Exception { { @@ -207,6 +212,7 @@ public class Bugzilla_322218_Test extends AbstractCDOTest transaction.commit(); } + @Requires(IRepositoryConfig.CAPABILITY_CHUNKING) public void testMyEnumListUnsettablePCL() throws Exception { MyEnumListUnsettable myEnumList = getModel6Factory().createMyEnumListUnsettable(); @@ -225,6 +231,7 @@ public class Bugzilla_322218_Test extends AbstractCDOTest transaction.commit(); } + @Requires(IRepositoryConfig.CAPABILITY_CHUNKING) public void testMyEnumListUnsettable2PCL() throws Exception { CDOSession session = openSession(); @@ -243,6 +250,7 @@ public class Bugzilla_322218_Test extends AbstractCDOTest transaction.commit(); } + @Requires(IRepositoryConfig.CAPABILITY_CHUNKING) public void testMyEnumListUnsettable3PCL() throws Exception { CDOSession session = openSession(); @@ -262,6 +270,7 @@ public class Bugzilla_322218_Test extends AbstractCDOTest transaction.commit(); } + @Requires(IRepositoryConfig.CAPABILITY_CHUNKING) public void testMyEnumListUnsettable3PCL_Reload() throws Exception { { diff --git a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_323930_Test.java b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_323930_Test.java index 66d19bf54d..236c636881 100644 --- a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_323930_Test.java +++ b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_323930_Test.java @@ -36,7 +36,6 @@ public class Bugzilla_323930_Test extends AbstractCDOTest protected void doSetUp() throws Exception { super.doSetUp(); - skipStoreWithoutQueryXRefs(); } public void testChangeIndexesInTargetList() throws Exception diff --git a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_335675_Test.java b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_335675_Test.java index 10d4791771..daebd19d17 100644 --- a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_335675_Test.java +++ b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_335675_Test.java @@ -15,6 +15,8 @@ import org.eclipse.emf.cdo.eresource.CDOResource; import org.eclipse.emf.cdo.session.CDOSession; import org.eclipse.emf.cdo.spi.common.revision.BaseCDORevision; import org.eclipse.emf.cdo.tests.AbstractCDOTest; +import org.eclipse.emf.cdo.tests.config.IModelConfig; +import org.eclipse.emf.cdo.tests.config.impl.ConfigTest.Requires; import org.eclipse.emf.cdo.tests.model1.Model1Factory; import org.eclipse.emf.cdo.tests.model1.Model1Package; import org.eclipse.emf.cdo.tests.model1.OrderDetail; @@ -37,6 +39,7 @@ import org.eclipse.emf.ecore.util.EcoreUtil; /** * @author Caspar De Groot */ +@Requires(IModelConfig.CAPABILITY_LEGACY) public class Bugzilla_335675_Test extends AbstractCDOTest { public void test0() throws Exception diff --git a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_337054_Test.java b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_337054_Test.java index adc5782cca..6f931a7b31 100644 --- a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_337054_Test.java +++ b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_337054_Test.java @@ -30,7 +30,7 @@ public class Bugzilla_337054_Test extends AbstractCDOTest private static final int LIST_SIZE = 3; - @Requires({ IRepositoryConfig.CAPABILITY_BRANCHING, IRepositoryConfig.CAPABILITY_RESTARTABLE }) + @Requires({ IRepositoryConfig.CAPABILITY_BRANCHING, IRepositoryConfig.CAPABILITY_CHUNKING, IRepositoryConfig.CAPABILITY_RESTARTABLE }) public void testCDOElementProxies() throws Exception { CDOSession session = openSession(); diff --git a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_337587_Test.java b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_337587_Test.java index 69ab6970da..4dcefcdbf7 100644 --- a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_337587_Test.java +++ b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_337587_Test.java @@ -15,6 +15,7 @@ import org.eclipse.emf.cdo.eresource.CDOResource; import org.eclipse.emf.cdo.session.CDOSession; import org.eclipse.emf.cdo.spi.common.revision.InternalCDORevision; import org.eclipse.emf.cdo.tests.AbstractCDOTest; +import org.eclipse.emf.cdo.tests.config.IRepositoryConfig; import org.eclipse.emf.cdo.tests.model1.Customer; import org.eclipse.emf.cdo.tests.model1.SalesOrder; import org.eclipse.emf.cdo.transaction.CDOTransaction; @@ -29,6 +30,7 @@ import org.eclipse.emf.spi.cdo.InternalCDOTransaction; */ public class Bugzilla_337587_Test extends AbstractCDOTest { + @Requires(IRepositoryConfig.CAPABILITY_CHUNKING) public void testRevisionCompare() throws CommitException { { diff --git a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_347964_Test.java b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_347964_Test.java index 9037ba2aab..f2ecf67141 100644 --- a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_347964_Test.java +++ b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_347964_Test.java @@ -28,7 +28,7 @@ public class Bugzilla_347964_Test extends AbstractCDOTest { private static final String RESOURCE_NAME = "res347964"; - @Requires(IRepositoryConfig.CAPABILITY_RESTARTABLE) + @Requires({ IRepositoryConfig.CAPABILITY_RESTARTABLE, IRepositoryConfig.CAPABILITY_CHUNKING }) public void testIndexDeletion() throws Exception { CDOSession session = openSession(); diff --git a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_351393_Test.java b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_351393_Test.java index de1be03a69..d75d99d79d 100644 --- a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_351393_Test.java +++ b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_351393_Test.java @@ -33,10 +33,9 @@ public class Bugzilla_351393_Test extends AbstractCDOTest { // Ext-Refs with client-side UUIDs are stored "in sito", where the tests use even less chars. @Skips(IRepositoryConfig.CAPABILITY_UUIDS) + @Requires(IRepositoryConfig.CAPABILITY_EXTERNAL_REFS) public void testExtRef() throws Exception { - skipStoreWithoutExternalReferences(); - ResourceSet resourceSet = new ResourceSetImpl(); resourceSet.getResourceFactoryRegistry().getProtocolToFactoryMap().put("test", new XMIResourceFactoryImpl()); URI uri = URI.createURI("test:///tmp/file.xmi?" + "12345678901234567890" + // 41 diff --git a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_362270_Test.java b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_362270_Test.java index 2c9777e920..5512cdeae4 100644 --- a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_362270_Test.java +++ b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_362270_Test.java @@ -15,6 +15,8 @@ import org.eclipse.emf.cdo.CDOObject; import org.eclipse.emf.cdo.eresource.CDOResource; import org.eclipse.emf.cdo.session.CDOSession; import org.eclipse.emf.cdo.tests.AbstractCDOTest; +import org.eclipse.emf.cdo.tests.config.IRepositoryConfig; +import org.eclipse.emf.cdo.tests.config.impl.ConfigTest.Requires; import org.eclipse.emf.cdo.tests.model1.Company; import org.eclipse.emf.cdo.tests.model1.PurchaseOrder; import org.eclipse.emf.cdo.tests.model1.Supplier; @@ -52,6 +54,7 @@ import java.util.Map; * * @author Esteban Dugueperoux */ +@Requires(IRepositoryConfig.CAPABILITY_EXTERNAL_REFS) public class Bugzilla_362270_Test extends AbstractCDOTest { private final EReference SUPPLIERS = getModel1Package().getCompany_Suppliers(); diff --git a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_362270c_Test.java b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_362270c_Test.java index cf9ffb77d9..474a9a413b 100644 --- a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_362270c_Test.java +++ b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_362270c_Test.java @@ -13,6 +13,7 @@ package org.eclipse.emf.cdo.tests.bugzilla; import org.eclipse.emf.cdo.eresource.CDOResource; import org.eclipse.emf.cdo.session.CDOSession; import org.eclipse.emf.cdo.tests.AbstractCDOTest; +import org.eclipse.emf.cdo.tests.config.IRepositoryConfig; import org.eclipse.emf.cdo.tests.model1.Company; import org.eclipse.emf.cdo.tests.model1.PurchaseOrder; import org.eclipse.emf.cdo.tests.model1.Supplier; @@ -53,6 +54,7 @@ public class Bugzilla_362270c_Test extends AbstractCDOTest { private static final String RESOURCE_PATH = "/test1"; + @Requires(IRepositoryConfig.CAPABILITY_EXTERNAL_REFS) public void testNotifierNotACDOLegacyAdapter() throws Exception { TransactionalEditingDomain domain = TransactionalEditingDomain.Factory.INSTANCE.createEditingDomain(); diff --git a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_369646_Test.java b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_369646_Test.java index 7f3d024ec3..6f96be741e 100644 --- a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_369646_Test.java +++ b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_369646_Test.java @@ -64,6 +64,7 @@ public class Bugzilla_369646_Test extends AbstractCDOTest transaction.setBranch(sub1); } + @Requires(IRepositoryConfig.CAPABILITY_CHUNKING) public void testSetBranchWithPCL() throws Exception { { diff --git a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_405606_Test.java b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_405606_Test.java index 14bbb71813..8f578d9f1d 100644 --- a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_405606_Test.java +++ b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_405606_Test.java @@ -14,6 +14,7 @@ import org.eclipse.emf.cdo.eresource.CDOResource; import org.eclipse.emf.cdo.session.CDOSession; import org.eclipse.emf.cdo.spi.common.revision.InternalCDORevision; import org.eclipse.emf.cdo.tests.AbstractCDOTest; +import org.eclipse.emf.cdo.tests.config.IRepositoryConfig; import org.eclipse.emf.cdo.tests.model1.Category; import org.eclipse.emf.cdo.transaction.CDOTransaction; import org.eclipse.emf.cdo.util.CDOUtil; @@ -26,6 +27,7 @@ import org.eclipse.net4j.util.io.IOUtil; */ public class Bugzilla_405606_Test extends AbstractCDOTest { + @Requires(IRepositoryConfig.CAPABILITY_CHUNKING) public void testUnchunkedRevisionWithPCL() throws Exception { { diff --git a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_436246_Test.java b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_436246_Test.java index 079cb4876d..7654764a51 100644 --- a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_436246_Test.java +++ b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_436246_Test.java @@ -250,9 +250,11 @@ public class Bugzilla_436246_Test extends AbstractCDOTest protocol.removeListener(signalCounter); } + /** + * @author Eike Stepper + */ private class CustomCDOFetchRuleManager implements CDOFetchRuleManager { - private CDOID companyCDOID; public CustomCDOFetchRuleManager(CDOID companyCDOID) diff --git a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_485394_Test.java b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_485394_Test.java index 626410cc73..247179de8d 100644 --- a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_485394_Test.java +++ b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/bugzilla/Bugzilla_485394_Test.java @@ -36,6 +36,8 @@ public class Bugzilla_485394_Test extends AbstractCDOTest return map; } + // With inverse list mappings there is no referential integrity violation in this case. + @Skips("DB.inverse.lists") public void testReferentialIntegrityWithContainmentProxy() throws Exception { skipStoreWithoutQueryXRefs(); diff --git a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/config/IRepositoryConfig.java b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/config/IRepositoryConfig.java index 4cac391e45..e9344a7042 100644 --- a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/config/IRepositoryConfig.java +++ b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/config/IRepositoryConfig.java @@ -35,6 +35,10 @@ public interface IRepositoryConfig extends IConfig, IRepositoryProvider public static final String CAPABILITY_BRANCHING = "repository.branching"; + public static final String CAPABILITY_CHUNKING = "repository.chunking"; + + public static final String CAPABILITY_EXTERNAL_REFS = "repository.external.refs"; + public static final String CAPABILITY_UUIDS = "repository.uuids"; public static final String CAPABILITY_OFFLINE = "repository.offline"; @@ -49,6 +53,10 @@ public interface IRepositoryConfig extends IConfig, IRepositoryProvider public boolean isSupportingBranches(); + public boolean isSupportingChunks(); + + public boolean isSupportingExtRefs(); + public IDGenerationLocation getIDGenerationLocation(); public Map<String, String> getRepositoryProperties(); diff --git a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/config/impl/ConfigTest.java b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/config/impl/ConfigTest.java index 40601e442b..aeffedfeb2 100644 --- a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/config/impl/ConfigTest.java +++ b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/config/impl/ConfigTest.java @@ -20,7 +20,6 @@ import org.eclipse.emf.cdo.spi.server.InternalRepository; import org.eclipse.emf.cdo.spi.server.InternalStore.NoChangeSets; import org.eclipse.emf.cdo.spi.server.InternalStore.NoCommitInfos; import org.eclipse.emf.cdo.spi.server.InternalStore.NoDurableLocking; -import org.eclipse.emf.cdo.spi.server.InternalStore.NoExternalReferences; import org.eclipse.emf.cdo.spi.server.InternalStore.NoFeatureMaps; import org.eclipse.emf.cdo.spi.server.InternalStore.NoHandleRevisions; import org.eclipse.emf.cdo.spi.server.InternalStore.NoLargeObjects; @@ -726,11 +725,6 @@ public abstract class ConfigTest extends AbstractOMTest implements IConstants || ObjectUtil.equals(getModelConfig(), config); } - protected void skipStoreWithoutExternalReferences() - { - skipTest(getRepository().getStore() instanceof NoExternalReferences); - } - protected void skipStoreWithoutQueryXRefs() { skipTest(getRepository().getStore() instanceof NoQueryXRefs); diff --git a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/config/impl/RepositoryConfig.java b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/config/impl/RepositoryConfig.java index ad9f618b85..2dec90aa22 100644 --- a/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/config/impl/RepositoryConfig.java +++ b/plugins/org.eclipse.emf.cdo.tests/src/org/eclipse/emf/cdo/tests/config/impl/RepositoryConfig.java @@ -179,6 +179,16 @@ public abstract class RepositoryConfig extends Config implements IRepositoryConf } } + if (isSupportingChunks()) + { + capabilities.add(CAPABILITY_CHUNKING); + } + + if (isSupportingExtRefs()) + { + capabilities.add(CAPABILITY_EXTERNAL_REFS); + } + if (getIDGenerationLocation() == IDGenerationLocation.CLIENT) { capabilities.add(CAPABILITY_UUIDS); @@ -209,6 +219,16 @@ public abstract class RepositoryConfig extends Config implements IRepositoryConf return supportingBranches; } + public boolean isSupportingChunks() + { + return true; + } + + public boolean isSupportingExtRefs() + { + return true; + } + public IDGenerationLocation getIDGenerationLocation() { return idGenerationLocation; |