Overview
Add support for configurable quote/field enclosure characters to match BigQuery's --quote parameter.
Current Behavior
The emulator is hardcoded to use double-quote (") as the field enclosure character.
Location: server/handler.go:966
csvReader := csv.NewReader(bytes.NewReader(b))
// Uses default Quote = '"'
Expected Behavior
BigQuery allows users to specify a custom quote character via the --quote parameter.
Implementation Requirements
- Add
Quote field to JobConfigurationLoad structure
- Configure
csv.Reader.Quote based on parameter
- Default to double-quote (
") when not specified
Test Cases
- Single-quote enclosure:
'value with, comma','another' with quote="'" → should parse correctly
- Default double-quote:
"value","another" (no parameter) → should work as before
- Custom quote character: handle edge cases with escaped quotes
Documentation Reference
Overview
Add support for configurable quote/field enclosure characters to match BigQuery's
--quoteparameter.Current Behavior
The emulator is hardcoded to use double-quote (
") as the field enclosure character.Location:
server/handler.go:966Expected Behavior
BigQuery allows users to specify a custom quote character via the
--quoteparameter.Implementation Requirements
Quotefield toJobConfigurationLoadstructurecsv.Reader.Quotebased on parameter") when not specifiedTest Cases
'value with, comma','another'withquote="'"→ should parse correctly"value","another"(no parameter) → should work as beforeDocumentation Reference