Hello i am new in Junit mockito
i am trying to write a unit test case but when i am run the test case i am getting null pointer exception.
Code Snip:
package com.dataguise.webservices;
import static org.junit.jupiter.api.Assertions.*;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
import org.mockito.InjectMocks;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import static org.mockito.Mockito.*;
import com.dataguise.cache.CacheManager;
import com.dataguise.controller.CentralController;
import com.dataguise.webservices.beans.DgUserAuthorities;
class RestAPIsTest {
    @InjectMocks
    private CentralController controller;
    @Mock
    DgUserAuthorities dgUserAuthorities;
    @Mock
    private CacheManager cacheManager;
    @BeforeEach
    public void setup() {
        when(this.cacheManager.getCache(anyString())).thenReturn(true);
        MockitoAnnotations.initMocks(this);
    }
    @Test
    void testSession() {
        try {
            dgUserAuthorities = controller.login("d", "d", "", false);
            when(controller.login("d", "d", "", false)).thenReturn(dgUserAuthorities);
            assertEquals(dgUserAuthorities, dgUserAuthorities);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
While the same method call in the rest api gives the appropriate result.
 
    