public function argumentsOf(int $invocation = 1): array
    {
        if (isset($this->callHistory[$invocation - 1])) {
            return $this->callHistory[$invocation - 1];
        }

        $totalInvocations = $this->count();
        throw new MissingInvocation(sprintf(
                'Missing invocation #%d for %s, was %s.',
                $invocation,
                $this->name,
                ($totalInvocations === 0 ?
                        'never called' :
                        ('only called ' . ($totalInvocations === 1 ?
                            'once' : $totalInvocations . ' times')
                        )
                )
        ));
    }