Beispiel #1
0
        def test_time_based_query():
            events_1 = Event.query(start_after=300)
            events_2 = Event.query(start_before=300)
            events_3 = Event.query(start_after=200, start_before=400)

            self.assertTrue(events_1.count() * 10 == cnt_all * 4)
            self.assertTrue(events_2.count() * 10 == cnt_all * 6)
            self.assertTrue(events_3.count() * 10 == cnt_all * 4)
Beispiel #2
0
    def test_query(self):
        all_event = Event.query()
        cnt_all = all_event.count()

        def test_time_based_query():
            events_1 = Event.query(start_after=300)
            events_2 = Event.query(start_before=300)
            events_3 = Event.query(start_after=200, start_before=400)

            self.assertTrue(events_1.count() * 10 == cnt_all * 4)
            self.assertTrue(events_2.count() * 10 == cnt_all * 6)
            self.assertTrue(events_3.count() * 10 == cnt_all * 4)

        test_time_based_query()
        query_by_name = Event.query(name=self.names[0])
        query_by_entity = Event.query(entity=self.entities[0])
        self.assertTrue(query_by_name.count() == query_by_entity.count())
Beispiel #3
0
def get_events():
    args = request.args

    name = args.get('name', None)
    entity = args.get('entity', None)
    tags = json.loads(args.get('tags', '{}'))
    state = args.get('state', None)
    start_before = args.get('startBefore', None)
    start_after = args.get('startAfter', None)

    limit = args.get('limit', 100)

    events = Event.query(name=name,
                         entity=entity,
                         tags=tags,
                         state=state,
                         start_before=start_before and int(start_before),
                         start_after=start_after and int(start_after))
    events = events.limit(limit).order_by('-start')
    return json.dumps(events.as_pymongo())