From afba14ef08c4639a3779b6242810c4db92b063e6 Mon Sep 17 00:00:00 2001 From: Stephan Herrmann Date: Sun, 13 Oct 2024 17:01:07 +0200 Subject: [PATCH] Avoid dependency on org.eclipse.jdt.annotation_v1 + replace by a local copy used in tests See https://github.com/eclipse-jdt/eclipse.jdt.core/issues/3027 --- org.eclipse.jdt.ui.tests/META-INF/MANIFEST.MF | 1 - org.eclipse.jdt.ui.tests/build.properties | 3 +- ....jdt.annotation_1.2.100.v20241001-0914.jar | Bin 0 -> 18693 bytes .../quickfix/NullAnnotationsQuickFixTest.java | 18 +++--- .../NullAnnotationsQuickFixTest1d8Mix.java | 55 ++++++++---------- 5 files changed, 34 insertions(+), 43 deletions(-) create mode 100644 org.eclipse.jdt.ui.tests/lib/org.eclipse.jdt.annotation_1.2.100.v20241001-0914.jar diff --git a/org.eclipse.jdt.ui.tests/META-INF/MANIFEST.MF b/org.eclipse.jdt.ui.tests/META-INF/MANIFEST.MF index 0bc05b798f5..d45cf11af60 100644 --- a/org.eclipse.jdt.ui.tests/META-INF/MANIFEST.MF +++ b/org.eclipse.jdt.ui.tests/META-INF/MANIFEST.MF @@ -48,7 +48,6 @@ Require-Bundle: org.eclipse.debug.ui, org.eclipse.jdt.core, org.eclipse.jdt.core.manipulation, - org.eclipse.jdt.annotation;bundle-version="[1.1.0,2.0.0)";resolution:=optional, org.eclipse.jdt.annotation;bundle-version="[2.0.0,3.0.0)";resolution:=optional, org.eclipse.jdt.junit, org.eclipse.jdt.junit.runtime, diff --git a/org.eclipse.jdt.ui.tests/build.properties b/org.eclipse.jdt.ui.tests/build.properties index f6d3a132e95..a5b55708cd5 100644 --- a/org.eclipse.jdt.ui.tests/build.properties +++ b/org.eclipse.jdt.ui.tests/build.properties @@ -17,7 +17,8 @@ bin.includes = plugin.xml,\ testresources/,\ .,\ META-INF/,\ - plugin.properties + plugin.properties,\ + lib/org.eclipse.jdt.annotation_1.2.100.v20241001-0914.jar source.. = examples/,\ chkpii/,\ test plugin/,\ diff --git a/org.eclipse.jdt.ui.tests/lib/org.eclipse.jdt.annotation_1.2.100.v20241001-0914.jar b/org.eclipse.jdt.ui.tests/lib/org.eclipse.jdt.annotation_1.2.100.v20241001-0914.jar new file mode 100644 index 0000000000000000000000000000000000000000..5db80bf23997e8099bcccaf96f89db7089f5efa9 GIT binary patch literal 18693 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 KcdUXxKm9+qNSJc~ literal 0 HcmV?d00001 diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/NullAnnotationsQuickFixTest.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/NullAnnotationsQuickFixTest.java index 87eaee4d511..8aab8520200 100644 --- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/NullAnnotationsQuickFixTest.java +++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/NullAnnotationsQuickFixTest.java @@ -18,7 +18,8 @@ import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertTrue; -import java.io.File; +import java.io.IOException; +import java.net.URL; import java.util.ArrayList; import java.util.Hashtable; @@ -26,7 +27,6 @@ import org.junit.Before; import org.junit.Rule; import org.junit.Test; -import org.osgi.framework.Bundle; import org.eclipse.jdt.testplugin.JavaProjectHelper; import org.eclipse.jdt.testplugin.TestOptions; @@ -111,19 +111,19 @@ public void setUp() throws Exception { fJProject1= projectSetup.getProject(); if (ANNOTATION_JAR_PATH == null) { - String version= "[1.1.0,2.0.0)"; // tests run at 1.5, need the "old" null annotations - Bundle[] bundles= Platform.getBundles("org.eclipse.jdt.annotation", version); - File bundleFile= FileLocator.getBundleFileLocation(bundles[0]).get(); - if (bundleFile.isDirectory()) - ANNOTATION_JAR_PATH= bundleFile.getPath() + "/bin"; - else - ANNOTATION_JAR_PATH= bundleFile.getPath(); + // these tests us the "old" null annotations + ANNOTATION_JAR_PATH= getAnnotationV1LibPath(); } JavaProjectHelper.addLibrary(fJProject1, new Path(ANNOTATION_JAR_PATH)); fSourceFolder= JavaProjectHelper.addSourceContainer(fJProject1, "src"); } + public static String getAnnotationV1LibPath() throws IOException { + URL libEntry = Platform.getBundle("org.eclipse.jdt.ui.tests").getEntry("/lib/org.eclipse.jdt.annotation_1.2.100.v20241001-0914.jar"); + return FileLocator.toFileURL(libEntry).getPath(); + } + @After public void tearDown() throws Exception { JavaProjectHelper.clear(fJProject1, projectSetup.getDefaultClasspath()); diff --git a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/NullAnnotationsQuickFixTest1d8Mix.java b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/NullAnnotationsQuickFixTest1d8Mix.java index 5f9dc021c16..11e8e55ab8e 100644 --- a/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/NullAnnotationsQuickFixTest1d8Mix.java +++ b/org.eclipse.jdt.ui.tests/ui/org/eclipse/jdt/ui/tests/quickfix/NullAnnotationsQuickFixTest1d8Mix.java @@ -13,7 +13,6 @@ *******************************************************************************/ package org.eclipse.jdt.ui.tests.quickfix; -import java.io.File; import java.util.ArrayList; import java.util.Hashtable; @@ -21,14 +20,11 @@ import org.junit.Before; import org.junit.Rule; import org.junit.Test; -import org.osgi.framework.Bundle; import org.eclipse.jdt.testplugin.JavaProjectHelper; import org.eclipse.jdt.testplugin.TestOptions; -import org.eclipse.core.runtime.FileLocator; import org.eclipse.core.runtime.Path; -import org.eclipse.core.runtime.Platform; import org.eclipse.jface.preference.IPreferenceStore; @@ -94,13 +90,8 @@ public void setUp() throws Exception { fJProject1= projectSetup.getProject(); if (ANNOTATION_JAR_PATH == null) { - String version= "[1.1.0,2.0.0)"; // tests run at 1.8, but still use "old" null annotations - Bundle[] bundles= Platform.getBundles("org.eclipse.jdt.annotation", version); - File bundleFile= FileLocator.getBundleFileLocation(bundles[0]).get(); - if (bundleFile.isDirectory()) - ANNOTATION_JAR_PATH= bundleFile.getPath() + "/bin"; - else - ANNOTATION_JAR_PATH= bundleFile.getPath(); + // tests run at 1.8, but still use "old" null annotations: + ANNOTATION_JAR_PATH= NullAnnotationsQuickFixTest.getAnnotationV1LibPath(); } JavaProjectHelper.addLibrary(fJProject1, new Path(ANNOTATION_JAR_PATH)); @@ -121,9 +112,9 @@ public void testBug473068_elided() throws Exception { IPackageFragment pack1= fSourceFolder.createPackageFragment("testNullAnnotations", false, null); String str= """ package testNullAnnotations; - + import org.eclipse.jdt.annotation.NonNull; - + interface Consumer { void accept(T t); } @@ -134,7 +125,7 @@ public void select(final double min, final double max) { } \t private void doStuff(int a, int b, final double min, final double max, Consumer postAction) { - + } private void updateSelectionData(final @NonNull Object data) { } @@ -152,10 +143,10 @@ private void updateSelectionData(final @NonNull Object data) { String str1= """ package testNullAnnotations; - + import org.eclipse.jdt.annotation.NonNull; import org.eclipse.jdt.annotation.Nullable; - + interface Consumer { void accept(T t); } @@ -166,7 +157,7 @@ public void select(final double min, final double max) { } \t private void doStuff(int a, int b, final double min, final double max, Consumer postAction) { - + } private void updateSelectionData(final @Nullable Object data) { } @@ -179,9 +170,9 @@ private void updateSelectionData(final @Nullable Object data) { String str2= """ package testNullAnnotations; - + import org.eclipse.jdt.annotation.NonNull; - + interface Consumer { void accept(T t); } @@ -193,7 +184,7 @@ public void select(final double min, final double max) { } \t private void doStuff(int a, int b, final double min, final double max, Consumer postAction) { - + } private void updateSelectionData(final @NonNull Object data) { } @@ -212,9 +203,9 @@ public void testBug473068_explicit_type() throws Exception { IPackageFragment pack1= fSourceFolder.createPackageFragment("testNullAnnotations", false, null); String str= """ package testNullAnnotations; - + import org.eclipse.jdt.annotation.NonNull; - + interface Consumer { void accept(T t); } @@ -225,7 +216,7 @@ public void select(final double min, final double max) { } \t private void doStuff(int a, int b, final double min, final double max, Consumer postAction) { - + } private void updateSelectionData(final @NonNull Object data) { } @@ -243,9 +234,9 @@ private void updateSelectionData(final @NonNull Object data) { String str1= """ package testNullAnnotations; - + import org.eclipse.jdt.annotation.NonNull; - + interface Consumer { void accept(T t); } @@ -256,7 +247,7 @@ public void select(final double min, final double max) { } \t private void doStuff(int a, int b, final double min, final double max, Consumer postAction) { - + } private void updateSelectionData(final @NonNull Object data) { } @@ -269,10 +260,10 @@ private void updateSelectionData(final @NonNull Object data) { String str2= """ package testNullAnnotations; - + import org.eclipse.jdt.annotation.NonNull; import org.eclipse.jdt.annotation.Nullable; - + interface Consumer { void accept(T t); } @@ -283,7 +274,7 @@ public void select(final double min, final double max) { } \t private void doStuff(int a, int b, final double min, final double max, Consumer postAction) { - + } private void updateSelectionData(final @Nullable Object data) { } @@ -296,9 +287,9 @@ private void updateSelectionData(final @Nullable Object data) { String str3= """ package testNullAnnotations; - + import org.eclipse.jdt.annotation.NonNull; - + interface Consumer { void accept(T t); } @@ -310,7 +301,7 @@ public void select(final double min, final double max) { } \t private void doStuff(int a, int b, final double min, final double max, Consumer postAction) { - + } private void updateSelectionData(final @NonNull Object data) { }