diff --git a/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/Constants.java b/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/Constants.java index a5a5bdb805..c225e9788c 100644 --- a/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/Constants.java +++ b/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/Constants.java @@ -21,27 +21,5 @@ public final class Constants { "io.opentelemetry.javaagent.instrumentation.api", }; - // This is used in IntegrationTestUtils.java - public static final String[] AGENT_PACKAGE_PREFIXES = { - "io.opentelemetry.instrumentation.api", - // guava - "com.google.auto", - "com.google.common", - "com.google.thirdparty.publicsuffix", - // bytebuddy - "net.bytebuddy", - "org.yaml.snakeyaml", - // disruptor - "com.lmax.disruptor", - // okHttp - "okhttp3", - "okio", - "jnr", - "org.objectweb.asm", - "com.kenai", - // Custom RxJava Utility - "rx.__OpenTelemetryTracingUtil", - }; - private Constants() {} } diff --git a/javaagent/src/test/groovy/io/opentelemetry/javaagent/classloading/ShadowPackageRenamingTest.groovy b/javaagent/src/test/groovy/io/opentelemetry/javaagent/classloading/ShadowPackageRenamingTest.groovy index 9ae3863d6f..c7d2e3d064 100644 --- a/javaagent/src/test/groovy/io/opentelemetry/javaagent/classloading/ShadowPackageRenamingTest.groovy +++ b/javaagent/src/test/groovy/io/opentelemetry/javaagent/classloading/ShadowPackageRenamingTest.groovy @@ -11,6 +11,29 @@ import io.opentelemetry.javaagent.IntegrationTestUtils import spock.lang.Specification class ShadowPackageRenamingTest extends Specification { + + + static final String[] AGENT_PACKAGE_PREFIXES = [ + "io.opentelemetry.instrumentation.api", + // guava + "com.google.auto", + "com.google.common", + "com.google.thirdparty.publicsuffix", + // bytebuddy + "net.bytebuddy", + "org.yaml.snakeyaml", + // disruptor + "com.lmax.disruptor", + // okHttp + "okhttp3", + "okio", + "jnr", + "org.objectweb.asm", + "com.kenai", + // Custom RxJava Utility + "rx.__OpenTelemetryTracingUtil" + ] + def "agent dependencies renamed"() { setup: Class clazz = @@ -49,7 +72,6 @@ class ShadowPackageRenamingTest extends Specification { ClassPath bootstrapClasspath = ClassPath.from(IntegrationTestUtils.getBootstrapProxy()) Set bootstrapClasses = new HashSet<>() String[] bootstrapPrefixes = IntegrationTestUtils.getBootstrapPackagePrefixes() - String[] agentPrefixes = IntegrationTestUtils.getAgentPackagePrefixes() List badBootstrapPrefixes = [] for (ClassPath.ClassInfo info : bootstrapClasspath.getAllClasses()) { bootstrapClasses.add(info.getName()) @@ -76,13 +98,15 @@ class ShadowPackageRenamingTest extends Specification { List agentDuplicateClassFile = new ArrayList<>() List badAgentPrefixes = [] + // TODO (trask) agentClasspath.getAllClasses() is empty + // so this part of the test doesn't verify what it thinks it is verifying for (ClassPath.ClassInfo classInfo : agentClasspath.getAllClasses()) { if (bootstrapClasses.contains(classInfo.getName())) { agentDuplicateClassFile.add(classInfo) } boolean goodPrefix = false - for (int i = 0; i < agentPrefixes.length; ++i) { - if (classInfo.getName().startsWith(agentPrefixes[i])) { + for (int i = 0; i < AGENT_PACKAGE_PREFIXES.length; ++i) { + if (classInfo.getName().startsWith(AGENT_PACKAGE_PREFIXES[i])) { goodPrefix = true break } diff --git a/javaagent/src/test/java/io/opentelemetry/javaagent/IntegrationTestUtils.java b/javaagent/src/test/java/io/opentelemetry/javaagent/IntegrationTestUtils.java index d0bdad9d7b..32a7955450 100644 --- a/javaagent/src/test/java/io/opentelemetry/javaagent/IntegrationTestUtils.java +++ b/javaagent/src/test/java/io/opentelemetry/javaagent/IntegrationTestUtils.java @@ -137,14 +137,6 @@ public class IntegrationTestUtils { return (String[]) f.get(null); } - public static String[] getAgentPackagePrefixes() throws Exception { - Field f = - getAgentClassLoader() - .loadClass("io.opentelemetry.javaagent.tooling.Constants") - .getField("AGENT_PACKAGE_PREFIXES"); - return (String[]) f.get(null); - } - private static String getAgentArgument() { RuntimeMXBean runtimeMxBean = ManagementFactory.getRuntimeMXBean(); for (String arg : runtimeMxBean.getInputArguments()) {