2828from datetime import datetime
2929
3030from pytest_asyncio import fixture
31-
31+ from servicex . python_dataset import PythonDataset
3232from servicex .models import (
3333 TransformRequest ,
3434 ResultDestination ,
3737 TransformedResults ,
3838)
3939
40+ from servicex .dataset_identifier import FileListDataset
41+ from servicex .minio_adapter import MinioAdapter
42+
43+ import pandas as pd
44+ import os
45+
4046
4147@fixture
4248def transform_request () -> TransformRequest :
@@ -50,6 +56,44 @@ def transform_request() -> TransformRequest:
5056 ) # type: ignore
5157
5258
59+ @fixture
60+ def minio_adapter () -> MinioAdapter :
61+ return MinioAdapter ("localhost" , False , "access_key" , "secret_key" , "bucket" )
62+
63+
64+ @fixture
65+ def python_dataset (dummy_parquet_file ):
66+ did = FileListDataset (dummy_parquet_file )
67+ dataset = PythonDataset (
68+ title = "Test submission" ,
69+ dataset_identifier = did ,
70+ codegen = "uproot" ,
71+ result_format = ResultFormat .parquet , # type: ignore
72+ ) # type: ignore
73+
74+ def foo ():
75+ return
76+
77+ dataset .with_uproot_function (foo )
78+ return dataset
79+
80+
81+ @fixture
82+ def transformed_result_python_dataset (dummy_parquet_file ) -> TransformedResults :
83+ return TransformedResults (
84+ hash = "289e90f6fe3780253af35c428b784ac22d3ee9200a7581b8f0a9bdcc5ae93479" ,
85+ title = "Test submission" ,
86+ codegen = "uproot" ,
87+ request_id = "b8c508d0-ccf2-4deb-a1f7-65c839eebabf" ,
88+ submit_time = datetime .now (),
89+ data_dir = "/foo/bar" ,
90+ file_list = [dummy_parquet_file ],
91+ signed_url_list = [],
92+ files = 1 ,
93+ result_format = ResultFormat .parquet ,
94+ )
95+
96+
5397@fixture
5498def transform_status_response () -> dict :
5599 return {
@@ -115,16 +159,30 @@ def completed_status() -> TransformStatus:
115159
116160
117161@fixture
118- def transformed_result () -> TransformedResults :
162+ def transformed_result (dummy_parquet_file ) -> TransformedResults :
119163 return TransformedResults (
120164 hash = "123-4455" ,
121165 title = "Test" ,
122166 codegen = "uproot" ,
123167 request_id = "123-45-6789" ,
124168 submit_time = datetime .now (),
125169 data_dir = "/foo/bar" ,
126- file_list = ["/tmp/1.root" , "/tmp/2.root" ],
170+ file_list = [dummy_parquet_file ],
127171 signed_url_list = [],
128172 files = 2 ,
129173 result_format = ResultFormat .root_file ,
130174 )
175+
176+
177+ @fixture
178+ def dummy_parquet_file ():
179+ data = {'column1' : [1 , 2 , 3 , 4 ],
180+ 'column2' : ['A' , 'B' , 'C' , 'D' ]}
181+ df = pd .DataFrame (data )
182+ parquet_file_path = '1.parquet'
183+ df .to_parquet (parquet_file_path , index = False )
184+
185+ yield parquet_file_path
186+
187+ if os .path .exists (parquet_file_path ):
188+ os .remove (parquet_file_path )
0 commit comments