visxu commented on code in PR #57:
URL: https://github.com/apache/pulsar-adapters/pull/57#discussion_r1837641118


##########
pulsar-client-kafka-compat/pulsar-client-kafka/src/test/java/org/apache/kafka/clients/producer/PulsarKafkaProducerTest.java:
##########
@@ -96,7 +96,7 @@ public static class Bar {
     @ObjectFactory
     // Necessary to make PowerMockito.mockStatic work with TestNG.
     public IObjectFactory getObjectFactory() {
-        return new org.powermock.modules.testng.PowerMockObjectFactory();
+        return new 
org.powermock.modules.testng.internal.PowerMockClassloaderObjectFactory();

Review Comment:
   Because `PowerMockObjectFactory.class` references `ObjectFactoryImpl.class`. 
`ObjectFactoryImpl.class`'s package path has been changed in testng7.7.1, but 
`PowerMockObjectFactory.class` still uses old path, will meet error. So use 
`PowerMockClassloaderObjectFactory.class` instead of it.
   <img width="876" alt="image" 
src="https://github.com/user-attachments/assets/15ee7476-530d-4de2-b9f3-46ca698854ea";>
   <img width="799" alt="image" 
src="https://github.com/user-attachments/assets/49c89fc4-d6ae-4eb7-ad7a-c80168696f57";>
   
   Error log:
   ```
   org.testng.TestNGException: 
   Error creating object factory: class 
org.apache.kafka.clients.producer.PulsarKafkaProducerTest
        at 
org.testng.internal.TestNGClassFinder.createObjectFactory(TestNGClassFinder.java:238)
        at 
org.testng.internal.TestNGClassFinder.<init>(TestNGClassFinder.java:64)
        at org.testng.TestRunner.initMethods(TestRunner.java:442)
        at org.testng.TestRunner.init(TestRunner.java:336)
        at org.testng.TestRunner.init(TestRunner.java:289)
        at org.testng.TestRunner.<init>(TestRunner.java:179)
        at 
org.testng.SuiteRunner$DefaultTestRunnerFactory.newTestRunner(SuiteRunner.java:643)
        at org.testng.SuiteRunner.init(SuiteRunner.java:225)
        at org.testng.SuiteRunner.<init>(SuiteRunner.java:115)
        at org.testng.TestNG.createSuiteRunner(TestNG.java:1349)
        at org.testng.TestNG.createSuiteRunners(TestNG.java:1325)
        at org.testng.TestNG.runSuitesLocally(TestNG.java:1167)
        at org.testng.TestNG.runSuites(TestNG.java:1099)
        at org.testng.TestNG.run(TestNG.java:1067)
        at com.intellij.rt.testng.IDEARemoteTestNG.run(IDEARemoteTestNG.java:65)
        at 
com.intellij.rt.testng.RemoteTestNGStarter.main(RemoteTestNGStarter.java:105)
   Caused by: java.lang.reflect.InvocationTargetException
        at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
        at 
java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:568)
        at 
org.testng.internal.TestNGClassFinder.createObjectFactory(TestNGClassFinder.java:236)
        ... 15 more
   Caused by: java.lang.NoClassDefFoundError: 
org/testng/internal/ObjectFactoryImpl
        at 
org.powermock.modules.testng.PowerMockObjectFactory.<init>(PowerMockObjectFactory.java:36)
        at 
org.apache.kafka.clients.producer.PulsarKafkaProducerTest.getObjectFactory(PulsarKafkaProducerTest.java:100)
        ... 20 more
   Caused by: java.lang.ClassNotFoundException: 
org.testng.internal.ObjectFactoryImpl
        at 
java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641)
        at 
java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
        at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)
        ... 22 more
   ```



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to