Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEd Merks2021-04-05 06:28:02 +0000
committerEd Merks2021-04-05 06:28:02 +0000
commit7928b3f7031a9381a1dd8b07e418abd91614813d (patch)
tree742ec7366645397e9708fef7142568bbef2c6d95
parentdd3a190872e1ad826d949d34a335024ef7c09081 (diff)
downloadorg.eclipse.emf-7928b3f7031a9381a1dd8b07e418abd91614813d.tar.gz
org.eclipse.emf-7928b3f7031a9381a1dd8b07e418abd91614813d.tar.xz
org.eclipse.emf-7928b3f7031a9381a1dd8b07e418abd91614813d.zip
[571760] EcorePackageImpl.createEcoreAnnotations not called
-rw-r--r--features/org.eclipse.emf.base-feature/feature.xml2
-rw-r--r--features/org.eclipse.emf.base-feature/pom.xml2
-rw-r--r--features/org.eclipse.emf.ecore-feature/feature.xml2
-rw-r--r--features/org.eclipse.emf.ecore-feature/pom.xml2
-rwxr-xr-xfeatures/org.eclipse.emf.rap-feature/feature.xml2
-rw-r--r--features/org.eclipse.emf.rap-feature/pom.xml2
-rwxr-xr-xfeatures/org.eclipse.emf.rap.sdk-feature/feature.xml2
-rw-r--r--features/org.eclipse.emf.rap.sdk-feature/pom.xml2
-rw-r--r--plugins/org.eclipse.emf.codegen.ecore/META-INF/MANIFEST.MF2
-rw-r--r--plugins/org.eclipse.emf.ecore.xcore.edit/META-INF/MANIFEST.MF2
-rw-r--r--plugins/org.eclipse.emf.ecore.xcore.lib/META-INF/MANIFEST.MF2
-rw-r--r--plugins/org.eclipse.emf.ecore.xcore/META-INF/MANIFEST.MF2
-rw-r--r--plugins/org.eclipse.emf.ecore/META-INF/MANIFEST.MF4
-rw-r--r--plugins/org.eclipse.emf.ecore/pom.xml2
-rw-r--r--plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/ecore/impl/EcorePackageImpl.java4
-rw-r--r--tests/org.eclipse.emf.test.core/META-INF/MANIFEST.MF4
-rw-r--r--tests/org.eclipse.emf.test.core/pom.xml2
-rw-r--r--tests/org.eclipse.emf.test.core/src/org/eclipse/emf/test/core/ecore/EcoreTest.java124
18 files changed, 145 insertions, 19 deletions
diff --git a/features/org.eclipse.emf.base-feature/feature.xml b/features/org.eclipse.emf.base-feature/feature.xml
index f80e15aaa..1c23bc1a3 100644
--- a/features/org.eclipse.emf.base-feature/feature.xml
+++ b/features/org.eclipse.emf.base-feature/feature.xml
@@ -2,7 +2,7 @@
<feature
id="org.eclipse.emf.base"
label="%featureName"
- version="2.25.0.qualifier"
+ version="2.26.0.qualifier"
provider-name="%providerName"
license-feature="org.eclipse.emf.license"
license-feature-version="2.11.0">
diff --git a/features/org.eclipse.emf.base-feature/pom.xml b/features/org.eclipse.emf.base-feature/pom.xml
index 630e3d649..a60ac226b 100644
--- a/features/org.eclipse.emf.base-feature/pom.xml
+++ b/features/org.eclipse.emf.base-feature/pom.xml
@@ -11,7 +11,7 @@
<groupId>org.eclipse.emf.features</groupId>
<artifactId>org.eclipse.emf.base</artifactId>
- <version>2.25.0-SNAPSHOT</version>
+ <version>2.26.0-SNAPSHOT</version>
<packaging>eclipse-feature</packaging>
</project>
diff --git a/features/org.eclipse.emf.ecore-feature/feature.xml b/features/org.eclipse.emf.ecore-feature/feature.xml
index 9a45cec54..fd8c8e0b9 100644
--- a/features/org.eclipse.emf.ecore-feature/feature.xml
+++ b/features/org.eclipse.emf.ecore-feature/feature.xml
@@ -2,7 +2,7 @@
<feature
id="org.eclipse.emf.ecore"
label="%featureName"
- version="2.23.0.qualifier"
+ version="2.24.0.qualifier"
provider-name="%providerName"
license-feature="org.eclipse.emf.license"
license-feature-version="2.11.0">
diff --git a/features/org.eclipse.emf.ecore-feature/pom.xml b/features/org.eclipse.emf.ecore-feature/pom.xml
index f40d43825..2d6448ed9 100644
--- a/features/org.eclipse.emf.ecore-feature/pom.xml
+++ b/features/org.eclipse.emf.ecore-feature/pom.xml
@@ -12,7 +12,7 @@
<groupId>org.eclipse.emf.features</groupId>
<artifactId>org.eclipse.emf.ecore</artifactId>
- <version>2.23.0-SNAPSHOT</version>
+ <version>2.24.0-SNAPSHOT</version>
<packaging>eclipse-feature</packaging>
</project>
diff --git a/features/org.eclipse.emf.rap-feature/feature.xml b/features/org.eclipse.emf.rap-feature/feature.xml
index f548a4c91..243e7c17e 100755
--- a/features/org.eclipse.emf.rap-feature/feature.xml
+++ b/features/org.eclipse.emf.rap-feature/feature.xml
@@ -2,7 +2,7 @@
<feature
id="org.eclipse.emf.rap"
label="%featureName"
- version="2.25.0.qualifier"
+ version="2.26.0.qualifier"
provider-name="%providerName"
license-feature="org.eclipse.emf.license"
license-feature-version="2.11.0">
diff --git a/features/org.eclipse.emf.rap-feature/pom.xml b/features/org.eclipse.emf.rap-feature/pom.xml
index 3d5aa6a40..d6418036d 100644
--- a/features/org.eclipse.emf.rap-feature/pom.xml
+++ b/features/org.eclipse.emf.rap-feature/pom.xml
@@ -12,7 +12,7 @@
<groupId>org.eclipse.emf.features</groupId>
<artifactId>org.eclipse.emf.rap</artifactId>
- <version>2.25.0-SNAPSHOT</version>
+ <version>2.26.0-SNAPSHOT</version>
<packaging>eclipse-feature</packaging>
</project>
diff --git a/features/org.eclipse.emf.rap.sdk-feature/feature.xml b/features/org.eclipse.emf.rap.sdk-feature/feature.xml
index f5eb9997b..8aaa9a79e 100755
--- a/features/org.eclipse.emf.rap.sdk-feature/feature.xml
+++ b/features/org.eclipse.emf.rap.sdk-feature/feature.xml
@@ -2,7 +2,7 @@
<feature
id="org.eclipse.emf.rap.sdk"
label="%featureName"
- version="2.25.0.qualifier"
+ version="2.26.0.qualifier"
provider-name="%providerName"
license-feature="org.eclipse.emf.license"
license-feature-version="2.11.0">
diff --git a/features/org.eclipse.emf.rap.sdk-feature/pom.xml b/features/org.eclipse.emf.rap.sdk-feature/pom.xml
index 48b0e1749..23db4968f 100644
--- a/features/org.eclipse.emf.rap.sdk-feature/pom.xml
+++ b/features/org.eclipse.emf.rap.sdk-feature/pom.xml
@@ -12,7 +12,7 @@
<groupId>org.eclipse.emf.features</groupId>
<artifactId>org.eclipse.emf.rap.sdk</artifactId>
- <version>2.25.0-SNAPSHOT</version>
+ <version>2.26.0-SNAPSHOT</version>
<packaging>eclipse-feature</packaging>
<build>
diff --git a/plugins/org.eclipse.emf.codegen.ecore/META-INF/MANIFEST.MF b/plugins/org.eclipse.emf.codegen.ecore/META-INF/MANIFEST.MF
index dcc58ef80..8714d8ed6 100644
--- a/plugins/org.eclipse.emf.codegen.ecore/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.emf.codegen.ecore/META-INF/MANIFEST.MF
@@ -23,7 +23,7 @@ Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.6.0,4.0.0)",
org.eclipse.core.resources;bundle-version="[3.6.0,4.0.0)",
org.eclipse.jdt.core;bundle-version="[3.6.0,4.0.0)",
org.eclipse.jdt.launching;bundle-version="[3.5.0,4.0.0)",
- org.eclipse.emf.ecore;bundle-version="[2.23.0,3.0.0)";visibility:=reexport,
+ org.eclipse.emf.ecore;bundle-version="[2.24.0,3.0.0)";visibility:=reexport,
org.eclipse.emf.codegen;bundle-version="[2.21.0,3.0.0)";visibility:=reexport,
org.eclipse.emf.ecore.xmi;bundle-version="[2.16.0,3.0.0)",
org.eclipse.text;bundle-version="[3.5.0,4.0.0)"
diff --git a/plugins/org.eclipse.emf.ecore.xcore.edit/META-INF/MANIFEST.MF b/plugins/org.eclipse.emf.ecore.xcore.edit/META-INF/MANIFEST.MF
index 29f8feb32..6993ed2b8 100644
--- a/plugins/org.eclipse.emf.ecore.xcore.edit/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.emf.ecore.xcore.edit/META-INF/MANIFEST.MF
@@ -12,7 +12,7 @@ Export-Package: org.eclipse.emf.ecore.xcore.provider
Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.6.0,4.0.0)",
org.eclipse.emf.ecore.xcore;bundle-version="[1.18.0,2.0.0)";visibility:=reexport,
org.eclipse.emf.edit;bundle-version="[2.16.0,3.0.0)";visibility:=reexport,
- org.eclipse.emf.ecore;bundle-version="[2.23.0,3.0.0)";visibility:=reexport,
+ org.eclipse.emf.ecore;bundle-version="[2.24.0,3.0.0)";visibility:=reexport,
org.eclipse.emf.ecore.edit;bundle-version="[2.13.0,3.0.0)";visibility:=reexport,
org.eclipse.emf.codegen.ecore;bundle-version="[2.26.0,3.0.0)";visibility:=reexport,
org.eclipse.emf.codegen.ecore.ui;bundle-version="[2.26.0,3.0.0)";visibility:=reexport,
diff --git a/plugins/org.eclipse.emf.ecore.xcore.lib/META-INF/MANIFEST.MF b/plugins/org.eclipse.emf.ecore.xcore.lib/META-INF/MANIFEST.MF
index 2e661b199..4b9fad509 100644
--- a/plugins/org.eclipse.emf.ecore.xcore.lib/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.emf.ecore.xcore.lib/META-INF/MANIFEST.MF
@@ -7,7 +7,7 @@ Bundle-SymbolicName: org.eclipse.emf.ecore.xcore.lib;singleton:=true
Bundle-Version: 1.6.0.qualifier
Bundle-ClassPath: .
Bundle-RequiredExecutionEnvironment: JavaSE-1.8
-Require-Bundle: org.eclipse.emf.ecore;bundle-version="[2.23.0,3.0.0)";resolution:=optional,
+Require-Bundle: org.eclipse.emf.ecore;bundle-version="[2.24.0,3.0.0)";resolution:=optional,
org.eclipse.emf.common;bundle-version="[2.22.0,3.0.0)",
org.eclipse.xtext.xbase.lib;bundle-version="[2.18.0,3.0.0)"
Bundle-ActivationPolicy: lazy
diff --git a/plugins/org.eclipse.emf.ecore.xcore/META-INF/MANIFEST.MF b/plugins/org.eclipse.emf.ecore.xcore/META-INF/MANIFEST.MF
index be355ec7c..e8299a542 100644
--- a/plugins/org.eclipse.emf.ecore.xcore/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.emf.ecore.xcore/META-INF/MANIFEST.MF
@@ -10,7 +10,7 @@ Bundle-Activator: org.eclipse.emf.ecore.xcore.XcorePlugin$Implementation
Bundle-ActivationPolicy: lazy
Require-Bundle: org.eclipse.xtext;bundle-version="[2.13.0,3.0.0)";visibility:=reexport,
org.apache.log4j;bundle-version="[1.2.0,2.0.0)";visibility:=reexport,
- org.eclipse.emf.ecore;bundle-version="[2.23.0,3.0.0)";visibility:=reexport,
+ org.eclipse.emf.ecore;bundle-version="[2.24.0,3.0.0)";visibility:=reexport,
org.eclipse.xtext.util;bundle-version="[2.18.0,3.0.0)",
org.antlr.runtime;bundle-version="[3.2.0,3.2.1)",
org.eclipse.xtext.xbase;bundle-version="[2.18.0,3.0.0)";visibility:=reexport,
diff --git a/plugins/org.eclipse.emf.ecore/META-INF/MANIFEST.MF b/plugins/org.eclipse.emf.ecore/META-INF/MANIFEST.MF
index de079a3a2..809532254 100644
--- a/plugins/org.eclipse.emf.ecore/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.emf.ecore/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.eclipse.emf.ecore;singleton:=true
-Bundle-Version: 2.23.0.qualifier
+Bundle-Version: 2.24.0.qualifier
Bundle-ClassPath: .
Bundle-Activator: org.eclipse.emf.ecore.plugin.EcorePlugin$Implementation$Activator
Bundle-Vendor: %providerName
@@ -22,7 +22,7 @@ Export-Package: org.eclipse.emf.ecore,
org.eclipse.emf.ecore.xml.type.internal,
org.eclipse.emf.ecore.xml.type.util
Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.6.0,4.0.0)";resolution:=optional;x-installation:=greedy,
- org.eclipse.emf.common;bundle-version="[2.20.0,3.0.0)";visibility:=reexport,
+ org.eclipse.emf.common;bundle-version="[2.22.0,3.0.0)";visibility:=reexport,
org.eclipse.core.resources;bundle-version="[3.6.0,4.0.0)";resolution:=optional
Import-Package: javax.crypto,
javax.crypto.spec,
diff --git a/plugins/org.eclipse.emf.ecore/pom.xml b/plugins/org.eclipse.emf.ecore/pom.xml
index 6ba5e6cb2..6066ecb67 100644
--- a/plugins/org.eclipse.emf.ecore/pom.xml
+++ b/plugins/org.eclipse.emf.ecore/pom.xml
@@ -12,7 +12,7 @@
<groupId>org.eclipse.emf</groupId>
<artifactId>org.eclipse.emf.ecore</artifactId>
- <version>2.23.0-SNAPSHOT</version>
+ <version>2.24.0-SNAPSHOT</version>
<packaging>eclipse-plugin</packaging>
</project>
diff --git a/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/ecore/impl/EcorePackageImpl.java b/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/ecore/impl/EcorePackageImpl.java
index 2ace8b5bd..46c25e045 100644
--- a/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/ecore/impl/EcorePackageImpl.java
+++ b/plugins/org.eclipse.emf.ecore/src/org/eclipse/emf/ecore/impl/EcorePackageImpl.java
@@ -515,7 +515,9 @@ public class EcorePackageImpl extends EPackageImpl implements EcorePackage
{
// Create annotations
// http:///org/eclipse/emf/ecore/util/ExtendedMetaData
- ((EcorePackageImpl)EcorePackage.eINSTANCE).createExtendedMetaDataAnnotations();
+ EcorePackageImpl ecorePackageImpl = (EcorePackageImpl)EcorePackage.eINSTANCE;
+ ecorePackageImpl.createExtendedMetaDataAnnotations();
+ ecorePackageImpl.createEcoreAnnotations();
((EPackageImpl)EcorePackage.eINSTANCE).freeze();
diff --git a/tests/org.eclipse.emf.test.core/META-INF/MANIFEST.MF b/tests/org.eclipse.emf.test.core/META-INF/MANIFEST.MF
index e9806ecde..5137ae024 100644
--- a/tests/org.eclipse.emf.test.core/META-INF/MANIFEST.MF
+++ b/tests/org.eclipse.emf.test.core/META-INF/MANIFEST.MF
@@ -2,7 +2,7 @@ Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: %pluginName
Bundle-SymbolicName: org.eclipse.emf.test.core;singleton:=true
-Bundle-Version: 2.22.0.qualifier
+Bundle-Version: 2.23.0.qualifier
Bundle-ClassPath: .
Bundle-Vendor: %providerName
Bundle-Localization: plugin
@@ -28,7 +28,7 @@ Export-Package: org.eclipse.emf.test.core,
org.eclipse.emf.test.core.xrefsopposite.util
Require-Bundle: org.eclipse.core.runtime;bundle-version="[3.6.0,4.0.0)",
org.eclipse.core.resources;bundle-version="[3.6.0,4.0.0)",
- org.eclipse.emf.ecore;bundle-version="[2.23.0,3.0.0)";visibility:=reexport,
+ org.eclipse.emf.ecore;bundle-version="[2.24.0,3.0.0)";visibility:=reexport,
org.eclipse.emf.ecore.change;bundle-version="[2.14.0,3.0.0)",
org.eclipse.emf.ecore.xmi;bundle-version="[2.16.0,3.0.0)";visibility:=reexport,
org.eclipse.xsd;bundle-version="[2.18.0,3.0.0)",
diff --git a/tests/org.eclipse.emf.test.core/pom.xml b/tests/org.eclipse.emf.test.core/pom.xml
index 6099bb66f..52ee9cb01 100644
--- a/tests/org.eclipse.emf.test.core/pom.xml
+++ b/tests/org.eclipse.emf.test.core/pom.xml
@@ -12,7 +12,7 @@
<groupId>org.eclipse.emf</groupId>
<artifactId>org.eclipse.emf.test.core</artifactId>
- <version>2.22.0-SNAPSHOT</version>
+ <version>2.23.0-SNAPSHOT</version>
<packaging>eclipse-test-plugin</packaging>
</project>
diff --git a/tests/org.eclipse.emf.test.core/src/org/eclipse/emf/test/core/ecore/EcoreTest.java b/tests/org.eclipse.emf.test.core/src/org/eclipse/emf/test/core/ecore/EcoreTest.java
index cc9beadf7..5bc2b36ae 100644
--- a/tests/org.eclipse.emf.test.core/src/org/eclipse/emf/test/core/ecore/EcoreTest.java
+++ b/tests/org.eclipse.emf.test.core/src/org/eclipse/emf/test/core/ecore/EcoreTest.java
@@ -16,23 +16,31 @@ import static org.junit.Assert.assertTrue;
import static org.junit.Assert.fail;
import java.util.ArrayList;
+import java.util.Iterator;
import java.util.List;
import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.common.notify.Notifier;
import org.eclipse.emf.common.notify.impl.AdapterImpl;
+import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.common.util.URI;
import org.eclipse.emf.ecore.EAnnotation;
import org.eclipse.emf.ecore.EClass;
+import org.eclipse.emf.ecore.EClassifier;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.emf.ecore.EOperation;
import org.eclipse.emf.ecore.EPackage;
+import org.eclipse.emf.ecore.EReference;
+import org.eclipse.emf.ecore.EStructuralFeature;
import org.eclipse.emf.ecore.EcoreFactory;
+import org.eclipse.emf.ecore.EcorePackage;
import org.eclipse.emf.ecore.InternalEObject;
import org.eclipse.emf.ecore.resource.Resource;
import org.eclipse.emf.ecore.resource.ResourceSet;
import org.eclipse.emf.ecore.resource.impl.ResourceImpl;
import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
import org.eclipse.emf.ecore.util.EcoreUtil;
+import org.eclipse.emf.ecore.util.EcoreUtil.EqualityHelper;
import org.junit.Test;
public class EcoreTest
@@ -253,4 +261,120 @@ public class EcoreTest
assertSame("The proxy URI " + eProxyURI + " fails to resolve to the correct object", eObject, otherEObject);
}
}
+
+ @Test
+ public void testGeneratedPackageInstanceEquality()
+ {
+ compareDynamicEPackageWithGeneratedEPackage(URI.createURI("platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore"));
+ compareDynamicEPackageWithGeneratedEPackage(URI.createURI("platform:/plugin/org.eclipse.emf.ecore/model/XMLType.ecore"));
+ compareDynamicEPackageWithGeneratedEPackage(URI.createURI("platform:/plugin/org.eclipse.emf.ecore/model/XMLNamespace.ecore"));
+ compareDynamicEPackageWithGeneratedEPackage(URI.createURI("platform:/plugin/org.eclipse.emf.ecore.change/model/Change.ecore"));
+ }
+
+ public static void compareDynamicEPackageWithGeneratedEPackage(final URI uri)
+ {
+ ResourceSet resourceSet = new ResourceSetImpl()
+ {
+ URI ecoreURI = URI.createURI("platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore");
+
+ @Override
+ protected Resource delegatedGetResource(URI otherURI, boolean loadOnDemand)
+ {
+ if (!uri.equals(ecoreURI) && otherURI.equals(ecoreURI))
+ {
+ return EcorePackage.eINSTANCE.eResource();
+ }
+ else
+ {
+ return super.delegatedGetResource(otherURI, loadOnDemand);
+ }
+ }
+ };
+ EPackage ePackage = (EPackage)resourceSet.getResource(uri, true).getContents().get(0);
+ resourceSet.getURIConverter().getURIMap().put(URI.createURI("platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore"), URI.createURI(EcorePackage.eNS_URI));
+ EcoreUtil.resolveAll(resourceSet);
+ List<EObject> genModelAnnotations = new ArrayList<EObject>();
+ for (Iterator<Notifier> i = resourceSet.getAllContents(); i.hasNext();)
+ {
+ Notifier eObject = i.next();
+ if (eObject instanceof EAnnotation && EcoreUtil.GEN_MODEL_ANNOTATION_URI.equals(((EAnnotation)eObject).getSource()))
+ {
+ genModelAnnotations.add((EObject)eObject);
+ }
+ }
+
+ for (EObject eObject : genModelAnnotations)
+ {
+ EcoreUtil.delete(eObject);
+ }
+
+ EqualityHelper equalityHelper = new EcoreUtil.EqualityHelper()
+ {
+ private static final long serialVersionUID = 1L;
+
+ @Override
+ protected boolean haveEqualReference(EObject eObject1, EObject eObject2, EReference reference)
+ {
+ if (reference == EcorePackage.Literals.EPACKAGE__ECLASSIFIERS)
+ {
+ EPackage ePackage1 = (EPackage)eObject1;
+ EList<EClassifier> eClassifiers1 = ePackage1.getEClassifiers();
+ EPackage ePackage2 = (EPackage)eObject2;
+ EList<EClassifier> eClassifiers2 = ePackage2.getEClassifiers();
+
+ int size = eClassifiers1.size();
+ if (size != eClassifiers2.size())
+ {
+ return false;
+ }
+
+ for (EClassifier eClassifier : eClassifiers1)
+ {
+ if (!equals(eClassifier, ePackage2.getEClassifier(eClassifier.getName())))
+ {
+ return false;
+ }
+ }
+
+ return true;
+ }
+ else
+ {
+ return super.haveEqualReference(eObject1, eObject2, reference);
+ }
+ }
+
+ @Override
+ protected boolean haveEqualFeature(EObject eObject1, EObject eObject2, EStructuralFeature feature)
+ {
+ boolean result = super.haveEqualFeature(eObject1, eObject2, feature);
+ if (!result)
+ {
+ if (feature == EcorePackage.Literals.ECLASSIFIER__INSTANCE_CLASS_NAME)
+ {
+ EClassifier eClassifer1 = (EClassifier)eObject1;
+ String instanceClassName1 = eClassifer1.getInstanceClassName();
+ EClassifier eClassifer2 = (EClassifier)eObject2;
+ String instanceClassName2 = eClassifer2.getInstanceClassName();
+ if ("org.eclipse.emf.common.util.Enumerator".equals(instanceClassName1) && "org.eclipse.emf.common.util.AbstractEnumerator".equals(instanceClassName2))
+ {
+ return true;
+ }
+ }
+ else if (feature == EcorePackage.Literals.EREFERENCE__RESOLVE_PROXIES)
+ {
+ EReference eReference1 = (EReference)eObject1;
+ EReference eReference2 = (EReference)eObject2;
+ if (eReference1.isContainment() && eReference2.isContainment() && eReference1.isResolveProxies() && !eReference2.isRequired()) {
+ return true;
+ }
+ }
+ }
+ return result;
+ }
+ };
+
+ boolean equal = equalityHelper.equals(ePackage, EPackage.Registry.INSTANCE.getEPackage(ePackage.getNsURI()));
+ assertTrue("The dynamic and static instances of '" + uri + "' should be structurally equivalent", equal);
+ }
}

Back to the top