## org.jmock.api
Interface Expectation

    public interface Expectation

An object that matches, checks and fakes an `Invocation`

Author:
  npryce, smgf

Method Summary
`boolean` `allowsMoreInvocations()` Can more `Invocation`s expected by this Expectation still occur?
`Object` `invoke(Invocation invocation)` Invokes the expectation: records that the invocation has occurred and fakes some behaviour in response.
`boolean` `isSatisfied()` Have enough `Invocation`s expected by this Expectation occurred?
`boolean` `matches(Invocation invocation)` Can the Expectation be invoked with invocation?

Method Detail

### isSatisfied

    boolean isSatisfied()

  Have enough `Invocation`s expected by this Expectation occurred?

  Returns:
    `true` if the expectation has received enough of its expected invocations, `false` otherwise.

### allowsMoreInvocations

    boolean allowsMoreInvocations()

  Can more `Invocation`s expected by this Expectation still occur?

  Returns:
    `true` if invocations expected by this expectation can still occur, `false` otherwise.

### matches

    boolean matches(Invocation invocation)

  Can the Expectation be invoked with invocation?

  Parameters:
    `invocation` -
  Returns:
    `true` if the expectation can be invoked with invocation, `false` otherwise.

### invoke

    Object invoke(Invocation invocation)
                  throws Throwable

  Invokes the expectation: records that the invocation has occurred and fakes some behaviour in response.

  Parameters:
    `invocation` - The invocation to record and fake.
  Returns:
    A result that is eventually returned from the method call that caused the invocation.
  Throws:
    `Throwable` - An exception that is eventually thrown from the method call that caused the invocation.
    `IllegalStateException` - The expectation has been invoked with a method that it doesn't match or the faked behaviour has been set up incorrectly. For example, IllegalStateException is thrown when trying to return a value or throw a checked exception that is incompatible with the return type of the method being mocked