diff options
author | Axel Richard | 2014-02-12 13:35:32 +0000 |
---|---|---|
committer | Axel Richard | 2014-02-12 16:29:04 +0000 |
commit | bda238f44b4c08fd1895ceed76d71023743eca4d (patch) | |
tree | 1e208ea90c785d5c013a8eb813f17a2337578e12 | |
parent | 1b76ce4d3190919ba86339f3b48b30decc61400a (diff) | |
download | org.eclipse.emf.compare-bda238f44b4c08fd1895ceed76d71023743eca4d.tar.gz org.eclipse.emf.compare-bda238f44b4c08fd1895ceed76d71023743eca4d.tar.xz org.eclipse.emf.compare-bda238f44b4c08fd1895ceed76d71023743eca4d.zip |
Add new tests
Match by Id, by content
Req, Equi, Conflict
Compare
LogicalModel
UML post match, post comparison
GMF post comparison
48 files changed, 1376 insertions, 137 deletions
diff --git a/performance/org.eclipse.emf.compare.tests.performance-parent/targetPlatforms/luna-sdk.target b/performance/org.eclipse.emf.compare.tests.performance-parent/targetPlatforms/luna-sdk.target index 0b6419801..35dfbd239 100644 --- a/performance/org.eclipse.emf.compare.tests.performance-parent/targetPlatforms/luna-sdk.target +++ b/performance/org.eclipse.emf.compare.tests.performance-parent/targetPlatforms/luna-sdk.target @@ -5,13 +5,10 @@ <unit id="org.eclipse.sdk.ide" version="4.4.0.I20140123-1600"/>
<unit id="org.eclipse.emf.feature.group" version="2.10.0.v20140127-0448"/>
<unit id="org.eclipse.uml2.feature.group" version="5.0.0.v20140127-0906"/>
+<unit id="org.eclipse.egit.feature.group" version="3.2.0.201312181205-r"/>
<repository location="http://download.eclipse.org/releases/luna"/>
</location>
<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="false" type="InstallableUnit">
-<unit id="org.junit4" version="4.8.1.v20100525"/>
-<repository location="http://download.eclipse.org/releases/helios"/>
-</location>
-<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="false" type="InstallableUnit">
<unit id="com.google.guava" version="11.0.2.v201303041551"/>
<unit id="org.apache.commons.logging" version="1.1.1.v201101211721"/>
<repository location="http://download.eclipse.org/tools/orbit/downloads/drops/S20131024145017/repository/"/>
@@ -19,6 +16,9 @@ <location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="false" type="InstallableUnit">
<unit id="org.eclipse.emf.compare.feature.group" version="3.0.0.201402070502"/>
<unit id="org.eclipse.emf.compare.ide.ui.feature.group" version="3.0.0.201402070502"/>
+<unit id="org.eclipse.emf.compare.diagram.gmf.feature.group" version="3.0.0.201402070502"/>
+<unit id="org.eclipse.emf.compare.diagram.papyrus.feature.group" version="3.0.0.201402070502"/>
+<unit id="org.eclipse.emf.compare.uml2.feature.group" version="3.0.0.201402070502"/>
<repository location="http://download.eclipse.org/modeling/emf/compare/updates/nightly/latest"/>
</location>
<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="planner" includeSource="false" type="InstallableUnit">
diff --git a/performance/org.eclipse.emf.compare.tests.performance-parent/targetPlatforms/luna-sdk.targetplatform b/performance/org.eclipse.emf.compare.tests.performance-parent/targetPlatforms/luna-sdk.targetplatform index 96e5c2d9b..d632caa7d 100644 --- a/performance/org.eclipse.emf.compare.tests.performance-parent/targetPlatforms/luna-sdk.targetplatform +++ b/performance/org.eclipse.emf.compare.tests.performance-parent/targetPlatforms/luna-sdk.targetplatform @@ -5,10 +5,8 @@ location "http://download.eclipse.org/releases/luna" { org.eclipse.sdk.ide org.eclipse.emf.feature.group org.eclipse.uml2.feature.group -} - -location "http://download.eclipse.org/releases/helios" { - org.junit4 + org.eclipse.egit.feature.group + org.junit4;version="[4.11.0,5.0.0)" } location "http://download.eclipse.org/tools/orbit/downloads/drops/S20131024145017/repository/" { @@ -21,6 +19,9 @@ location "http://download.eclipse.org/modeling/emf/compare/updates/nightly/lates with requirements org.eclipse.emf.compare.feature.group org.eclipse.emf.compare.ide.ui.feature.group + org.eclipse.emf.compare.diagram.gmf.feature.group + org.eclipse.emf.compare.diagram.papyrus.feature.group + org.eclipse.emf.compare.uml2.feature.group } location "http://axelrichard.github.io/fr.obeo.performance/" { diff --git a/performance/org.eclipse.emf.compare.tests.performance/META-INF/MANIFEST.MF b/performance/org.eclipse.emf.compare.tests.performance/META-INF/MANIFEST.MF index 8e0541dd9..f9fbc069f 100644 --- a/performance/org.eclipse.emf.compare.tests.performance/META-INF/MANIFEST.MF +++ b/performance/org.eclipse.emf.compare.tests.performance/META-INF/MANIFEST.MF @@ -6,13 +6,19 @@ Bundle-Version: 1.0.0.qualifier Bundle-Vendor: Eclipse Modeling Bundle-RequiredExecutionEnvironment: J2SE-1.5 Require-Bundle: org.eclipse.core.runtime;bundle-version="3.8.0", + org.eclipse.core.resources, + org.eclipse.swt, org.junit;bundle-version="4.10.0", com.google.guava;bundle-version="10.0.1", org.eclipse.uml2.uml;bundle-version="4.0.0", org.eclipse.uml2.uml.resources;bundle-version="4.0.0", + org.eclipse.compare;bundle-version="3.5.500", org.eclipse.emf.compare;bundle-version="2.0.0", org.eclipse.emf.compare.ide.ui;bundle-version="3.0.0", - fr.obeo.performance;bundle-version="1.0.0" + org.eclipse.emf.compare.diagram;bundle-version="2.2.0", + org.eclipse.emf.compare.uml2;bundle-version="2.2.0", + fr.obeo.performance;bundle-version="1.0.0", + org.eclipse.ui.ide Bundle-Activator: org.eclipse.emf.compare.tests.performance.EMFComparePerformanceActivator Bundle-ClassPath: . Export-Package: data.models, diff --git a/performance/org.eclipse.emf.compare.tests.performance/TestCompare-heap_delta.csv b/performance/org.eclipse.emf.compare.tests.performance/TestCompare-heap_delta.csv new file mode 100644 index 000000000..579444ebc --- /dev/null +++ b/performance/org.eclipse.emf.compare.tests.performance/TestCompare-heap_delta.csv @@ -0,0 +1,2 @@ +Date,Small UML,Nominal UML,Large UML
+2014/02/12 16:39:07,0.64,32.78,166.22
diff --git a/performance/org.eclipse.emf.compare.tests.performance/TestCompare-heap_peek.csv b/performance/org.eclipse.emf.compare.tests.performance/TestCompare-heap_peek.csv new file mode 100644 index 000000000..031cebbbe --- /dev/null +++ b/performance/org.eclipse.emf.compare.tests.performance/TestCompare-heap_peek.csv @@ -0,0 +1,2 @@ +Date,Small UML,Nominal UML,Large UML
+2014/02/12 16:39:07,40.19,400.98,1057.08
diff --git a/performance/org.eclipse.emf.compare.tests.performance/TestCompare-system_time.csv b/performance/org.eclipse.emf.compare.tests.performance/TestCompare-system_time.csv new file mode 100644 index 000000000..31857a0dd --- /dev/null +++ b/performance/org.eclipse.emf.compare.tests.performance/TestCompare-system_time.csv @@ -0,0 +1,2 @@ +Date,Small UML,Nominal UML,Large UML
+2014/02/12 16:39:07,0,2,32
diff --git a/performance/org.eclipse.emf.compare.tests.performance/TestConflict-heap_delta.csv b/performance/org.eclipse.emf.compare.tests.performance/TestConflict-heap_delta.csv new file mode 100644 index 000000000..210b1c63e --- /dev/null +++ b/performance/org.eclipse.emf.compare.tests.performance/TestConflict-heap_delta.csv @@ -0,0 +1,2 @@ +Date,Small UML,Nominal UML,Large UML
+2014/02/12 15:58:01,0.01,4.96,86.29
diff --git a/performance/org.eclipse.emf.compare.tests.performance/TestConflict-heap_peek.csv b/performance/org.eclipse.emf.compare.tests.performance/TestConflict-heap_peek.csv new file mode 100644 index 000000000..68c2d4414 --- /dev/null +++ b/performance/org.eclipse.emf.compare.tests.performance/TestConflict-heap_peek.csv @@ -0,0 +1,2 @@ +Date,Small UML,Nominal UML,Large UML
+2014/02/12 15:58:01,37.28,158.61,640.7
diff --git a/performance/org.eclipse.emf.compare.tests.performance/TestConflict-system_time.csv b/performance/org.eclipse.emf.compare.tests.performance/TestConflict-system_time.csv new file mode 100644 index 000000000..444105101 --- /dev/null +++ b/performance/org.eclipse.emf.compare.tests.performance/TestConflict-system_time.csv @@ -0,0 +1,2 @@ +Date,Small UML,Nominal UML,Large UML
+2014/02/12 15:58:01,0,0,964
diff --git a/performance/org.eclipse.emf.compare.tests.performance/TestDiff-heap_delta.csv b/performance/org.eclipse.emf.compare.tests.performance/TestDiff-heap_delta.csv index fcc147154..01aefec7f 100644 --- a/performance/org.eclipse.emf.compare.tests.performance/TestDiff-heap_delta.csv +++ b/performance/org.eclipse.emf.compare.tests.performance/TestDiff-heap_delta.csv @@ -1,11 +1,2 @@ Date,Small UML,Nominal UML,Large UML
-2012/08/22 18:17:47,-0.42;0.67;0.69,-5;13.32;18.29,
-2012/08/22 18:24:45,-0;0;0,3.46;6.27;6.42,
-2012/08/22 18:28:02,-1.29;0.34;0.34,11.7;24.21;24.42,
-2014/02/07 14:42:40,45.16,35.8,0
-2014/02/07 15:40:19,-257.19,25.01,0
-2014/02/07 15:56:11,45.55,27.75,0
-2014/02/07 16:04:30,43.81,-92.74,9.03
-2014/02/07 16:42:47,40.53,31.18,0
-2014/02/07 18:19:54,44.1,-50.43,9.04
-2014/02/10 09:38:27,36.73,-58.3,4.54
+2014/02/12 15:53:58,0.64,40.57,-106.5
diff --git a/performance/org.eclipse.emf.compare.tests.performance/TestDiff-heap_peek.csv b/performance/org.eclipse.emf.compare.tests.performance/TestDiff-heap_peek.csv index 35851ae2f..906914c4a 100644 --- a/performance/org.eclipse.emf.compare.tests.performance/TestDiff-heap_peek.csv +++ b/performance/org.eclipse.emf.compare.tests.performance/TestDiff-heap_peek.csv @@ -1,13 +1,2 @@ Date,UML Small,UML Nominal,UML Large
-2012/10/01 11:42:46,36.88;38.49;40.41,45.16;46.61;46.67,47.09;47.13;48.54
-2012/10/01 11:43:14,36.81;38.35;40.28,44.84;46.5;46.54,46.92;46.97;48.37
-2012/10/01 11:45:51,36.7;38.62;40.25,44.78;46.44;46.49,46.89;46.92;48.33
-2012/10/01 11:50:51,36.79;38.63;40.24,44.79;46.46;46.51,46.89;46.9;48.33
-2012/10/01 12:24:58,372;373.34;376.03,232.96;233.17;234.54,950.24;958.95;966.49
-2014/02/07 14:42:40,395.33,1027.98,158.47
-2014/02/07 15:40:19,512.4,861.45,54.61
-2014/02/07 15:56:11,467.41,861.45,54.57
-2014/02/07 16:04:30,267.51,1102.58,218.15
-2014/02/07 16:42:47,251.85,996.99,54.31
-2014/02/07 18:19:54,264.81,1066.95,217.81
-2014/02/10 09:38:27,259.53,1073,213.52
+2014/02/12 15:53:58,38.33,220.49,995.97
diff --git a/performance/org.eclipse.emf.compare.tests.performance/TestDiff-system_time.csv b/performance/org.eclipse.emf.compare.tests.performance/TestDiff-system_time.csv index 905ddd1d6..5e7e583aa 100644 --- a/performance/org.eclipse.emf.compare.tests.performance/TestDiff-system_time.csv +++ b/performance/org.eclipse.emf.compare.tests.performance/TestDiff-system_time.csv @@ -1,13 +1,2 @@ Date,UML Small,UML Nominal,UML Large
-2012/10/01 11:42:46,0;0;0,0;0;0,0;0;0
-2012/10/01 11:43:14,0;0;0,0;0;0,0;0;0
-2012/10/01 11:45:51,0;0;0,0;0;0,0;0;0
-2012/10/01 11:50:51,0;0;0,0;0;0,0;0;0
-2012/10/01 12:24:58,0;0;0,1;1;1,6;6;6
-2014/02/07 14:42:40,0,3,0
-2014/02/07 15:40:19,0,3,0
-2014/02/07 15:56:11,0,3,0
-2014/02/07 16:04:30,0,8,0
-2014/02/07 16:42:47,0,3,0
-2014/02/07 18:19:54,0,8,0
-2014/02/10 09:38:27,0,11,0
+2014/02/12 15:53:58,0,0,3
diff --git a/performance/org.eclipse.emf.compare.tests.performance/TestEqui-heap_delta.csv b/performance/org.eclipse.emf.compare.tests.performance/TestEqui-heap_delta.csv new file mode 100644 index 000000000..94cb16718 --- /dev/null +++ b/performance/org.eclipse.emf.compare.tests.performance/TestEqui-heap_delta.csv @@ -0,0 +1,2 @@ +Date,Small UML,Nominal UML,Large UML
+2014/02/12 15:51:31,0.01,9.21,63.32
diff --git a/performance/org.eclipse.emf.compare.tests.performance/TestEqui-heap_peek.csv b/performance/org.eclipse.emf.compare.tests.performance/TestEqui-heap_peek.csv new file mode 100644 index 000000000..d373b68e8 --- /dev/null +++ b/performance/org.eclipse.emf.compare.tests.performance/TestEqui-heap_peek.csv @@ -0,0 +1,2 @@ +Date,Small UML,Nominal UML,Large UML
+2014/02/12 15:51:31,37.47,260.18,619.7
diff --git a/performance/org.eclipse.emf.compare.tests.performance/TestEqui-system_time.csv b/performance/org.eclipse.emf.compare.tests.performance/TestEqui-system_time.csv new file mode 100644 index 000000000..35d0fd0d9 --- /dev/null +++ b/performance/org.eclipse.emf.compare.tests.performance/TestEqui-system_time.csv @@ -0,0 +1,2 @@ +Date,Small UML,Nominal UML,Large UML
+2014/02/12 15:51:31,0,0,0
diff --git a/performance/org.eclipse.emf.compare.tests.performance/TestLogicalModel-heap_delta.csv b/performance/org.eclipse.emf.compare.tests.performance/TestLogicalModel-heap_delta.csv new file mode 100644 index 000000000..ca7934bd3 --- /dev/null +++ b/performance/org.eclipse.emf.compare.tests.performance/TestLogicalModel-heap_delta.csv @@ -0,0 +1 @@ +Date,Small UML,Nominal UML,Large UML
diff --git a/performance/org.eclipse.emf.compare.tests.performance/TestLogicalModel-heap_peek.csv b/performance/org.eclipse.emf.compare.tests.performance/TestLogicalModel-heap_peek.csv new file mode 100644 index 000000000..ca7934bd3 --- /dev/null +++ b/performance/org.eclipse.emf.compare.tests.performance/TestLogicalModel-heap_peek.csv @@ -0,0 +1 @@ +Date,Small UML,Nominal UML,Large UML
diff --git a/performance/org.eclipse.emf.compare.tests.performance/TestLogicalModel-system_time.csv b/performance/org.eclipse.emf.compare.tests.performance/TestLogicalModel-system_time.csv new file mode 100644 index 000000000..ca7934bd3 --- /dev/null +++ b/performance/org.eclipse.emf.compare.tests.performance/TestLogicalModel-system_time.csv @@ -0,0 +1 @@ +Date,Small UML,Nominal UML,Large UML
diff --git a/performance/org.eclipse.emf.compare.tests.performance/TestMatch-heap_delta.csv b/performance/org.eclipse.emf.compare.tests.performance/TestMatch-heap_delta.csv deleted file mode 100644 index 8db7a418f..000000000 --- a/performance/org.eclipse.emf.compare.tests.performance/TestMatch-heap_delta.csv +++ /dev/null @@ -1,13 +0,0 @@ -Date,UML Small,UML Nominal,UML Large
-2012/10/01 11:42:39,0.84;0.93;1.31,1.56;1.61;1.64,2.87;3.21;3.22
-2012/10/01 11:43:08,0.59;0.63;1.28,1.56;1.6;1.65,2.86;3.21;3.21
-2012/10/01 11:45:44,0.63;0.94;0.95,1.56;1.61;1.66,2.85;3.21;3.23
-2012/10/01 11:50:45,0.89;0.91;1.3,1.56;1.6;1.65,2.86;3.21;3.21
-2012/10/01 11:53:10,0.93;0.95;0.97,47.26;47.33;50.76,34.79;284.18;467.81
-2014/02/07 14:40:41,162.28,0,86.01
-2014/02/07 15:38:54,3.89,-0.01,35.56
-2014/02/07 15:54:49,142.3,0.01,32.99
-2014/02/07 16:02:49,-104.13,45.9,68.83
-2014/02/07 16:41:28,134.08,0.01,26.24
-2014/02/07 18:18:11,-105.04,45.98,64.31
-2014/02/10 09:35:56,-81.03,45.47,65.77
diff --git a/performance/org.eclipse.emf.compare.tests.performance/TestMatch-heap_peek.csv b/performance/org.eclipse.emf.compare.tests.performance/TestMatch-heap_peek.csv deleted file mode 100644 index af105c430..000000000 --- a/performance/org.eclipse.emf.compare.tests.performance/TestMatch-heap_peek.csv +++ /dev/null @@ -1,13 +0,0 @@ -Date,UML Small,UML Nominal,UML Large
-2012/10/01 11:42:39,30.93;32.2;33.13,31.43;32.99;34.64,33.36;36.58;39.45
-2012/10/01 11:43:08,30.92;31.91;33.16,31.42;32.98;34.63,33.28;36.49;39.35
-2012/10/01 11:45:44,30.92;32.26;33.18,31.47;33.03;34.69,33.3;36.51;39.37
-2012/10/01 11:50:45,30.92;32.26;33.19,31.45;33;34.66,33.28;36.49;39.35
-2012/10/01 11:53:10,31.57;32.59;33.53,214.55;262.17;310.82,912.79;1231.41;1500.44
-2014/02/07 14:40:41,1138.73,189.86,384.52
-2014/02/07 15:38:54,993.87,53.58,457.64
-2014/02/07 15:54:49,1128.12,53.74,461.77
-2014/02/07 16:02:49,994.39,241.27,395.15
-2014/02/07 16:41:28,1172.71,54.09,508.51
-2014/02/07 18:18:11,993.44,241.32,396.47
-2014/02/10 09:35:56,999.59,243.38,393.71
diff --git a/performance/org.eclipse.emf.compare.tests.performance/TestMatch-system_time.csv b/performance/org.eclipse.emf.compare.tests.performance/TestMatch-system_time.csv deleted file mode 100644 index 40b54c75b..000000000 --- a/performance/org.eclipse.emf.compare.tests.performance/TestMatch-system_time.csv +++ /dev/null @@ -1,13 +0,0 @@ -Date,UML Small,UML Nominal,UML Large
-2012/10/01 11:42:39,0;0;0,0;0;0,0;0;0
-2012/10/01 11:43:08,0;0;0,0;0;0,0;0;0
-2012/10/01 11:45:44,0;0;1,0;0;0,0;0;0
-2012/10/01 11:50:45,0;0;0,0;0;0,0;0;0
-2012/10/01 11:53:10,0;0;0,18;19;19,367;451;479
-2014/02/07 14:40:41,17,0,2
-2014/02/07 15:38:54,14,0,2
-2014/02/07 15:54:49,14,0,2
-2014/02/07 16:02:49,16,0,2
-2014/02/07 16:41:28,13,0,2
-2014/02/07 18:18:11,17,0,2
-2014/02/10 09:35:56,20,0,3
diff --git a/performance/org.eclipse.emf.compare.tests.performance/TestPostComparisonUML-heap_delta.csv b/performance/org.eclipse.emf.compare.tests.performance/TestPostComparisonUML-heap_delta.csv new file mode 100644 index 000000000..e10d5fb59 --- /dev/null +++ b/performance/org.eclipse.emf.compare.tests.performance/TestPostComparisonUML-heap_delta.csv @@ -0,0 +1,2 @@ +Date,Small UML,Nominal UML,Large UML
+2014/02/12 17:00:54,0.01,10.71,131.95
diff --git a/performance/org.eclipse.emf.compare.tests.performance/TestPostComparisonUML-heap_peek.csv b/performance/org.eclipse.emf.compare.tests.performance/TestPostComparisonUML-heap_peek.csv new file mode 100644 index 000000000..aae34c17e --- /dev/null +++ b/performance/org.eclipse.emf.compare.tests.performance/TestPostComparisonUML-heap_peek.csv @@ -0,0 +1,2 @@ +Date,Small UML,Nominal UML,Large UML
+2014/02/12 17:00:54,45.62,246.44,744.89
diff --git a/performance/org.eclipse.emf.compare.tests.performance/TestPostComparisonUML-system_time.csv b/performance/org.eclipse.emf.compare.tests.performance/TestPostComparisonUML-system_time.csv new file mode 100644 index 000000000..3db95d205 --- /dev/null +++ b/performance/org.eclipse.emf.compare.tests.performance/TestPostComparisonUML-system_time.csv @@ -0,0 +1,2 @@ +Date,Small UML,Nominal UML,Large UML
+2014/02/12 17:00:54,0,0,0
diff --git a/performance/org.eclipse.emf.compare.tests.performance/TestPostMatchUML-heap_delta.csv b/performance/org.eclipse.emf.compare.tests.performance/TestPostMatchUML-heap_delta.csv new file mode 100644 index 000000000..69bf9acfd --- /dev/null +++ b/performance/org.eclipse.emf.compare.tests.performance/TestPostMatchUML-heap_delta.csv @@ -0,0 +1,2 @@ +Date,Small UML,Nominal UML,Large UML
+2014/02/12 16:59:39,0.01,0.95,9.37
diff --git a/performance/org.eclipse.emf.compare.tests.performance/TestPostMatchUML-heap_peek.csv b/performance/org.eclipse.emf.compare.tests.performance/TestPostMatchUML-heap_peek.csv new file mode 100644 index 000000000..dc16e0301 --- /dev/null +++ b/performance/org.eclipse.emf.compare.tests.performance/TestPostMatchUML-heap_peek.csv @@ -0,0 +1,2 @@ +Date,Small UML,Nominal UML,Large UML
+2014/02/12 16:59:39,35.47,238.99,755.7
diff --git a/performance/org.eclipse.emf.compare.tests.performance/TestPostMatchUML-system_time.csv b/performance/org.eclipse.emf.compare.tests.performance/TestPostMatchUML-system_time.csv new file mode 100644 index 000000000..2f4311676 --- /dev/null +++ b/performance/org.eclipse.emf.compare.tests.performance/TestPostMatchUML-system_time.csv @@ -0,0 +1,2 @@ +Date,Small UML,Nominal UML,Large UML
+2014/02/12 16:59:39,0,0,0
diff --git a/performance/org.eclipse.emf.compare.tests.performance/TestReq-heap_delta.csv b/performance/org.eclipse.emf.compare.tests.performance/TestReq-heap_delta.csv new file mode 100644 index 000000000..b0ac696ec --- /dev/null +++ b/performance/org.eclipse.emf.compare.tests.performance/TestReq-heap_delta.csv @@ -0,0 +1,2 @@ +Date,Small UML,Nominal UML,Large UML
+2014/02/12 15:39:51,0.01,12.38,-45.46
diff --git a/performance/org.eclipse.emf.compare.tests.performance/TestReq-heap_peek.csv b/performance/org.eclipse.emf.compare.tests.performance/TestReq-heap_peek.csv new file mode 100644 index 000000000..85d04a074 --- /dev/null +++ b/performance/org.eclipse.emf.compare.tests.performance/TestReq-heap_peek.csv @@ -0,0 +1,2 @@ +Date,Small UML,Nominal UML,Large UML
+2014/02/12 15:39:51,37.68,220.34,879.9
diff --git a/performance/org.eclipse.emf.compare.tests.performance/TestReq-system_time.csv b/performance/org.eclipse.emf.compare.tests.performance/TestReq-system_time.csv new file mode 100644 index 000000000..324751a1a --- /dev/null +++ b/performance/org.eclipse.emf.compare.tests.performance/TestReq-system_time.csv @@ -0,0 +1,2 @@ +Date,Small UML,Nominal UML,Large UML
+2014/02/12 15:39:51,0,0,0
diff --git a/performance/org.eclipse.emf.compare.tests.performance/index.html b/performance/org.eclipse.emf.compare.tests.performance/index.html index b78fad2fe..2df68716d 100644 --- a/performance/org.eclipse.emf.compare.tests.performance/index.html +++ b/performance/org.eclipse.emf.compare.tests.performance/index.html @@ -10,10 +10,16 @@ </head> <body> <p> -<h1>Match</h1> - <div id="TestMatch-system_time" style="width:800px; height:320px;"></div> - <div id="TestMatch-heap_peek" style="width:800px; height:320px;"></div> - <div id="TestMatch-heap_delta" style="width:800px; height:320px;"></div> +<h1>Match Id</h1> + <div id="TestMatchId-system_time" style="width:800px; height:320px;"></div> + <div id="TestMatchId-heap_peek" style="width:800px; height:320px;"></div> + <div id="TestMatchId-heap_delta" style="width:800px; height:320px;"></div> +</p> +<p> +<h1>Match Content</h1> + <div id="TestMatchContent-system_time" style="width:800px; height:320px;"></div> + <div id="TestMatchContent-heap_peek" style="width:800px; height:320px;"></div> + <div id="TestMatchContent-heap_delta" style="width:800px; height:320px;"></div> </p> <p> <h1>Diff</h1> @@ -21,43 +27,120 @@ <div id="TestDiff-heap_peek" style="width:800px; height:320px;"></div> <div id="TestDiff-heap_delta" style="width:800px; height:320px;"></div> </p> +<p> +<h1>Req</h1> + <div id="TestReq-system_time" style="width:800px; height:320px;"></div> + <div id="TestReq-heap_peek" style="width:800px; height:320px;"></div> + <div id="TestReq-heap_delta" style="width:800px; height:320px;"></div> +</p> +<p> +<h1>Equi</h1> + <div id="TestEqui-system_time" style="width:800px; height:320px;"></div> + <div id="TestEqui-heap_peek" style="width:800px; height:320px;"></div> + <div id="TestEqui-heap_delta" style="width:800px; height:320px;"></div> +</p> +<p> +<h1>Conflict</h1> + <div id="TestConflict-system_time" style="width:800px; height:320px;"></div> + <div id="TestConflict-heap_peek" style="width:800px; height:320px;"></div> + <div id="TestConflict-heap_delta" style="width:800px; height:320px;"></div> +</p> +<p> +<h1>Compare</h1> + <div id="TestCompare-system_time" style="width:800px; height:320px;"></div> + <div id="TestCompare-heap_peek" style="width:800px; height:320px;"></div> + <div id="TestCompare-heap_delta" style="width:800px; height:320px;"></div> +</p> +<p> +<h1>Post Match UML</h1> + <div id="TestPostMatchUML-system_time" style="width:800px; height:320px;"></div> + <div id="TestPostMatchUML-heap_peek" style="width:800px; height:320px;"></div> + <div id="TestPostMatchUML-heap_delta" style="width:800px; height:320px;"></div> +</p> +<p> +<h1>Post Comparison UML</h1> + <div id="TestPostComparisonUML-system_time" style="width:800px; height:320px;"></div> + <div id="TestPostComparisonUML-heap_peek" style="width:800px; height:320px;"></div> + <div id="TestPostComparisonUML-heap_delta" style="width:800px; height:320px;"></div> +</p> <script type="text/javascript"> g = [ new Dygraph( - document.getElementById("TestMatch-system_time"), - "TestMatch-system_time.csv", + document.getElementById("TestMatchId-system_time"), + "TestMatchId-system_time.csv", + { + rollPeriod: 1, + showRoller: true, + customBars: true, + title: 'Test MatchId - system time', + ylabel: 'System time (ms)', + legend: 'always', + labelsDivStyles: { 'textAlign': 'right' } + } + ), + new Dygraph( + document.getElementById("TestMatchId-heap_peek"), + "TestMatchId-heap_peek.csv", + { + rollPeriod: 1, + showRoller: true, + customBars: true, + title: 'Test MatchId - heap peek', + ylabel: 'Heap peek (MiB)', + legend: 'always', + labelsDivStyles: { 'textAlign': 'right' } + } + ), + new Dygraph( + document.getElementById("TestMatchId-heap_delta"), + "TestMatchId-heap_delta.csv", + { + rollPeriod: 1, + showRoller: true, + customBars: true, + title: 'Test MatchId - heap delta', + ylabel: 'Heap delta (MiB)', + legend: 'always', + labelsDivStyles: { 'textAlign': 'right' } + } + ), + + + new Dygraph( + document.getElementById("TestMatchContent-system_time"), + "TestMatchContent-system_time.csv", { rollPeriod: 1, showRoller: true, customBars: true, - title: 'Test Match - system time', + title: 'Test MatchContent - system time', ylabel: 'System time (ms)', legend: 'always', labelsDivStyles: { 'textAlign': 'right' } } ), new Dygraph( - document.getElementById("TestMatch-heap_peek"), - "TestMatch-heap_peek.csv", + document.getElementById("TestMatchContent-heap_peek"), + "TestMatchContent-heap_peek.csv", { rollPeriod: 1, showRoller: true, customBars: true, - title: 'Test Match - heap peek', + title: 'Test MatchContent - heap peek', ylabel: 'Heap peek (MiB)', legend: 'always', labelsDivStyles: { 'textAlign': 'right' } } ), new Dygraph( - document.getElementById("TestMatch-heap_delta"), - "TestMatch-heap_delta.csv", + document.getElementById("TestMatchContent-heap_delta"), + "TestMatchContent-heap_delta.csv", { rollPeriod: 1, showRoller: true, customBars: true, - title: 'Test Match - heap delta', + title: 'Test MatchContent - heap delta', ylabel: 'Heap delta (MiB)', legend: 'always', labelsDivStyles: { 'textAlign': 'right' } @@ -104,6 +187,252 @@ labelsDivStyles: { 'textAlign': 'right' } } ), + + + new Dygraph( + document.getElementById("TestReq-system_time"), + "TestReq-system_time.csv", + { + rollPeriod: 1, + showRoller: true, + customBars: true, + title: 'Test Req - system time', + ylabel: 'System time (ms)', + legend: 'always', + labelsDivStyles: { 'textAlign': 'right' } + } + ), + new Dygraph( + document.getElementById("TestReq-heap_peek"), + "TestReq-heap_peek.csv", + { + rollPeriod: 1, + showRoller: true, + customBars: true, + title: 'Test Req - heap peek', + ylabel: 'Heap peek (MiB)', + legend: 'always', + labelsDivStyles: { 'textAlign': 'right' } + } + ), + new Dygraph( + document.getElementById("TestReq-heap_delta"), + "TestReq-heap_delta.csv", + { + rollPeriod: 1, + showRoller: true, + customBars: true, + title: 'Test Req - heap delta', + ylabel: 'Heap delta (MiB)', + legend: 'always', + labelsDivStyles: { 'textAlign': 'right' } + } + ), + + + new Dygraph( + document.getElementById("TestEqui-system_time"), + "TestEqui-system_time.csv", + { + rollPeriod: 1, + showRoller: true, + customBars: true, + title: 'Test Equi - system time', + ylabel: 'System time (ms)', + legend: 'always', + labelsDivStyles: { 'textAlign': 'right' } + } + ), + new Dygraph( + document.getElementById("TestEqui-heap_peek"), + "TestEqui-heap_peek.csv", + { + rollPeriod: 1, + showRoller: true, + customBars: true, + title: 'Test Equi - heap peek', + ylabel: 'Heap peek (MiB)', + legend: 'always', + labelsDivStyles: { 'textAlign': 'right' } + } + ), + new Dygraph( + document.getElementById("TestEqui-heap_delta"), + "TestEqui-heap_delta.csv", + { + rollPeriod: 1, + showRoller: true, + customBars: true, + title: 'Test Equi - heap delta', + ylabel: 'Heap delta (MiB)', + legend: 'always', + labelsDivStyles: { 'textAlign': 'right' } + } + ), + + + new Dygraph( + document.getElementById("TestConflict-system_time"), + "TestConflict-system_time.csv", + { + rollPeriod: 1, + showRoller: true, + customBars: true, + title: 'Test Conflict - system time', + ylabel: 'System time (ms)', + legend: 'always', + labelsDivStyles: { 'textAlign': 'right' } + } + ), + new Dygraph( + document.getElementById("TestConflict-heap_peek"), + "TestConflict-heap_peek.csv", + { + rollPeriod: 1, + showRoller: true, + customBars: true, + title: 'Test Conflict - heap peek', + ylabel: 'Heap peek (MiB)', + legend: 'always', + labelsDivStyles: { 'textAlign': 'right' } + } + ), + new Dygraph( + document.getElementById("TestConflict-heap_delta"), + "TestConflict-heap_delta.csv", + { + rollPeriod: 1, + showRoller: true, + customBars: true, + title: 'Test Conflict - heap delta', + ylabel: 'Heap delta (MiB)', + legend: 'always', + labelsDivStyles: { 'textAlign': 'right' } + } + ), + + + new Dygraph( + document.getElementById("TestCompare-system_time"), + "TestCompare-system_time.csv", + { + rollPeriod: 1, + showRoller: true, + customBars: true, + title: 'Test Compare - system time', + ylabel: 'System time (ms)', + legend: 'always', + labelsDivStyles: { 'textAlign': 'right' } + } + ), + new Dygraph( + document.getElementById("TestCompare-heap_peek"), + "TestCompare-heap_peek.csv", + { + rollPeriod: 1, + showRoller: true, + customBars: true, + title: 'Test Compare - heap peek', + ylabel: 'Heap peek (MiB)', + legend: 'always', + labelsDivStyles: { 'textAlign': 'right' } + } + ), + new Dygraph( + document.getElementById("TestCompare-heap_delta"), + "TestCompare-heap_delta.csv", + { + rollPeriod: 1, + showRoller: true, + customBars: true, + title: 'Test Compare - heap delta', + ylabel: 'Heap delta (MiB)', + legend: 'always', + labelsDivStyles: { 'textAlign': 'right' } + } + ), + + + new Dygraph( + document.getElementById("TestPostMatchUML-system_time"), + "TestPostMatchUML-system_time.csv", + { + rollPeriod: 1, + showRoller: true, + customBars: true, + title: 'Test Post Match UML - system time', + ylabel: 'System time (ms)', + legend: 'always', + labelsDivStyles: { 'textAlign': 'right' } + } + ), + new Dygraph( + document.getElementById("TestPostMatchUML-heap_peek"), + "TestPostMatchUML-heap_peek.csv", + { + rollPeriod: 1, + showRoller: true, + customBars: true, + title: 'Test Post Match UML - heap peek', + ylabel: 'Heap peek (MiB)', + legend: 'always', + labelsDivStyles: { 'textAlign': 'right' } + } + ), + new Dygraph( + document.getElementById("TestPostMatchUML-heap_delta"), + "TestPostMatchUML-heap_delta.csv", + { + rollPeriod: 1, + showRoller: true, + customBars: true, + title: 'Test Post Match UML - heap delta', + ylabel: 'Heap delta (MiB)', + legend: 'always', + labelsDivStyles: { 'textAlign': 'right' } + } + ), + + + new Dygraph( + document.getElementById("TestPostComparisonUML-system_time"), + "TestPostComparisonUML-system_time.csv", + { + rollPeriod: 1, + showRoller: true, + customBars: true, + title: 'Test Post Comparison UML - system time', + ylabel: 'System time (ms)', + legend: 'always', + labelsDivStyles: { 'textAlign': 'right' } + } + ), + new Dygraph( + document.getElementById("TestPostComparisonUML-heap_peek"), + "TestPostComparisonUML-heap_peek.csv", + { + rollPeriod: 1, + showRoller: true, + customBars: true, + title: 'Test Post Comparison UML - heap peek', + ylabel: 'Heap peek (MiB)', + legend: 'always', + labelsDivStyles: { 'textAlign': 'right' } + } + ), + new Dygraph( + document.getElementById("TestPostComparisonUML-heap_delta"), + "TestPostComparisonUML-heap_delta.csv", + { + rollPeriod: 1, + showRoller: true, + customBars: true, + title: 'Test Post Comparison UML - heap delta', + ylabel: 'Heap delta (MiB)', + legend: 'always', + labelsDivStyles: { 'textAlign': 'right' } + } + ), ,]; </script> diff --git a/performance/org.eclipse.emf.compare.tests.performance/src/data/models/Data.java b/performance/org.eclipse.emf.compare.tests.performance/src/data/models/Data.java index 9076ea237..866f1381a 100644 --- a/performance/org.eclipse.emf.compare.tests.performance/src/data/models/Data.java +++ b/performance/org.eclipse.emf.compare.tests.performance/src/data/models/Data.java @@ -18,24 +18,34 @@ import java.net.URL; import java.util.Collections; import java.util.List; -import org.eclipse.emf.common.EMFPlugin; +import org.eclipse.compare.ITypedElement; +import org.eclipse.core.runtime.NullProgressMonitor; import org.eclipse.emf.common.notify.Notifier; import org.eclipse.emf.common.util.BasicMonitor; import org.eclipse.emf.common.util.EList; import org.eclipse.emf.common.util.URI; import org.eclipse.emf.common.util.WrappedException; import org.eclipse.emf.compare.Comparison; +import org.eclipse.emf.compare.EMFCompare; +import org.eclipse.emf.compare.conflict.DefaultConflictDetector; +import org.eclipse.emf.compare.conflict.IConflictDetector; +import org.eclipse.emf.compare.diagram.internal.CompareDiagramPostProcessor; import org.eclipse.emf.compare.diff.DefaultDiffEngine; import org.eclipse.emf.compare.diff.DiffBuilder; import org.eclipse.emf.compare.diff.IDiffEngine; import org.eclipse.emf.compare.diff.IDiffProcessor; -import org.eclipse.emf.compare.match.DefaultComparisonFactory; -import org.eclipse.emf.compare.match.DefaultEqualityHelperFactory; +import org.eclipse.emf.compare.equi.DefaultEquiEngine; +import org.eclipse.emf.compare.equi.IEquiEngine; +import org.eclipse.emf.compare.ide.ui.internal.logical.ComparisonScopeBuilder; import org.eclipse.emf.compare.match.DefaultMatchEngine; -import org.eclipse.emf.compare.match.eobject.IEObjectMatcher; +import org.eclipse.emf.compare.match.IMatchEngine; +import org.eclipse.emf.compare.postprocessor.IPostProcessor; +import org.eclipse.emf.compare.req.DefaultReqEngine; +import org.eclipse.emf.compare.req.IReqEngine; import org.eclipse.emf.compare.scope.DefaultComparisonScope; import org.eclipse.emf.compare.scope.IComparisonScope; -import org.eclipse.emf.compare.tests.performance.EMFComparePerformanceActivator; +import org.eclipse.emf.compare.uml2.internal.postprocessor.UMLPostProcessor; +import org.eclipse.emf.compare.utils.UseIdentifiers; import org.eclipse.emf.ecore.resource.Resource; import org.eclipse.emf.ecore.resource.ResourceSet; import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl; @@ -93,13 +103,21 @@ public abstract class Data { return resourceSet; } - public Comparison match(IEObjectMatcher matcher) { - final IComparisonScope scope = new DefaultComparisonScope(getLeft(), loadRight(), loadAncestor()); - final DefaultMatchEngine matchEngine = new DefaultMatchEngine(matcher, new DefaultComparisonFactory(new DefaultEqualityHelperFactory())); + public void logicalModel(ITypedElement leftTypedElement, ITypedElement rightTypedElement) { + ComparisonScopeBuilder.create(null, leftTypedElement, rightTypedElement, null, new NullProgressMonitor()); + } + + public Comparison match() { + return match(UseIdentifiers.ONLY); + } + + public Comparison match(UseIdentifiers useIDs) { + final IComparisonScope scope = new DefaultComparisonScope(getLeft(), getRight(), getAncestor()); + final IMatchEngine matchEngine = DefaultMatchEngine.create(useIDs); comparison = matchEngine.match(scope, new BasicMonitor()); return comparison; } - + public Comparison diff() { final IDiffProcessor diffBuilder = new DiffBuilder(); final IDiffEngine diffEngine = new DefaultDiffEngine(diffBuilder); @@ -107,6 +125,42 @@ public abstract class Data { return comparison; } + public void req() { + final IReqEngine reqEngine = new DefaultReqEngine(); + reqEngine.computeRequirements(comparison, new BasicMonitor()); + } + + public void equi() { + final IEquiEngine equiEngine = new DefaultEquiEngine(); + equiEngine.computeEquivalences(comparison, new BasicMonitor()); + } + + public void conflict() { + final IConflictDetector conflictDetector = new DefaultConflictDetector(); + conflictDetector.detect(comparison, new BasicMonitor()); + } + + public void compare() { + final IComparisonScope scope = new DefaultComparisonScope(getLeft(), getRight(), getAncestor()); + EMFCompare.builder().build().compare(scope); + } + + public void postComparisonGMF() { + final IPostProcessor postProcessor = new CompareDiagramPostProcessor(); + postProcessor.postComparison(comparison, new BasicMonitor()); + } + + public void postMatchUML() { + final IPostProcessor postProcessor = new UMLPostProcessor(); + postProcessor.postMatch(comparison, new BasicMonitor()); + } + + public void postComparisonUML() { + final IPostProcessor postProcessor = new UMLPostProcessor(); + postProcessor.postComparison(comparison, new BasicMonitor()); + } + + public void dispose() { comparison = null; for (ResourceSet rs : resourceSets) { @@ -156,5 +210,4 @@ public abstract class Data { return resource; } - }
\ No newline at end of file diff --git a/performance/org.eclipse.emf.compare.tests.performance/src/data/models/StorageTypedElement.java b/performance/org.eclipse.emf.compare.tests.performance/src/data/models/StorageTypedElement.java new file mode 100644 index 000000000..f9d45241a --- /dev/null +++ b/performance/org.eclipse.emf.compare.tests.performance/src/data/models/StorageTypedElement.java @@ -0,0 +1,79 @@ +/******************************************************************************* + * Copyright (c) 2013 Obeo. + * 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: + * Obeo - initial API and implementation + *******************************************************************************/ +package data.models; + +import java.io.InputStream; + +import org.eclipse.compare.CompareUI; +import org.eclipse.compare.IEncodedStreamContentAccessor; +import org.eclipse.compare.ITypedElement; +import org.eclipse.core.resources.IFile; +import org.eclipse.core.resources.IStorage; +import org.eclipse.core.runtime.CoreException; +import org.eclipse.core.runtime.IAdaptable; +import org.eclipse.swt.graphics.Image; + +/** Mostly copied from org.eclipse.team.internal.ui.StorageTypedElement. */ +public class StorageTypedElement implements ITypedElement, IEncodedStreamContentAccessor, IAdaptable { + private final IStorage storage; + + private final String fullPath; + + public StorageTypedElement(IStorage storage, String fullPath) { + this.storage = storage; + this.fullPath = fullPath; + } + + public StorageTypedElement(IFile file) { + this(file, file.getFullPath().toString()); + } + + public Object getAdapter(@SuppressWarnings("rawtypes") Class adapter) { + if (adapter == IStorage.class) { + return storage; + } + return storage.getAdapter(adapter); + } + + public String getCharset() throws CoreException { + if (storage instanceof IEncodedStreamContentAccessor) { + return ((IEncodedStreamContentAccessor)storage).getCharset(); + } + return null; + } + + public InputStream getContents() throws CoreException { + return storage.getContents(); + } + + public Image getImage() { + return CompareUI.getImage(getType()); + } + + public String getName() { + return fullPath; + } + + public String getType() { + String name = getName(); + if (name != null) { + int index = name.lastIndexOf('.'); + if (index == -1) { + return ""; //$NON-NLS-1$ + } + if (index == (name.length() - 1)) { + return ""; //$NON-NLS-1$ + } + return name.substring(index + 1); + } + return ITypedElement.FOLDER_TYPE; + } +} diff --git a/performance/org.eclipse.emf.compare.tests.performance/src/data/models/model_size_nominal/.project b/performance/org.eclipse.emf.compare.tests.performance/src/data/models/model_size_nominal/.project new file mode 100644 index 000000000..a69743960 --- /dev/null +++ b/performance/org.eclipse.emf.compare.tests.performance/src/data/models/model_size_nominal/.project @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>model_size_nominal</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ </buildSpec>
+ <natures>
+ </natures>
+</projectDescription>
diff --git a/performance/org.eclipse.emf.compare.tests.performance/src/data/models/model_size_small/.project b/performance/org.eclipse.emf.compare.tests.performance/src/data/models/model_size_small/.project new file mode 100644 index 000000000..e43455615 --- /dev/null +++ b/performance/org.eclipse.emf.compare.tests.performance/src/data/models/model_size_small/.project @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+ <name>model_size_small</name>
+ <comment></comment>
+ <projects>
+ </projects>
+ <buildSpec>
+ </buildSpec>
+ <natures>
+ </natures>
+</projectDescription>
diff --git a/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/AbstractEMFComparePerformanceTest.java b/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/AbstractEMFComparePerformanceTest.java index ad267256a..e76a99d34 100644 --- a/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/AbstractEMFComparePerformanceTest.java +++ b/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/AbstractEMFComparePerformanceTest.java @@ -10,6 +10,10 @@ *******************************************************************************/ package org.eclipse.emf.compare.tests.performance; +import static com.google.common.collect.Iterables.concat; +import static com.google.common.collect.Iterables.getFirst; +import static com.google.common.collect.Iterables.transform; + import java.io.BufferedWriter; import java.io.File; import java.io.FileWriter; @@ -51,10 +55,6 @@ import fr.obeo.performance.Scenario; import fr.obeo.performance.TestResult; import fr.obeo.performance.api.Performance; -import static com.google.common.collect.Iterables.concat; -import static com.google.common.collect.Iterables.getFirst; -import static com.google.common.collect.Iterables.transform; - /** * @author <a href="mailto:mikael.barbero@obeo.fr">Mikael Barbero</a> * diff --git a/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/PerformanceSuite.java b/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/PerformanceSuite.java index bfb5c2f44..d35d0bb93 100644 --- a/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/PerformanceSuite.java +++ b/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/PerformanceSuite.java @@ -1,5 +1,5 @@ /* - * Copyright (c) 2011 Obeo. All rights reserved. This program and the + * Copyright (c) 2011, 2014 Obeo. 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 @@ -14,8 +14,15 @@ import org.junit.runners.Suite.SuiteClasses; @RunWith(Suite.class) @SuiteClasses({ - TestMatch.class, + TestMatchId.class, + TestMatchContent.class, TestDiff.class, + TestReq.class, + TestEqui.class, + TestConflict.class, + TestCompare.class, + TestPostMatchUML.class, + TestPostComparisonUML.class }) public class PerformanceSuite { diff --git a/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/TestCompare.java b/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/TestCompare.java new file mode 100644 index 000000000..52422daff --- /dev/null +++ b/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/TestCompare.java @@ -0,0 +1,76 @@ +/******************************************************************************* + * Copyright (c) 2014 Obeo. + * 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: + * Obeo - initial API and implementation + *******************************************************************************/ +package org.eclipse.emf.compare.tests.performance; + +import java.io.IOException; + +import org.junit.FixMethodOrder; +import org.junit.Test; +import org.junit.runners.MethodSorters; + +import data.models.Data; +import data.models.LargeInputData; +import data.models.NominalInputData; +import data.models.SmallInputData; +import fr.obeo.performance.api.PerformanceMonitor; + +/** + * @author <a href="mailto:mikael.barbero@obeo.fr">Mikael Barbero</a> + * + */ +@FixMethodOrder(MethodSorters.NAME_ASCENDING) +public class TestCompare extends AbstractEMFComparePerformanceTest { + + /** + * {@inheritDoc} + * @see org.eclipse.emf.compare.tests.performance.AbstractEMFComparePerformanceTest#setSUTName() + */ + @Override + protected void setSUTName() { + getPerformance().getSystemUnderTest().setName(TestCompare.class.getSimpleName()); + } + + @Test + public void a_compareUMLSmall() { + PerformanceMonitor monitor = getPerformance().createMonitor("compareUMLSmall"); + final Data data = new SmallInputData(); + monitor.measure(warmup(), getStepsNumber(), new Runnable() { + public void run() { + data.compare(); + } + }); + data.dispose(); + } + + @Test + public void b_compareUMLNominal() throws IOException { + PerformanceMonitor monitor = getPerformance().createMonitor("compareUMLNominal"); + final Data data = new NominalInputData(); + monitor.measure(warmup(), getStepsNumber(), new Runnable() { + public void run() { + data.compare(); + } + }); + data.dispose(); + } + + @Test + public void c_compareUMLLarge() throws IOException { + PerformanceMonitor monitor = getPerformance().createMonitor("compareUMLLarge"); + final Data data = new LargeInputData(); + monitor.measure(warmup(), getStepsNumber(), new Runnable() { + public void run() { + data.compare(); + } + }); + data.dispose(); + } +} diff --git a/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/TestConflict.java b/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/TestConflict.java new file mode 100644 index 000000000..2dd463790 --- /dev/null +++ b/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/TestConflict.java @@ -0,0 +1,89 @@ +/*******************************************************************************
+ * Copyright (c) 2014 Obeo.
+ * 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:
+ * Obeo - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.emf.compare.tests.performance;
+
+import java.io.IOException;
+
+import org.junit.FixMethodOrder;
+import org.junit.Test;
+import org.junit.runners.MethodSorters;
+
+import data.models.Data;
+import data.models.LargeInputData;
+import data.models.NominalInputData;
+import data.models.SmallInputData;
+import fr.obeo.performance.api.PerformanceMonitor;
+
+/**
+ * @author <a href="mailto:axel.richard@obeo.fr">Axel Richard</a>
+ *
+ */
+@FixMethodOrder(MethodSorters.NAME_ASCENDING)
+public class TestConflict extends AbstractEMFComparePerformanceTest {
+
+ /**
+ * {@inheritDoc}
+ * @see org.eclipse.emf.compare.tests.performance.AbstractEMFComparePerformanceTest#setSUTName()
+ */
+ @Override
+ protected void setSUTName() {
+ getPerformance().getSystemUnderTest().setName(TestConflict.class.getSimpleName());
+ }
+
+ @Test
+ public void a_conflictUMLSmall() {
+ PerformanceMonitor monitor = getPerformance().createMonitor("conflictUMLSmall");
+ final Data data = new SmallInputData();
+ data.match();
+ data.diff();
+ data.req();
+ data.equi();
+ monitor.measure(warmup(), getStepsNumber(), new Runnable() {
+ public void run() {
+ data.conflict();
+ }
+ });
+ data.dispose();
+ }
+
+ @Test
+ public void b_conflictUMLNominal() throws IOException {
+ PerformanceMonitor monitor = getPerformance().createMonitor("conflictUMLNominal");
+ final Data data = new NominalInputData();
+ data.match();
+ data.diff();
+ data.req();
+ data.equi();
+ monitor.measure(warmup(), getStepsNumber(), new Runnable() {
+ public void run() {
+ data.conflict();
+ }
+ });
+ data.dispose();
+ }
+
+ @Test
+ public void c_conflictUMLLarge() throws IOException {
+ PerformanceMonitor monitor = getPerformance().createMonitor("conflictUMLLarge");
+ final Data data = new LargeInputData();
+ data.match();
+ data.diff();
+ data.req();
+ data.equi();
+ monitor.measure(warmup(), getStepsNumber(), new Runnable() {
+ public void run() {
+ data.conflict();
+ }
+ });
+ data.dispose();
+ }
+
+}
diff --git a/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/TestDiff.java b/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/TestDiff.java index bbfcab550..c098d7713 100644 --- a/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/TestDiff.java +++ b/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/TestDiff.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2012 Obeo. + * Copyright (c) 2012, 2014 Obeo. * 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 @@ -12,8 +12,9 @@ package org.eclipse.emf.compare.tests.performance; import java.io.IOException; -import org.eclipse.emf.compare.match.eobject.IdentifierEObjectMatcher; +import org.junit.FixMethodOrder; import org.junit.Test; +import org.junit.runners.MethodSorters; import data.models.Data; import data.models.LargeInputData; @@ -25,6 +26,7 @@ import fr.obeo.performance.api.PerformanceMonitor; * @author <a href="mailto:mikael.barbero@obeo.fr">Mikael Barbero</a> * */ +@FixMethodOrder(MethodSorters.NAME_ASCENDING) public class TestDiff extends AbstractEMFComparePerformanceTest { @@ -38,10 +40,10 @@ public class TestDiff extends AbstractEMFComparePerformanceTest { } @Test - public void diffUMLSmall() { - PerformanceMonitor monitor = getPerformance().createMonitor("matchUMLSmall"); + public void a_diffUMLSmall() { + PerformanceMonitor monitor = getPerformance().createMonitor("diffUMLSmall"); final Data data = new SmallInputData(); - data.match(new IdentifierEObjectMatcher()); + data.match(); monitor.measure(warmup(), getStepsNumber(), new Runnable() { public void run() { data.diff(); @@ -51,10 +53,10 @@ public class TestDiff extends AbstractEMFComparePerformanceTest { } @Test - public void diffUMLNominal() throws IOException { - PerformanceMonitor monitor = getPerformance().createMonitor("matchUMLNominal"); + public void b_diffUMLNominal() throws IOException { + PerformanceMonitor monitor = getPerformance().createMonitor("diffUMLNominal"); final Data data = new NominalInputData(); - data.match(new IdentifierEObjectMatcher()); + data.match(); monitor.measure(warmup(), getStepsNumber(), new Runnable() { public void run() { data.diff(); @@ -64,10 +66,10 @@ public class TestDiff extends AbstractEMFComparePerformanceTest { } @Test - public void diffUMLLarge() throws IOException { - PerformanceMonitor monitor = getPerformance().createMonitor("matchUMLLarge"); + public void c_diffUMLLarge() throws IOException { + PerformanceMonitor monitor = getPerformance().createMonitor("diffUMLLarge"); final Data data = new LargeInputData(); - data.match(new IdentifierEObjectMatcher()); + data.match(); monitor.measure(warmup(), getStepsNumber(), new Runnable() { public void run() { data.diff(); diff --git a/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/TestEqui.java b/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/TestEqui.java new file mode 100644 index 000000000..0a5336abf --- /dev/null +++ b/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/TestEqui.java @@ -0,0 +1,83 @@ +/*******************************************************************************
+ * Copyright (c) 2014 Obeo.
+ * 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:
+ * Obeo - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.emf.compare.tests.performance;
+
+import java.io.IOException;
+
+import org.junit.FixMethodOrder;
+import org.junit.Test;
+import org.junit.runners.MethodSorters;
+
+import data.models.Data;
+import data.models.LargeInputData;
+import data.models.NominalInputData;
+import data.models.SmallInputData;
+import fr.obeo.performance.api.PerformanceMonitor;
+
+/**
+ * @author <a href="mailto:axel.richard@obeo.fr">Axel Richard</a>
+ *
+ */
+@FixMethodOrder(MethodSorters.NAME_ASCENDING)
+public class TestEqui extends AbstractEMFComparePerformanceTest {
+
+ /**
+ * {@inheritDoc}
+ * @see org.eclipse.emf.compare.tests.performance.AbstractEMFComparePerformanceTest#setSUTName()
+ */
+ @Override
+ protected void setSUTName() {
+ getPerformance().getSystemUnderTest().setName(TestEqui.class.getSimpleName());
+ }
+
+ @Test
+ public void a_equiUMLSmall() {
+ PerformanceMonitor monitor = getPerformance().createMonitor("equiUMLSmall");
+ final Data data = new SmallInputData();
+ data.match();
+ data.diff();
+ monitor.measure(warmup(), getStepsNumber(), new Runnable() {
+ public void run() {
+ data.equi();
+ }
+ });
+ data.dispose();
+ }
+
+ @Test
+ public void b_equiUMLNominal() throws IOException {
+ PerformanceMonitor monitor = getPerformance().createMonitor("equiUMLNominal");
+ final Data data = new NominalInputData();
+ data.match();
+ data.diff();
+ monitor.measure(warmup(), getStepsNumber(), new Runnable() {
+ public void run() {
+ data.equi();
+ }
+ });
+ data.dispose();
+ }
+
+ @Test
+ public void c_equiUMLLarge() throws IOException {
+ PerformanceMonitor monitor = getPerformance().createMonitor("equiUMLLarge");
+ final Data data = new LargeInputData();
+ data.match();
+ data.diff();
+ monitor.measure(warmup(), getStepsNumber(), new Runnable() {
+ public void run() {
+ data.equi();
+ }
+ });
+ data.dispose();
+ }
+
+}
diff --git a/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/TestLogicalModel.java b/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/TestLogicalModel.java new file mode 100644 index 000000000..ad6ae7a4a --- /dev/null +++ b/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/TestLogicalModel.java @@ -0,0 +1,98 @@ +/******************************************************************************* + * Copyright (c) 2014 Obeo. + * 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: + * Obeo - initial API and implementation + *******************************************************************************/ +package org.eclipse.emf.compare.tests.performance; + +import org.eclipse.compare.ITypedElement; +import org.eclipse.core.resources.IFile; +import org.eclipse.core.resources.IProject; +import org.eclipse.core.resources.IProjectDescription; +import org.eclipse.core.resources.ResourcesPlugin; +import org.eclipse.core.runtime.NullProgressMonitor; +import org.eclipse.core.runtime.Path; +import org.junit.FixMethodOrder; +import org.junit.Test; +import org.junit.runners.MethodSorters; + +import data.models.Data; +import data.models.SmallInputData; +import data.models.StorageTypedElement; +import fr.obeo.performance.api.PerformanceMonitor; + +/** + * @author <a href="mailto:axel.richard@obeo.fr">Axel Richard</a> + * + */ +@FixMethodOrder(MethodSorters.NAME_ASCENDING) +public class TestLogicalModel extends AbstractEMFComparePerformanceTest { + + /** + * {@inheritDoc} + * @see org.eclipse.emf.compare.tests.performance.AbstractEMFComparePerformanceTest#setSUTName() + */ + @Override + protected void setSUTName() { + getPerformance().getSystemUnderTest().setName(TestLogicalModel.class.getSimpleName()); + } + + @Test + public void a_logicalModelUMLSmall() { + try { + PerformanceMonitor monitor = getPerformance().createMonitor("logicalModelUMLSmall"); + final Data data = new SmallInputData(); + String baseDir = "D:/git/compare2/org.eclipse.emf.compare/performance/org.eclipse.emf.compare.tests.performance/src/data/models/model_size_small";// location of files to import + IProjectDescription description = ResourcesPlugin.getWorkspace().loadProjectDescription(new Path(baseDir + "/.project")); + IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject(description.getName()); + project.create(description, new NullProgressMonitor()); + project.open(new NullProgressMonitor()); + + final IFile leftFile = project.getFile(new Path("original/model.uml")); + final IFile rightFile = project.getFile(new Path("modified/model.uml")); + final ITypedElement leftTypedElement = new StorageTypedElement(leftFile, leftFile.getFullPath().toOSString()); + final ITypedElement rightTypedElement = new StorageTypedElement(rightFile, rightFile.getFullPath().toOSString()); + + monitor.measure(false, getStepsNumber(), new Runnable() { + public void run() { + data.logicalModel(leftTypedElement, rightTypedElement); + } + }); + data.dispose(); + } catch (Exception e) { + e.printStackTrace(); + } + } + + @Test + public void b_logicalModelUMLNominal() { + try { + PerformanceMonitor monitor = getPerformance().createMonitor("logicalModelUMLNominal"); + final Data data = new SmallInputData(); + String baseDir = "D:/git/compare2/org.eclipse.emf.compare/performance/org.eclipse.emf.compare.tests.performance/src/data/models/model_size_nominal";// location of files to import + IProjectDescription description = ResourcesPlugin.getWorkspace().loadProjectDescription(new Path(baseDir + "/.project")); + IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject(description.getName()); + project.create(description, new NullProgressMonitor()); + project.open(new NullProgressMonitor()); + + final IFile leftFile = project.getFile(new Path("original/model.uml")); + final IFile rightFile = project.getFile(new Path("modified/model.uml")); + final ITypedElement leftTypedElement = new StorageTypedElement(leftFile, leftFile.getFullPath().toOSString()); + final ITypedElement rightTypedElement = new StorageTypedElement(rightFile, rightFile.getFullPath().toOSString()); + + monitor.measure(false, getStepsNumber(), new Runnable() { + public void run() { + data.logicalModel(leftTypedElement, rightTypedElement); + } + }); + data.dispose(); + } catch (Exception e) { + e.printStackTrace(); + } + } +} diff --git a/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/TestMatchContent.java b/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/TestMatchContent.java new file mode 100644 index 000000000..9bd7ae447 --- /dev/null +++ b/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/TestMatchContent.java @@ -0,0 +1,77 @@ +/******************************************************************************* + * Copyright (c) 2014 Obeo. + * 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: + * Obeo - initial API and implementation + *******************************************************************************/ +package org.eclipse.emf.compare.tests.performance; + +import java.io.IOException; + +import org.eclipse.emf.compare.utils.UseIdentifiers; +import org.junit.FixMethodOrder; +import org.junit.Test; +import org.junit.runners.MethodSorters; + +import data.models.Data; +import data.models.LargeInputData; +import data.models.NominalInputData; +import data.models.SmallInputData; +import fr.obeo.performance.api.PerformanceMonitor; + +/** + * @author <a href="mailto:axel.richard@obeo.fr">Axel Richard</a> + * + */ +@FixMethodOrder(MethodSorters.NAME_ASCENDING) +public class TestMatchContent extends AbstractEMFComparePerformanceTest { + + /** + * {@inheritDoc} + * @see org.eclipse.emf.compare.tests.performance.AbstractEMFComparePerformanceTest#setSUTName() + */ + @Override + protected void setSUTName() { + getPerformance().getSystemUnderTest().setName(TestMatchContent.class.getSimpleName()); + } + + @Test + public void a_matchContentUMLSmall() { + PerformanceMonitor monitor = getPerformance().createMonitor("matchContentUMLSmall"); + final Data data = new SmallInputData(); + monitor.measure(warmup(), getStepsNumber(), new Runnable() { + public void run() { + data.match(UseIdentifiers.NEVER); + } + }); + data.dispose(); + } + + @Test + public void b_matchContentUMLNominal() throws IOException { + PerformanceMonitor monitor = getPerformance().createMonitor("matchContentUMLNominal"); + final Data data = new NominalInputData(); + monitor.measure(warmup(), getStepsNumber(), new Runnable() { + public void run() { + data.match(UseIdentifiers.NEVER); + } + }); + data.dispose(); + } + + @Test + public void c_matchContentUMLLarge() throws IOException { + PerformanceMonitor monitor = getPerformance().createMonitor("matchContentUMLLarge"); + final Data data = new LargeInputData(); + monitor.measure(warmup(), getStepsNumber(), new Runnable() { + public void run() { + data.match(UseIdentifiers.NEVER); + } + }); + data.dispose(); + } +} diff --git a/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/TestMatch.java b/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/TestMatchId.java index 536632b23..2be92fe10 100644 --- a/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/TestMatch.java +++ b/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/TestMatchId.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2012 Obeo. + * Copyright (c) 2014 Obeo. * 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 @@ -10,10 +10,10 @@ *******************************************************************************/ package org.eclipse.emf.compare.tests.performance; -import java.io.IOException; - -import org.eclipse.emf.compare.match.eobject.IdentifierEObjectMatcher; +import org.eclipse.emf.compare.utils.UseIdentifiers; +import org.junit.FixMethodOrder; import org.junit.Test; +import org.junit.runners.MethodSorters; import data.models.Data; import data.models.LargeInputData; @@ -25,7 +25,8 @@ import fr.obeo.performance.api.PerformanceMonitor; * @author <a href="mailto:mikael.barbero@obeo.fr">Mikael Barbero</a> * */ -public class TestMatch extends AbstractEMFComparePerformanceTest { +@FixMethodOrder(MethodSorters.NAME_ASCENDING) +public class TestMatchId extends AbstractEMFComparePerformanceTest { /** * {@inheritDoc} @@ -33,40 +34,40 @@ public class TestMatch extends AbstractEMFComparePerformanceTest { */ @Override protected void setSUTName() { - getPerformance().getSystemUnderTest().setName(TestMatch.class.getSimpleName()); + getPerformance().getSystemUnderTest().setName(TestMatchId.class.getSimpleName()); } @Test - public void matchUMLSmall() { - PerformanceMonitor monitor = getPerformance().createMonitor("matchUMLSmall"); + public void a_matchIdUMLSmall() { + PerformanceMonitor monitor = getPerformance().createMonitor("matchIdUMLSmall"); final Data data = new SmallInputData(); monitor.measure(warmup(), getStepsNumber(), new Runnable() { public void run() { - data.match(new IdentifierEObjectMatcher()); + data.match(UseIdentifiers.ONLY); } }); data.dispose(); } @Test - public void matchUMLNominal() throws IOException { - PerformanceMonitor monitor = getPerformance().createMonitor("matchUMLNominal"); + public void b_matchIdUMLNominal() { + PerformanceMonitor monitor = getPerformance().createMonitor("matchIdUMLNominal"); final Data data = new NominalInputData(); monitor.measure(warmup(), getStepsNumber(), new Runnable() { public void run() { - data.match(new IdentifierEObjectMatcher()); + data.match(UseIdentifiers.ONLY); } }); data.dispose(); } @Test - public void matchUMLLarge() throws IOException { - PerformanceMonitor monitor = getPerformance().createMonitor("matchUMLLarge"); + public void c_matchIdUMLLarge() { + PerformanceMonitor monitor = getPerformance().createMonitor("matchIdUMLLarge"); final Data data = new LargeInputData(); monitor.measure(warmup(), getStepsNumber(), new Runnable() { public void run() { - data.match(new IdentifierEObjectMatcher()); + data.match(UseIdentifiers.ONLY); } }); data.dispose(); diff --git a/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/TestPostComparisonGMF.java b/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/TestPostComparisonGMF.java new file mode 100644 index 000000000..de5195d85 --- /dev/null +++ b/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/TestPostComparisonGMF.java @@ -0,0 +1,91 @@ +/******************************************************************************* + * Copyright (c) 2014 Obeo. + * 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: + * Obeo - initial API and implementation + *******************************************************************************/ +package org.eclipse.emf.compare.tests.performance; + +import java.io.IOException; + +import org.junit.FixMethodOrder; +import org.junit.Test; +import org.junit.runners.MethodSorters; + +import data.models.Data; +import data.models.LargeInputData; +import data.models.NominalInputData; +import data.models.SmallInputData; +import fr.obeo.performance.api.PerformanceMonitor; + +/** + * @author <a href="mailto:mikael.barbero@obeo.fr">Mikael Barbero</a> + * + */ +@FixMethodOrder(MethodSorters.NAME_ASCENDING) +public class TestPostComparisonGMF extends AbstractEMFComparePerformanceTest { + + /** + * {@inheritDoc} + * @see org.eclipse.emf.compare.tests.performance.AbstractEMFComparePerformanceTest#setSUTName() + */ + @Override + protected void setSUTName() { + getPerformance().getSystemUnderTest().setName(TestPostComparisonGMF.class.getSimpleName()); + } + + @Test + public void a_pcGMFUMLSmall() { + PerformanceMonitor monitor = getPerformance().createMonitor("pcGMFUMLSmall"); + final Data data = new SmallInputData(); + data.match(); + data.diff(); + data.req(); + data.equi(); + data.conflict(); + monitor.measure(warmup(), getStepsNumber(), new Runnable() { + public void run() { + data.postComparisonGMF(); + } + }); + data.dispose(); + } + + @Test + public void b_pcGMFUMLNominal() throws IOException { + PerformanceMonitor monitor = getPerformance().createMonitor("pcGMFUMLNominal"); + final Data data = new NominalInputData(); + data.match(); + data.diff(); + data.req(); + data.equi(); + data.conflict(); + monitor.measure(warmup(), getStepsNumber(), new Runnable() { + public void run() { + data.postComparisonGMF(); + } + }); + data.dispose(); + } + + @Test + public void c_pcGMFUMLLarge() throws IOException { + PerformanceMonitor monitor = getPerformance().createMonitor("pcGMFUMLLarge"); + final Data data = new LargeInputData(); + data.match(); + data.diff(); + data.req(); + data.equi(); + data.conflict(); + monitor.measure(warmup(), getStepsNumber(), new Runnable() { + public void run() { + data.postComparisonGMF(); + } + }); + data.dispose(); + } +} diff --git a/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/TestPostComparisonUML.java b/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/TestPostComparisonUML.java new file mode 100644 index 000000000..005997931 --- /dev/null +++ b/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/TestPostComparisonUML.java @@ -0,0 +1,94 @@ +/******************************************************************************* + * Copyright (c) 2014 Obeo. + * 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: + * Obeo - initial API and implementation + *******************************************************************************/ +package org.eclipse.emf.compare.tests.performance; + +import java.io.IOException; + +import org.junit.FixMethodOrder; +import org.junit.Test; +import org.junit.runners.MethodSorters; + +import data.models.Data; +import data.models.LargeInputData; +import data.models.NominalInputData; +import data.models.SmallInputData; +import fr.obeo.performance.api.PerformanceMonitor; + +/** + * @author <a href="mailto:axel.richard@obeo.fr">Axel Richard</a> + * + */ +@FixMethodOrder(MethodSorters.NAME_ASCENDING) +public class TestPostComparisonUML extends AbstractEMFComparePerformanceTest { + + /** + * {@inheritDoc} + * @see org.eclipse.emf.compare.tests.performance.AbstractEMFComparePerformanceTest#setSUTName() + */ + @Override + protected void setSUTName() { + getPerformance().getSystemUnderTest().setName(TestPostComparisonUML.class.getSimpleName()); + } + + @Test + public void a_pcUMLUMLSmall() { + PerformanceMonitor monitor = getPerformance().createMonitor("pcUMLUMLSmall"); + final Data data = new SmallInputData(); + data.match(); + data.postMatchUML(); + data.diff(); + data.req(); + data.equi(); + data.conflict(); + monitor.measure(warmup(), getStepsNumber(), new Runnable() { + public void run() { + data.postComparisonGMF(); + } + }); + data.dispose(); + } + + @Test + public void b_pcUMLUMLNominal() throws IOException { + PerformanceMonitor monitor = getPerformance().createMonitor("pcUMLUMLNominal"); + final Data data = new NominalInputData(); + data.match(); + data.postMatchUML(); + data.diff(); + data.req(); + data.equi(); + data.conflict(); + monitor.measure(warmup(), getStepsNumber(), new Runnable() { + public void run() { + data.postComparisonGMF(); + } + }); + data.dispose(); + } + + @Test + public void c_pcUMLUMLLarge() throws IOException { + PerformanceMonitor monitor = getPerformance().createMonitor("pcUMLUMLLarge"); + final Data data = new LargeInputData(); + data.match(); + data.postMatchUML(); + data.diff(); + data.req(); + data.equi(); + data.conflict(); + monitor.measure(warmup(), getStepsNumber(), new Runnable() { + public void run() { + data.postComparisonGMF(); + } + }); + data.dispose(); + } +} diff --git a/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/TestPostMatchUML.java b/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/TestPostMatchUML.java new file mode 100644 index 000000000..da479fc09 --- /dev/null +++ b/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/TestPostMatchUML.java @@ -0,0 +1,79 @@ +/******************************************************************************* + * Copyright (c) 2014 Obeo. + * 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: + * Obeo - initial API and implementation + *******************************************************************************/ +package org.eclipse.emf.compare.tests.performance; + +import java.io.IOException; + +import org.junit.FixMethodOrder; +import org.junit.Test; +import org.junit.runners.MethodSorters; + +import data.models.Data; +import data.models.LargeInputData; +import data.models.NominalInputData; +import data.models.SmallInputData; +import fr.obeo.performance.api.PerformanceMonitor; + +/** + * @author <a href="mailto:axel.richard@obeo.fr">Axel Richard</a> + * + */ +@FixMethodOrder(MethodSorters.NAME_ASCENDING) +public class TestPostMatchUML extends AbstractEMFComparePerformanceTest { + + /** + * {@inheritDoc} + * @see org.eclipse.emf.compare.tests.performance.AbstractEMFComparePerformanceTest#setSUTName() + */ + @Override + protected void setSUTName() { + getPerformance().getSystemUnderTest().setName(TestPostMatchUML.class.getSimpleName()); + } + + @Test + public void a_pmUMLUMLSmall() { + PerformanceMonitor monitor = getPerformance().createMonitor("pmUMLUMLSmall"); + final Data data = new SmallInputData(); + data.match(); + monitor.measure(warmup(), getStepsNumber(), new Runnable() { + public void run() { + data.postMatchUML(); + } + }); + data.dispose(); + } + + @Test + public void b_pmUMLUMLNominal() throws IOException { + PerformanceMonitor monitor = getPerformance().createMonitor("pmUMLUMLNominal"); + final Data data = new NominalInputData(); + data.match(); + monitor.measure(warmup(), getStepsNumber(), new Runnable() { + public void run() { + data.postMatchUML(); + } + }); + data.dispose(); + } + + @Test + public void c_pmUMLUMLLarge() throws IOException { + PerformanceMonitor monitor = getPerformance().createMonitor("pmUMLUMLLarge"); + final Data data = new LargeInputData(); + data.match(); + monitor.measure(warmup(), getStepsNumber(), new Runnable() { + public void run() { + data.postMatchUML(); + } + }); + data.dispose(); + } +} diff --git a/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/TestReq.java b/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/TestReq.java new file mode 100644 index 000000000..3349438bf --- /dev/null +++ b/performance/org.eclipse.emf.compare.tests.performance/src/org/eclipse/emf/compare/tests/performance/TestReq.java @@ -0,0 +1,83 @@ +/*******************************************************************************
+ * Copyright (c) 2014 Obeo.
+ * 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:
+ * Obeo - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.emf.compare.tests.performance;
+
+import java.io.IOException;
+
+import org.junit.FixMethodOrder;
+import org.junit.Test;
+import org.junit.runners.MethodSorters;
+
+import data.models.Data;
+import data.models.LargeInputData;
+import data.models.NominalInputData;
+import data.models.SmallInputData;
+import fr.obeo.performance.api.PerformanceMonitor;
+
+/**
+ * @author <a href="mailto:axel.richard@obeo.fr">Axel Richard</a>
+ *
+ */
+@FixMethodOrder(MethodSorters.NAME_ASCENDING)
+public class TestReq extends AbstractEMFComparePerformanceTest {
+
+ /**
+ * {@inheritDoc}
+ * @see org.eclipse.emf.compare.tests.performance.AbstractEMFComparePerformanceTest#setSUTName()
+ */
+ @Override
+ protected void setSUTName() {
+ getPerformance().getSystemUnderTest().setName(TestReq.class.getSimpleName());
+ }
+
+ @Test
+ public void a_reqUMLSmall() {
+ PerformanceMonitor monitor = getPerformance().createMonitor("reqUMLSmall");
+ final Data data = new SmallInputData();
+ data.match();
+ data.diff();
+ monitor.measure(warmup(), getStepsNumber(), new Runnable() {
+ public void run() {
+ data.req();
+ }
+ });
+ data.dispose();
+ }
+
+ @Test
+ public void b_reqUMLNominal() throws IOException {
+ PerformanceMonitor monitor = getPerformance().createMonitor("reqUMLNominal");
+ final Data data = new NominalInputData();
+ data.match();
+ data.diff();
+ monitor.measure(warmup(), getStepsNumber(), new Runnable() {
+ public void run() {
+ data.req();
+ }
+ });
+ data.dispose();
+ }
+
+ @Test
+ public void c_reqUMLLarge() throws IOException {
+ PerformanceMonitor monitor = getPerformance().createMonitor("reqUMLLarge");
+ final Data data = new LargeInputData();
+ data.match();
+ data.diff();
+ monitor.measure(warmup(), getStepsNumber(), new Runnable() {
+ public void run() {
+ data.req();
+ }
+ });
+ data.dispose();
+ }
+
+}
|