org.mockito.internal.debugging.InvocationsPrinter 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.debugging;
import org.mockito.Mockito;
import org.mockito.internal.util.collections.ListUtil;
import org.mockito.invocation.Invocation;
import org.mockito.stubbing.Stubbing;
import java.util.Collection;
import java.util.LinkedList;
/**
* Prints invocations in human-readable, printable way
*/
public class InvocationsPrinter {
public String printInvocations(Object mock) {
Collection invocations = Mockito.mockingDetails(mock).getInvocations();
Collection stubbings = Mockito.mockingDetails(mock).getStubbings();
if (invocations.isEmpty() && stubbings.isEmpty()) {
return "No interactions and stubbings found for mock: " + mock;
}
StringBuilder sb = new StringBuilder();
int x = 1;
for(Invocation i:invocations) {
if (x == 1) {
sb.append("[Mockito] Interactions of: ").append(mock).append("\n");
}
sb.append(" ").append(x++).append(". ").append(i.toString()).append("\n");
sb.append(" ").append(i.getLocation()).append("\n");
if (i.stubInfo() != null) {
sb.append(" - stubbed ").append(i.stubInfo().stubbedAt()).append("\n");
}
}
LinkedList unused = ListUtil.filter(stubbings, new ListUtil.Filter() {
public boolean isOut(Stubbing s) {
return s.wasUsed();
}
});
if (unused.isEmpty()) {
return sb.toString();
}
sb.append("[Mockito] Unused stubbings of: ").append(mock).append("\n");
x = 1;
for(Stubbing s:stubbings) {
sb.append(" ").append(x++).append(". ").append(s.getInvocation()).append("\n");
sb.append(" - stubbed ").append(s.getInvocation().getLocation()).append("\n");
}
return sb.toString();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy