| /* |
| * Copyright (c) 2017 Mockito contributors |
| * This program is made available under the terms of the MIT License. |
| */ |
| package org.mockito.internal.junit; |
| |
| import org.mockito.internal.creation.settings.CreationSettings; |
| import org.mockito.mock.MockCreationSettings; |
| import org.mockito.quality.Strictness; |
| |
| /** |
| * Fails early when mismatched arguments used for stubbing |
| */ |
| public class StrictStubsRunnerTestListener implements MockitoTestListener { |
| |
| private final DefaultStubbingLookupListener stubbingLookupListener = new DefaultStubbingLookupListener(Strictness.STRICT_STUBS); |
| |
| @Override |
| public void testFinished(TestFinishedEvent event) {} |
| |
| @Override |
| public void onMockCreated(Object mock, MockCreationSettings settings) { |
| //It is not ideal that we modify the state of MockCreationSettings object |
| //MockCreationSettings is intended to be an immutable view of the creation settings |
| //In future, we should start passing MockSettings object to the creation listener |
| //TODO #793 - when completed, we should be able to get rid of the CreationSettings casting below |
| ((CreationSettings) settings).getStubbingLookupListeners().add(stubbingLookupListener); |
| } |
| } |