def test_system_tabular(self) -> None: # Arrange package = "pip" mocked_url = "https://pypistats.org/api/packages/pip/system" mocked_response = """{ "data": [ {"category": "Darwin", "downloads": 10734594}, {"category": "Linux", "downloads": 236502274}, {"category": "null", "downloads": 30579325}, {"category": "other", "downloads": 111243}, {"category": "Windows", "downloads": 6527978} ], "package": "pip", "type": "system_downloads" }""" expected_output = """ | category | percent | downloads | |:---------|--------:|------------:| | Linux | 83.14% | 236,502,274 | | null | 10.75% | 30,579,325 | | Darwin | 3.77% | 10,734,594 | | Windows | 2.29% | 6,527,978 | | other | 0.04% | 111,243 | | Total | | 284,455,414 | """ # Act respx.get(mocked_url).respond(content=mocked_response) output = pypistats.system(package) # Assert assert output.strip() == expected_output.strip()
def system(args): # pragma: no cover print( pypistats.system( args.package, os=args.os, start_date=args.start_date, end_date=args.end_date, format=args.format, total="daily" if args.daily else ("monthly" if args.monthly else "all"), ))
def system(args: argparse.Namespace) -> None: # pragma: no cover print( pypistats.system( args.package, os=args.os, start_date=args.start_date, end_date=args.end_date, format=args.format, total="daily" if args.daily else ("monthly" if args.monthly else "all"), color=args.color, verbose=args.verbose, ))
format="pandas").drop(columns=['percent']) downloads = downloads[downloads.category != "Total"] # try: exist_downloads = pd.read_csv(trackpath + downloadfn) # .drop(columns=['percent']) # exist_downloads = exist_downloads[exist_downloads.category != "Total"] dl_data = downloads.merge(exist_downloads, how='outer', on=['category', 'date', 'downloads']).reindex() # except: # dl_data = downloads dl_data.to_csv(trackpath + downloadfn, index=False) sysdownloads = pypistats.system("icepyx", format="pandas").drop(columns=['percent']) sysdownloads = sysdownloads[sysdownloads.category != "Total"] # try: exist_sysdownloads = pd.read_csv(trackpath + sysdownloadfn) # .drop(columns=['percent']) # exist_sysdownloads = exist_sysdownloads[exist_sysdownloads.category != "Total"] exist_sysdownloads['category'] = exist_sysdownloads['category'].fillna("null") sysdl_data = sysdownloads.merge(exist_sysdownloads, how='outer', on=['category', 'date', 'downloads']).reindex() # except: # dl_data = sysdownloads sysdl_data.to_csv(trackpath + sysdownloadfn, index=False)