package org.societies.useragent.conflict.test; import static org.mockito.Mockito.mock; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import java.util.UUID; import org.junit.After; import org.junit.Before; import org.junit.Test; import org.societies.api.internal.personalisation.model.IOutcome; import org.societies.api.internal.useragent.conflict.ConflictResolutionRule; import org.societies.useragent.conflict.ConflictResolutionManager; public class ConflictResolutionManagerMockitoTest { private IOutcome intent; private IOutcome preference; private ConflictResolutionRule mock; private ConflictResolutionManager classUnderTest; @Before public void setUp() { // creat mocked class mock = mock(ConflictResolutionRule.class); intent=mock(IOutcome.class); preference=mock(IOutcome.class); // creat an instance of your tested class classUnderTest = new ConflictResolutionManager(); // set mock class to the test class classUnderTest.addRule(mock); } @Test public void collaborationCallTest() { // set mock class Behavior when(intent.getvalue()).thenReturn(UUID.randomUUID().toString()); when(preference.getvalue()).thenReturn(UUID.randomUUID().toString()); when(mock.match(intent, preference)).thenReturn(false); // call the method of your class under test classUnderTest.resolveConflict(intent,preference); // then check whether the mock call has been as expected verify(mock).match(intent, preference); } @After public void tearDown(){ intent=null; preference=null; mock = null; classUnderTest = null; } }