I've been trying for a while to mock my codes. I'm newby on mocking so lots of things ahead of me to catch. I'm using Powermockito with Mockito and Easymock integration.

**I'm having difficulties with mocking a method which is inside the method I wanted to test.** So here is an example of the situation I faced:

```
public class trialClass {
 public static int try2(){    
        return 3;    
    }

    public static int try(int a){    
        return try2() + a;    
    }
}

```

and my test class is:

```
@RunWith(PowerMockRunner.class)
@PrepareForTest(trial.class)
public class trialTest {

    @Before
    public void setUp() throws Exception {    
        PowerMockito.mockStatic(trial.class);    

        //Here I expect try2() to return 10, even it return 3
        PowerMockito.when(trial.try2()).thenReturn(10);    
    }

    @Test
    public void testtry() throws Exception {
        //After try2() returns 10 recursively inside my try() method,
        //I expect result to be 11
        Assert.assertEquals(11, trial.try(1));    
    }
}

```

**This question of mine actually comes from my session variable. My session holds some value and an X method returns that value. All I need is to mock that X method recursively and this question just simulates this case.** 

Thanks for your help guys.