Commits

Lynn Rees committed bbf6fb6

- fix tests

Comments (0)

Files changed (3)

thingq/active/core.py

     __slots__ = SLOTS
 
 
-class filterq(AutoResultMixin, FilterMixin):
+class filterq(
+    AutoResultMixin, FilterMixin, CollectMixin, SetMixin, SliceMixin
+):
 
     '''auto-balanced filter queue'''
 
     __slots__ = SLOTS
 
 
-class mfilterq(ManResultMixin, FilterMixin):
+class mfilterq(
+    ManResultMixin, FilterMixin, CollectMixin, SetMixin, SliceMixin,
+):
 
     '''manually balanced filtering queue'''
 
     __slots__ = SLOTS
 
 
-class mapq(AutoResultMixin, MapMixin):
+class mapq(AutoResultMixin, RepeatMixin, MapMixin):
 
     '''auto-balanced mapping queue'''
 
     __slots__ = SLOTS
 
 
-class mmapq(ManResultMixin, MapMixin):
+class mmapq(ManResultMixin, RepeatMixin, MapMixin):
 
     '''manually balanced mapping queue'''
 
     __slots__ = SLOTS
 
 
-class orderq(AutoResultMixin, OrderMixin):
+class orderq(AutoResultMixin, OrderMixin, RandomMixin):
 
     '''auto-balanced ordering queue'''
 
     __slots__ = SLOTS
 
 
-class morderq(ManResultMixin, OrderMixin):
+class morderq(ManResultMixin, OrderMixin, RandomMixin):
 
     '''manually balanced order queue'''
 
     __slots__ = SLOTS
 
 
-class reduceq(AutoResultMixin, ReduceMixin):
+class reduceq(AutoResultMixin, MathMixin, TruthMixin, ReduceMixin):
 
     '''auto-balancing reduce queue'''
 
     __slots__ = SLOTS
 
 
-class mreduceq(ManResultMixin, ReduceMixin):
+class mreduceq(ManResultMixin, MathMixin, TruthMixin, ReduceMixin):
 
     '''manually balanced reduce queue'''
 

thingq/lazy/core.py

     __slots__ = SLOTS
 
 
-class filterq(AutoResultMixin, FilterMixin):
+class filterq(
+    AutoResultMixin, FilterMixin, CollectMixin, SetMixin, SliceMixin,
+):
 
     '''auto-balanced filter queue'''
 
     __slots__ = SLOTS
 
 
-class mfilterq(ManResultMixin, FilterMixin):
+class mfilterq(
+    ManResultMixin, FilterMixin, CollectMixin, SetMixin, SliceMixin,
+):
 
     '''manually balanced filtering queue'''
 
     __slots__ = SLOTS
 
 
-class mapq(AutoResultMixin, MapMixin):
+class mapq(AutoResultMixin, RepeatMixin, MapMixin):
 
     '''auto-balanced map queue'''
 
     __slots__ = SLOTS
 
 
-class mmapq(ManResultMixin, MapMixin):
+class mmapq(ManResultMixin, RepeatMixin, MapMixin):
 
     '''manually balanced map queue'''
 
     __slots__ = SLOTS
 
 
-class orderq(AutoResultMixin, OrderMixin):
+class orderq(AutoResultMixin, OrderMixin, RandomMixin):
 
     '''auto-balanced order queue'''
 
     __slots__ = SLOTS
 
 
-class morderq(ManResultMixin, OrderMixin):
+class morderq(ManResultMixin, OrderMixin, RandomMixin):
 
     '''manually balanced order queue'''
 
     __slots__ = SLOTS
 
 
-class reduceq(AutoResultMixin, ReduceMixin):
+class reduceq(AutoResultMixin, MathMixin, TruthMixin, ReduceMixin):
 
     '''auto-balancing reduce queue'''
 
     __slots__ = SLOTS
 
 
-class mreduceq(ManResultMixin, ReduceMixin):
+class mreduceq(ManResultMixin, MathMixin, TruthMixin, ReduceMixin):
 
     '''manually balanced reduce queue'''
 

thingq/mapping.py

         if wait:
             def invoke(x, wait=0):
                 sleep(wait)
-                return invoke(x)
+                results = caller(x)
+                return x if results is None else results
         with self._context():
             return self._xtend(imap(invoke, self._iterable))
 
             def delay_map(x, wait=None, caller=None):
                 sleep(wait)
                 return caller(x)
-            call_ = lambda x: delay_map(x, wait, call_)
+            call = self._call
+            call_ = lambda x: delay_map(x, wait, call)
         with self._context():
             return self._xtend(imap(call_, self._iterable))