package jenkins.triggers; import static org.mockito.Matchers.any; import static org.mockito.Mockito.verify; import org.junit.Test; import org.junit.runner.RunWith; import org.jvnet.hudson.test.Issue; import org.mockito.Mockito; import org.powermock.api.mockito.PowerMockito; import org.powermock.core.classloader.annotations.PrepareForTest; import org.powermock.modules.junit4.PowerMockRunner; import hudson.model.Item; import hudson.model.SCMedItem; import hudson.model.TaskListener; import jenkins.scm.SCMDecisionHandler; @SuppressWarnings("deprecation") @RunWith(PowerMockRunner.class) public class SCMTriggerItemTest { @Test @Issue("JENKINS-36232") @PrepareForTest(SCMDecisionHandler.class) public void noVetoDelegatesPollingToAnSCMedItem() { // given PowerMockito.mockStatic(SCMDecisionHandler.class); PowerMockito.when(SCMDecisionHandler.firstShouldPollVeto(any(Item.class))).thenReturn(null); SCMedItem scMedItem = Mockito.mock(SCMedItem.class); TaskListener listener = Mockito.mock(TaskListener.class); // when SCMTriggerItem.SCMTriggerItems.asSCMTriggerItem(scMedItem).poll(listener); // then verify(scMedItem).poll(listener); } }