@@ -212,11 +212,38 @@ def test_to_json(self):
212
212
import json
213
213
self .assertEqual (query_output , json .dumps (tables , cls = FluxStructureEncoder , indent = 2 ))
214
214
215
+ def test_pandas_lot_of_columns (self ):
216
+ data_types = ""
217
+ groups = ""
218
+ defaults = ""
219
+ columns = ""
220
+ values = ""
221
+ for i in range (0 , 200 ):
222
+ data_types += f",long"
223
+ groups += f",false"
224
+ defaults += f","
225
+ columns += f",column_{ i } "
226
+ values += f",{ i } "
227
+
228
+ data = f"#datatype,string,long,string,string,dateTime:RFC3339,dateTime:RFC3339,dateTime:RFC3339,double,string{ data_types } \n " \
229
+ f"#group,false,false,true,true,true,true,false,false,true{ groups } \n " \
230
+ f"#default,_result,,,,,,,,{ defaults } \n " \
231
+ f",result,table,_field,_measurement,_start,_stop,_time,_value,tag{ columns } \n " \
232
+ f",,0,value,python_client_test,2010-02-27T04:48:32.752600083Z,2020-02-27T16:48:32.752600083Z,2020-02-27T16:20:00Z,2,test1{ values } \n " \
233
+
234
+ parser = self ._parse (data = data , serialization_mode = FluxSerializationMode .dataFrame )
235
+ _dataFrames = list (parser .generator ())
236
+ self .assertEqual (1 , _dataFrames .__len__ ())
237
+
215
238
@staticmethod
216
- def _parse_to_tables (data : str ):
217
- fp = BytesIO (str .encode (data ))
218
- _parser = FluxCsvParser (response = HTTPResponse (fp , preload_content = False ),
219
- serialization_mode = FluxSerializationMode .tables )
239
+ def _parse_to_tables (data : str , serialization_mode = FluxSerializationMode .tables ):
240
+ _parser = FluxCsvParserTest ._parse (data , serialization_mode )
220
241
list (_parser .generator ())
221
242
tables = _parser .tables
222
243
return tables
244
+
245
+ @staticmethod
246
+ def _parse (data , serialization_mode ):
247
+ fp = BytesIO (str .encode (data ))
248
+ return FluxCsvParser (response = HTTPResponse (fp , preload_content = False ),
249
+ serialization_mode = serialization_mode )
0 commit comments