示例#1
0
    def test_iterate_docket_item_no_matching_items(self):
        docket_key = ScrapeKey(REGIONS[0], constants.ScrapeType.BACKGROUND)
        docket.add_to_query_docket(docket_key, get_payload()).result()

        session_key = ScrapeKey(REGIONS[1], constants.ScrapeType.BACKGROUND)
        self.create_session(session_key)
        assert not tracker.iterate_docket_item(session_key)
示例#2
0
    def test_purge_docket_and_session(self):
        scrape_key = ScrapeKey(REGIONS[0], constants.ScrapeType.BACKGROUND)
        docket.add_to_query_docket(scrape_key, get_payload()).result()
        self.create_session(scrape_key)

        tracker.purge_docket_and_session(scrape_key)

        assert not tracker.iterate_docket_item(scrape_key)
示例#3
0
    def test_remove_item_from_session_and_docket(self):
        scrape_key = ScrapeKey(REGIONS[0], constants.ScrapeType.BACKGROUND)
        docket.add_to_query_docket(scrape_key, get_payload()).result()
        self.create_session(scrape_key)
        tracker.iterate_docket_item(scrape_key)

        tracker.remove_item_from_session_and_docket(scrape_key)

        assert not sessions.get_current_session(scrape_key).docket_ack_id
示例#4
0
    def test_iterate_docket_item(self):
        scrape_key = ScrapeKey(REGIONS[0], constants.ScrapeType.BACKGROUND)

        self.create_session(scrape_key)
        docket.add_to_query_docket(scrape_key, get_payload()[0]).result()
        docket.add_to_query_docket(scrape_key, get_payload()[1]).result()

        assert tracker.iterate_docket_item(scrape_key) == get_payload()[0]
        assert tracker.iterate_docket_item(scrape_key) == get_payload()[1]
示例#5
0
    def test_get_new_docket_item_no_matching_items(self):
        write_key = ScrapeKey(REGIONS[0], constants.ScrapeType.BACKGROUND)
        read_key = ScrapeKey(REGIONS[1], constants.ScrapeType.BACKGROUND)

        pubsub_helper.create_topic_and_subscription(write_key,
                                                    docket.PUBSUB_TYPE)
        docket.add_to_query_docket(write_key, get_payload()).result()

        docket_item = docket.get_new_docket_item(read_key,
                                                 return_immediately=True)
        assert not docket_item
示例#6
0
    def test_purge_query_docket_nothing_matching(self):
        scrape_key_purge = ScrapeKey(REGIONS[0],
                                     constants.ScrapeType.BACKGROUND)
        scrape_key_add = ScrapeKey(REGIONS[1], constants.ScrapeType.BACKGROUND)

        pubsub_helper.create_topic_and_subscription(scrape_key_add,
                                                    docket.PUBSUB_TYPE)
        docket.add_to_query_docket(scrape_key_add, get_payload()).result()

        docket.purge_query_docket(scrape_key_purge)
        assert not docket.get_new_docket_item(scrape_key_purge,
                                              return_immediately=True)
示例#7
0
    def test_add_to_query_docket_background(self):
        scrape_key = ScrapeKey(REGIONS[0], constants.ScrapeType.BACKGROUND)

        pubsub_helper.create_topic_and_subscription(scrape_key,
                                                    docket.PUBSUB_TYPE)

        docket.add_to_query_docket(scrape_key, get_payload()[0]).result()
        docket.add_to_query_docket(scrape_key, get_payload()[1]).result()

        items = [
            docket.get_new_docket_item(scrape_key),
            docket.get_new_docket_item(scrape_key),
        ]
        assert len(items) == 2

        for i, item in enumerate(items):
            assert item.message.data.decode() == json.dumps(get_payload()[i])
示例#8
0
    def test_iterate_docket_item_no_open_session_to_update(self):
        scrape_key = ScrapeKey(REGIONS[0], constants.ScrapeType.BACKGROUND)

        docket.add_to_query_docket(scrape_key, get_payload()).result()

        assert not tracker.iterate_docket_item(scrape_key)