Skip to content

Commit

Permalink
Add validation to MockMethodDispatcher that this class is only ever l…
Browse files Browse the repository at this point in the history
…oaded by the bootstrap class loader.

This is normally assured by Mockito but other testing frameworks that work with instrumentation can interfer with this. This might be difficult to discover for those frameworks as seen with Robolectric. This explicit error should help to discover such discrepencies.
  • Loading branch information
raphw committed Aug 22, 2020
1 parent 42a154f commit c5406ae
Showing 1 changed file with 2 additions and 2 deletions.
Expand Up @@ -17,8 +17,8 @@ public abstract class MockMethodDispatcher {
// Do not use Mockito classes in here as this is executed on the boot loader.
throw new IllegalStateException(
MockMethodDispatcher.class.getName()
+ " is not loaded by the bootstrap class loader but by "
+ classLoader.toString()
+ " is not loaded by the bootstrap class loader but by an instance of "
+ classLoader.getClass().getName()
+ ".\n\nThis causes the inline mock maker to not work as expected. "
+ "Please contact the maintainer of this class loader implementation "
+ "to assure that this class is never loaded by another class loader. "
Expand Down

0 comments on commit c5406ae

Please sign in to comment.