title: Failing in assertion using PowerMockito when testing Singleton
body: <p>Assuming the follow tests:</p>
  
  <pre><code>public void testSingleton1() {
    Mock1 mock1 = PowerMockito.mock(Mock1.class);
    Mock2 mock2 = PowerMockito.mock(Mock2.class);
  
    PowerMockito.whenNew(Mock1.class).withNoArguments().thenReturn(mock1);
    PowerMockito.when(mock1.getMock2()).thenReturn(mock2);
    PowerMockito.when(mock2.method1("A", "B", "C")).thenReturn("D");
  
    Singleton singleton = Singleton.getInstance();
    assertEquals("D", singleton.method1("A", "B", "C"));
  
    Mockito.verify(mock1, Mockito.times(1)).getMock2();
    Mockito.verify(mock2, Mockito.times(1)).method1("A", "B", "C");
  }
  
  public void testSingleton2() {
    Mock1 mock1 = PowerMockito.mock(Mock1.class);
    Mock2 mock2 = PowerMockito.mock(Mock2.class);
  
    PowerMockito.whenNew(Mock1.class).withNoArguments().thenReturn(mock1);
    PowerMockito.when(mock1.getMock2()).thenReturn(mock2);
    PowerMockito.when(mock2.method1("B", "C", "D")).thenReturn("F");
  
    Singleton singleton = Singleton.getInstance();
    assertEquals("F", singleton.method1("B", "C", "D"));
  
    Mockito.verify(mock1, Mockito.times(1)).getMock2();
    Mockito.verify(mock2, Mockito.times(1)).method1("B", "C", "D");
  }
  </code></pre>
  
  <p>The first test is passing successfuly but the second fails in assertion, returning null.<br>
  I think that the problem is because i'm testing a singleton and the new expectation (<strong>PowerMockito.when(mock2.method1("B", "C", "D")).thenReturn("F");</strong>) is not working.</p>
  
  <p><strong>PS: When i run only the testSingleton2() it's working correctly.</strong></p>