All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.fitbur.mockito.internal.verification.VerificationDataImpl Maven / Gradle / Ivy

There is a newer version: 1.0.0
Show newest version
/*
 * Copyright (c) 2007 Mockito contributors
 * This program is made available under the terms of the MIT License.
 */
package com.fitbur.mockito.internal.verification;

import com.fitbur.mockito.exceptions.Reporter;
import com.fitbur.mockito.internal.invocation.InvocationMatcher;
import com.fitbur.mockito.internal.stubbing.InvocationContainer;
import com.fitbur.mockito.internal.util.ObjectMethodsGuru;
import com.fitbur.mockito.internal.verification.api.VerificationData;
import com.fitbur.mockito.invocation.Invocation;

import static com.fitbur.mockito.exceptions.Reporter.cannotVerifyToString;

import java.util.List;

public class VerificationDataImpl implements VerificationData {

    private final InvocationMatcher wanted;
    private final InvocationContainer invocations;

    public VerificationDataImpl(InvocationContainer invocations, InvocationMatcher wanted) {
        this.invocations = invocations;
        this.wanted = wanted;
        this.assertWantedIsVerifiable();
    }

    public List getAllInvocations() {
        return invocations.getInvocations();
    }

    public InvocationMatcher getWanted() {
        return wanted;
    }

    private void assertWantedIsVerifiable() {
        if (wanted == null) {
            return;
        }
        ObjectMethodsGuru o =  new ObjectMethodsGuru();
        if (o.isToString(wanted.getMethod())) {
            throw cannotVerifyToString();
        }
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy