/* * Copyright (c) 2007 Mockito contributors * This program is made available under the terms of the MIT License. */ package org.mockito.internal.invocation.finder; import org.mockito.internal.invocation.InvocationComparator; import org.mockito.stubbing.Stubbing; import org.mockito.internal.stubbing.StubbingComparator; import org.mockito.internal.util.DefaultMockingDetails; import org.mockito.invocation.Invocation; import java.util.*; public class AllInvocationsFinder { private AllInvocationsFinder() {} /** * gets all invocations from mocks. Invocations are ordered earlier first. * * @param mocks mocks * @return invocations */ public static List find(Iterable mocks) { Set invocationsInOrder = new TreeSet(new InvocationComparator()); for (Object mock : mocks) { Collection fromSingleMock = new DefaultMockingDetails(mock).getInvocations(); invocationsInOrder.addAll(fromSingleMock); } return new LinkedList(invocationsInOrder); } /** * Gets all stubbings from mocks. Invocations are ordered earlier first. * * @param mocks mocks * @return stubbings */ public static Set findStubbings(Iterable mocks) { Set stubbings = new TreeSet(new StubbingComparator()); for (Object mock : mocks) { Collection fromSingleMock = new DefaultMockingDetails(mock).getStubbings(); stubbings.addAll(fromSingleMock); } return stubbings; } }