def create():
            def mapper(x):
                return TimeInterval(x.value, x.interval)

            return xs.pipe(
                ops.time_interval(),
                ops.map(mapper),
            )
        def create():
            def mapper(x):
                return TimeInterval(x.value, x.interval)

            return xs.pipe(
                ops.time_interval(),
                ops.map(mapper),
            )
    def test_time_interval_default_scheduler(self):
        import datetime
        import time
        xs = rx.of(1, 2).pipe(
            ops.time_interval(),
            ops.pluck_attr('interval'),
        )

        l = []
        d = xs.subscribe(l.append)
        time.sleep(0.1)
        self.assertEqual(len(l), 2)
        [self.assertIsInstance(el, datetime.timedelta) for el in l]
    def test_time_interval_default_scheduler(self):
        import datetime
        import time
        xs = rx.of(1, 2).pipe(
            ops.time_interval(),
            ops.pluck_attr('interval'),
        )

        l = []
        d = xs.subscribe(l.append)
        time.sleep(0.1)
        self.assertEqual(len(l), 2)
        [self.assertIsInstance(el, datetime.timedelta) for el in l]
 def create():
     return rx.never().pipe(ops.time_interval())
 def create():
     return rx.throw(ex).pipe(ops.time_interval())
 def create():
     return rx.empty().pipe(ops.time_interval())
 def create():
     return rx.never().pipe(ops.time_interval())
 def create():
     return rx.throw(ex).pipe(ops.time_interval())
 def create():
     return rx.empty().pipe(ops.time_interval())
import rx
import rx.operators as ops
from rx.subject import Subject
import time

numbers = Subject()

numbers.pipe(ops.time_interval()).subscribe(
    on_next=lambda i: print("on_next {}: {}".format(i.value, i.interval)),
    on_error=lambda e: print("on_error: {}".format(e)),
    on_completed=lambda: print("on_completed"))

numbers.on_next(1)
numbers.on_next(2)
time.sleep(0.1)
numbers.on_next(3)
time.sleep(0.2)
numbers.on_next(4)
op.ignore_elements()
op.last()
op.skip()
op.skip_last()
op.take()
op.take_last()
# ...

"""Error Handling"""
op.catch()
op.retry()

"""Utility"""
op.delay()
op.materialize()
op.time_interval()
op.timeout()
op.timestamp()

"""Conditional and Boolean"""
op.all()
op.contains()
op.default_if_empty()
op.sequence_equal()
op.skip_until()
op.skip_while()
op.take_until()
op.take_while()

"""Connectable"""
op.publish()