Exemple #1
0
 def teardown_method(self, _test_method):
     for region in REGIONS:
         docket.purge_query_docket(
             ScrapeKey(region, constants.ScrapeType.BACKGROUND)
         )
     sessions.ds().delete_multi(self.sessions_to_delete)
     self.project_id_patcher.stop()
Exemple #2
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)
Exemple #3
0
def purge_docket_and_session(scrape_key):
    """Purges the docket and sessions for the given region and scrape type.

    First, deletes all unleased tasks from the docket for provided region/type.

    Second, checks sessions for still-leased tasks, then removes them. That is,
    this pulls any sessions from the relevant region / scrape type that are
    still associated with leased tasks, and (if found) deletes the task
    and removes the association with the session.

    Args:
        scrape_key: (ScrapeKey) The scraper whose sessions to purge and whose
            items to purge from the docket

    Returns:
        N/A
    """
    docket.purge_query_docket(scrape_key)

    session_results = sessions.get_sessions_with_leased_docket_items(scrape_key)

    for session in session_results:
        sessions.remove_docket_item_from_session(session)
Exemple #4
0
 def test_purge_query_docket_already_empty(self):
     scrape_key = ScrapeKey(REGIONS[0], constants.ScrapeType.BACKGROUND)
     docket.purge_query_docket(scrape_key)
     assert not docket.get_new_docket_item(scrape_key,
                                           return_immediately=True)
Exemple #5
0
 def teardown_method(self, _test_method):
     for region in REGIONS:
         docket.purge_query_docket(
             ScrapeKey(region, constants.ScrapeType.BACKGROUND))
Exemple #6
0
 def teardown_method(self, _test_method: Callable) -> None:
     for region in REGIONS:
         docket.purge_query_docket(
             ScrapeKey(region, constants.ScrapeType.BACKGROUND))
     self.project_id_patcher.stop()