@@ -506,4 +506,24 @@ def test_parse_without_datatype
506506 assert_equal '11' , tables [ 0 ] . records [ 0 ] . values [ 'value1' ]
507507 assert_equal 'west' , tables [ 0 ] . records [ 0 ] . values [ 'region' ]
508508 end
509+
510+ def test_parse_duplicate_column_names
511+ data = '#datatype,string,long,dateTime:RFC3339,dateTime:RFC3339,dateTime:RFC3339,string,string,double
512+ #group,false,false,true,true,false,true,true,false
513+ #default,_result,,,,,,,
514+ ,result,table,_start,_stop,_time,_measurement,location,result
515+ ,,0,2022-09-13T06:14:40.469404272Z,2022-09-13T06:24:40.469404272Z,2022-09-13T06:24:33.746Z,my_measurement,Prague,25.3
516+ ,,0,2022-09-13T06:14:40.469404272Z,2022-09-13T06:24:40.469404272Z,2022-09-13T06:24:39.299Z,my_measurement,Prague,25.3
517+ ,,0,2022-09-13T06:14:40.469404272Z,2022-09-13T06:24:40.469404272Z,2022-09-13T06:24:40.454Z,my_measurement,Prague,25.3'
518+
519+ tables = InfluxDB2 ::FluxCsvParser . new ( data , stream : false , response_mode : InfluxDB2 ::FluxResponseMode ::ONLY_NAMES )
520+ . parse
521+ . tables
522+ assert_equal 1 , tables . size
523+ assert_equal 8 , tables [ 0 ] . columns . size
524+ assert_equal 3 , tables [ 0 ] . records . size
525+ assert_equal 7 , tables [ 0 ] . records [ 0 ] . values . size
526+ assert_equal 8 , tables [ 0 ] . records [ 0 ] . row . size
527+ assert_equal 25.3 , tables [ 0 ] . records [ 0 ] . row [ 7 ]
528+ end
509529end
0 commit comments