public function request(callable $fn, array $arguments = [])
    {
        $result = call_user_func_array($fn, $arguments);

        if ($result instanceof MatcherInterface) {
            return $this->assert($result);
        }

        return $result;
    }