예제 #1
0
def test_queryable_where_manyfunc():
    q = Queryable(range(10)).where(lambda x: x % 2 == 0)
    q = q.where(lambda x: x % 3 == 0)
    assert next(q) == 0
    assert next(q) == 6
    with pytest.raises(StopIteration):
        next(q)
예제 #2
0
 def alerts(self):
     return Queryable.chain(*[p.alerts for p in self._providers.values()])
예제 #3
0
 def arrivals(self):
     return Queryable.chain(*[p.arrivals for p in self._providers.values()])
예제 #4
0
 def routes(self):
     return Queryable.chain(*[p.routes for p in self._providers.values()])
예제 #5
0
 def stops(self):
     return Queryable.chain(*[p.stops for p in self._providers.values()])
예제 #6
0
 def agencies(self):
     return Queryable.chain(*[p.agencies for p in self._providers.values()])
예제 #7
0
def qchain():
    q1 = Queryable(range(10)).where(lambda x: x % 3 == 0)
    q2 = Queryable(range(10)).where(lambda x: x % 2 == 0)
    return Queryable.chain(q1, q2)
예제 #8
0
def test_queryable_unknown_obj_kwargs():
    q = Queryable(range(10)).where(qwerty='uiop')
    with pytest.raises(StopIteration):
        next(q)
예제 #9
0
def test_queryable_dict_obj_kwargs():
    q = Queryable({'id': x, 'odd': bool(x % 2)} for x in range(10))
    assert next(q.where(odd=True))['id'] == 1
예제 #10
0
def test_queryable_where_none():
    q = Queryable(range(10))
    q_prime = q.where()
    assert q is q_prime