|
17 | 17 | from flytekit.core.hash import HashMethod |
18 | 18 | from flytekit.core.launch_plan import LaunchPlan |
19 | 19 | from flytekit.core.task import task |
20 | | -from flytekit.core.type_engine import TypeEngine |
| 20 | +from flytekit.core.type_engine import FileDownloadConfig, TypeEngine |
21 | 21 | from flytekit.core.workflow import workflow |
22 | 22 | from flytekit.models.core.types import BlobType |
23 | 23 | from flytekit.models.literals import LiteralMap, Blob, BlobMetadata |
@@ -764,6 +764,18 @@ def test_headers(): |
764 | 764 | assert len(FlyteFilePathTransformer.get_additional_headers(".gz")) == 1 |
765 | 765 |
|
766 | 766 |
|
| 767 | +def test_transform_flytefile_with_file_download_config(): |
| 768 | + csv_file_no_config = FlyteFile["csv"] |
| 769 | + lt = FlyteFilePathTransformer().get_literal_type(csv_file_no_config) |
| 770 | + assert lt.blob.file_extension == "" |
| 771 | + assert lt.blob.enable_legacy_filename == False |
| 772 | + |
| 773 | + legacy_file = Annotated[FlyteFile["csv"], FileDownloadConfig(file_extension="csv", enable_legacy_filename=True)] |
| 774 | + lt = FlyteFilePathTransformer().get_literal_type(legacy_file) |
| 775 | + assert lt.blob.file_extension == "csv" |
| 776 | + assert lt.blob.enable_legacy_filename == True |
| 777 | + |
| 778 | + |
767 | 779 | def test_new_remote_file(): |
768 | 780 | nf = FlyteFile.new_remote_file(name="foo.txt") |
769 | 781 | assert isinstance(nf, FlyteFile) |
|
0 commit comments