def and_return_future(self, *return_values):
        """Similar to `and_return` but the doubled method returns a future.

        :param object return_values: The values the double will return when called,
        """
        futures = []
        for value in return_values:
            future = _get_future()
            future.set_result(value)
            futures.append(future)
        return self.and_return(*futures)