org.mockito.internal.verification.VerificationWrapperInOrderWrapper Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of securemock Show documentation
Show all versions of securemock Show documentation
Libraries for Elasticsearch
The newest version!
/*
* Copyright (c) 2016 Mockito contributors
* This program is made available under the terms of the MIT License.
*/
package org.mockito.internal.verification;
import org.mockito.exceptions.base.MockitoException;
import org.mockito.internal.InOrderImpl;
import org.mockito.internal.verification.api.VerificationData;
import org.mockito.internal.verification.api.VerificationInOrderMode;
import org.mockito.verification.VerificationMode;
public class VerificationWrapperInOrderWrapper implements VerificationMode {
private final VerificationMode delegate;
public VerificationWrapperInOrderWrapper(VerificationWrapper> verificationWrapper, InOrderImpl inOrder) {
VerificationMode verificationMode = verificationWrapper.wrappedVerification;
VerificationMode inOrderWrappedVerificationMode = wrapInOrder(verificationWrapper, verificationMode, inOrder);
delegate = verificationWrapper.copySelfWithNewVerificationMode(inOrderWrappedVerificationMode);
}
@Override
public void verify(VerificationData data) {
delegate.verify(data);
}
@Override
public VerificationMode description(String description) {
return VerificationModeFactory.description(this, description);
}
private VerificationMode wrapInOrder(VerificationWrapper> verificationWrapper, VerificationMode verificationMode, InOrderImpl inOrder) {
if (verificationMode instanceof VerificationInOrderMode) {
final VerificationInOrderMode verificationInOrderMode = (VerificationInOrderMode)verificationMode;
return new InOrderWrapper(verificationInOrderMode, inOrder);
}
if (verificationMode instanceof VerificationOverTimeImpl) {
final VerificationOverTimeImpl verificationOverTime = (VerificationOverTimeImpl)verificationMode;
if (verificationOverTime.isReturnOnSuccess()) {
return new VerificationOverTimeImpl(verificationOverTime.getPollingPeriodMillis(),
verificationOverTime.getTimer().duration(),
wrapInOrder(verificationWrapper, verificationOverTime.getDelegate(), inOrder),
verificationOverTime.isReturnOnSuccess());
}
}
throw new MockitoException(verificationMode.getClass().getSimpleName() +
" is not implemented to work with InOrder wrapped inside a " +
verificationWrapper.getClass().getSimpleName());
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy