Exemplo n.º 1
0
 def test_get_element(self):
     cache = LocalCache()
     cache.cache_path = f"{pathlib.Path(__file__).parent.absolute()}/local_cache.pkl"
     data = cache.get_element("ssdsd")
     assert data == []
     data = cache.get_element("aaaa")
     assert data == [123, 4354, 54545]
 def __init__(self, cache="local") -> None:
     self.url = VIENNA_AIRPORT_URL
     self.weather_scraper = WeatherScraper()
     self.cache = None
     if cache == "local":
         self.cache = LocalCache()
     elif cache == "redis":
         self.cache = RedisCache()
Exemplo n.º 3
0
 def test_get_cache_elements_empty(self):
     cache = LocalCache()
     cache.cache_path = f"{pathlib.Path(__file__).parent.absolute()}/local_cache.pkl"
     cache.remove_cache()
     elements = cache.get_cache_elements()
     assert isinstance(elements, list)
     assert elements == []
def main():
    parser = argparse.ArgumentParser(
        description="Command line interface for flightsparser.")
    parser.add_argument("--list-cached-departures", action="store_true")
    parser.add_argument("--extract-departures", action="store_true")
    parser.add_argument("--extract-departures-no-cache", action="store_true")
    parser.add_argument("--create-notes", action="store_true")
    parser.add_argument("--create-notes-from-cache", action="store_true")
    parser.add_argument("--cache-key", action="store")
    args = parser.parse_args()

    if args.list_cached_departures:
        cache = LocalCache()
        elements = cache.get_cache_elements()
        print("CACHED ITEMS: ")
        for index, el in enumerate(elements, 1):
            print(f"--> {index}) {el}")
    elif args.extract_departures:
        scraper = DepartureScraper(cache=CACHE_TYPE)
        data = scraper.extract()
        print("Extracting departures...")
        for departure in data:
            print(departure)
    elif args.extract_departures_no_cache:
        scraper = DepartureScraper(cache=None)
        data = scraper.extract()
        print("Extracting departures no cache...")
        for departure in data:
            print(departure)
    elif args.create_notes:
        print("Creating notes...")
        create_notes(cache=CACHE_TYPE, save_to_db=SAVE_RESULTS_TO_DB)
    elif args.create_notes_from_cache:
        if args.cache_key:
            print("Creating notes from cache...")
            create_notes(cache="local",
                         key=args.cache_key,
                         save_to_db=SAVE_RESULTS_TO_DB)
        else:
            print("Please provide a cache key.")
Exemplo n.º 5
0
 def test_remove_cache(self):
     cache = LocalCache()
     cache.remove_cache()
     elements = cache.get_cache_elements()
     assert isinstance(elements, list)
     assert elements == []
Exemplo n.º 6
0
 def test_remove_cache(self):
     cache = LocalCache()
     cache.cache_path = f"{pathlib.Path(__file__).parent.absolute()}/local_cache.pkl"
     cache.remove_cache()
     assert os.path.exists(cache.cache_path) is False
Exemplo n.º 7
0
 def test_add_cache(self):
     cache = LocalCache()
     cache.cache_path = f"{pathlib.Path(__file__).parent.absolute()}/local_cache.pkl"
     cache.remove_cache()
     cache.add_element("aaaa", [123, 4354, 54545])
     elements = cache.get_cache_elements()
     assert isinstance(elements, list)
     assert elements == ["aaaa"]
     cache.add_element("bbbb", [23243, 45354, 5454545])
     elements = cache.get_cache_elements()
     assert isinstance(elements, list)
     assert elements == ["aaaa", "bbbb"]