def test_wait_server_timeouts(self):
     """If the server takes too long to start then timeout."""
     ac = ActivationClient(self.config)
     clock = task.Clock()
     self.patch(twisted.internet, "reactor", clock)
     self.patch(ac, "is_already_running", lambda: defer.succeed(False))
     d = ac._wait_server_active()
     clock.pump([tcpactivation.DELAY_BETWEEN_CHECKS] *
                tcpactivation.NUMBER_OF_CHECKS)
     return self.assertFailure(d, ActivationTimeoutError)
    def test_wait_server_active(self):
        """Test the _wait_server_active method."""
        ac = ActivationClient(self.config)
        clock = task.Clock()
        self.patch(twisted.internet, "reactor", clock)
        self.patch(ac, "is_already_running", lambda: defer.succeed(False))

        d = ac._wait_server_active()

        self.assertFalse(d.called, "The deferred should not be fired yet.")
        clock.advance(tcpactivation.DELAY_BETWEEN_CHECKS)
        self.assertFalse(d.called, "The deferred should not be fired yet.")
        self.patch(ac, "is_already_running", lambda: defer.succeed(True))
        clock.advance(tcpactivation.DELAY_BETWEEN_CHECKS)
        self.assertTrue(d.called, "The deferred should be fired by now.")