Mock Casting of jcr Session to Jackrabbit Session - (JackrabbitSession) session
Hi All,
I am trying to write a junit test case and i am unable to mock the casting of jcr session to Jackrabbit session.
Here is my Code :
resolver = request.getResourceResolver();
session = resolver.adaptTo(Session.class);
jcrSession = (JackrabbitSession) session;
Below is my Junit :
@Mock
Session session;
@Mock
ResourceResolver resolver;
@Mock
JackrabbitSession jcrSession;
PowerMockito.when(request.getResourceResolver()).thenReturn(resolver);
PowerMockito.when(resolver.adaptTo(Session.class)).thenReturn(session);
PowerMockito.when((JackrabbitSession) session).thenReturn(jcrSession); // i am getting error at this point
when i am trying to do this, i am getting "java.lang.ClassCastException"
Below is the error:
java.lang.ClassCastException: $javax.jcr.Session$$EnhancerByMockitoWithCGLIB$$b9cd1700 cannot be cast to org.apache.jackrabbit.api.JackrabbitSession
I have mocked my session and resolver objects but still i am getting the error.
Please help me in Mocking this for my junit test.
Thanks & Regards,
Indrajith