mirror of https://github.com/watcha-fr/synapse
Due to a failure to instantiate DeferredTimedOutError, time_bound_deferred would throw a CancelledError when the deferred timed out, which was rather confusing.pull/4/merge
parent
d101488c5f
commit
b88a323ffb
@ -0,0 +1,33 @@ |
|||||||
|
# -*- coding: utf-8 -*- |
||||||
|
# Copyright 2017 Vector Creations Ltd |
||||||
|
# |
||||||
|
# Licensed under the Apache License, Version 2.0 (the "License"); |
||||||
|
# you may not use this file except in compliance with the License. |
||||||
|
# You may obtain a copy of the License at |
||||||
|
# |
||||||
|
# http://www.apache.org/licenses/LICENSE-2.0 |
||||||
|
# |
||||||
|
# Unless required by applicable law or agreed to in writing, software |
||||||
|
# distributed under the License is distributed on an "AS IS" BASIS, |
||||||
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
||||||
|
# See the License for the specific language governing permissions and |
||||||
|
# limitations under the License. |
||||||
|
from synapse import util |
||||||
|
from twisted.internet import defer |
||||||
|
from tests import unittest |
||||||
|
|
||||||
|
|
||||||
|
class ClockTestCase(unittest.TestCase): |
||||||
|
@defer.inlineCallbacks |
||||||
|
def test_time_bound_deferred(self): |
||||||
|
# just a deferred which never resolves |
||||||
|
slow_deferred = defer.Deferred() |
||||||
|
|
||||||
|
clock = util.Clock() |
||||||
|
time_bound = clock.time_bound_deferred(slow_deferred, 0.001) |
||||||
|
|
||||||
|
try: |
||||||
|
yield time_bound |
||||||
|
self.fail("Expected timedout error, but got nothing") |
||||||
|
except util.DeferredTimedOutError: |
||||||
|
pass |
Loading…
Reference in new issue