We can also rewrite it so:
```python
def _wait_for(check_func, desc, timeout=200):
        """
        Calls the method provided as an argument until the
        return value is not False.

        Arguments:
            check_func (callable): Function that accepts no arguments and returns a boolean indicating whether the promise is fulfilled.
            desc (str): Description of the Promise, used in log messages.
            timeout (float): Maximum number of seconds to wait for the Promise to be satisfied before timing out.

        """
        EmptyPromise(check_func, desc, timeout=timeout).fulfill()

def wait_for_state(self, state, video_display_name=None):
        ...
        self._wait_for(
            lambda: self.state(video_display_name) == state,
            'State is {state}'.format(state=state)
        )
```
What do you think?