def test_download_no_overwrite(supply_download_data): filename, encoding = download_file( url=supply_download_data['url'], folder=supply_download_data['temp_dir'], name_override=supply_download_data['temp_name']) assert filename == f'{supply_download_data["temp_dir"]}/' \ f'{supply_download_data["temp_name"]}' assert os.path.isfile(filename) is True Path(filename).touch() file_stats_touched = os.stat(filename) assert type(file_stats_touched.st_mtime) is float # Downloading again and comparises if the file was overwritten filename, encoding = download_file( url=supply_download_data['url'], folder=supply_download_data['temp_dir'], name_override=supply_download_data['temp_name'], force_overwrite=False) file_stats_new = os.stat(filename) assert file_stats_touched.st_mtime == file_stats_new.st_mtime os.unlink(filename)
def create(): if request.method == "POST": for key, value in request.values.items(): if key.endswith("url"): try: r = requests.head(value) except: return render_template( "create.html", error=f"Invalid {key.replace('_',' ')}") data = request.values.copy() if request.files.get("audio_sample"): f = request.files["audio_sample"] f.filename = get_sample_name(data["name"]) upload_file_to_s3(f) download_file(f.filename) data["has_audio"] = True voice = Voice(**data) db.session.add(voice) db.session.commit() return redirect("/voice?id=" + str(voice.id)) else: return render_template("create.html")
def test_download_simple_file(supply_download_data): filename, encoding = download_file(url=supply_download_data['url']) assert filename == 'add_url.html' assert os.path.isfile(filename) is True os.unlink('add_url.html') # Cleaning up file
def test_download_file_with_folder(supply_download_data): filename, encoding = download_file(url=supply_download_data['url'], folder=supply_download_data['temp_dir']) assert filename == f'{supply_download_data["temp_dir"]}/add_url.html' assert os.path.isfile(filename) is True os.unlink(filename)
def test_download_file_with_override(supply_download_data): filename, encoding = download_file( url=supply_download_data['url'], name_override=supply_download_data['temp_name']) assert filename == supply_download_data['temp_name'] assert os.path.isfile(filename) is True os.unlink(filename)
def test_download_file_with_folder_and_name_override(supply_download_data): filename, encoding = download_file( url=supply_download_data['url'], folder=supply_download_data['temp_dir'], name_override=supply_download_data['temp_name']) assert filename == f'{supply_download_data["temp_dir"]}/' \ f'{supply_download_data["temp_name"]}' assert os.path.isfile(filename) is True os.unlink(filename)