fix: cloud expects dataType in csv files (#449)

This commit is contained in:
Jeffrey Smith II 2022-10-19 15:13:20 -04:00 committed by GitHub
parent 6142b7a4a3
commit 121864a550
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 18 additions and 9 deletions

View File

@ -11,7 +11,7 @@ import (
type csvColumn struct {
Name string `csv:"name"`
Type api.ColumnSemanticType `csv:"type"`
DataType *api.ColumnDataType `csv:"data_type,omitempty"`
DataType *api.ColumnDataType `csv:"dataType,omitempty"`
}
func init() {

View File

@ -20,7 +20,7 @@ func TestDecodeCSV(t *testing.T) {
{
name: "valid",
data: heredoc.Doc(`
name,type,data_type
name,type,dataType
time,timestamp,
host,tag,
usage_user,field,float
@ -30,7 +30,7 @@ func TestDecodeCSV(t *testing.T) {
{
name: "valid with alternate order",
data: heredoc.Doc(`
type,data_type,name
type,dataType,name
timestamp,,time
tag,,host
field,float,usage_user
@ -40,7 +40,7 @@ func TestDecodeCSV(t *testing.T) {
{
name: "invalid column type",
data: heredoc.Doc(`
name,type,data_type
name,type,dataType
time,foo,
`),
expErr: `failed to decode CSV: record on line 0; parse error on line 2, column 2: "foo" is not a valid column type. Valid values are [timestamp, tag, field]`,
@ -48,23 +48,32 @@ func TestDecodeCSV(t *testing.T) {
{
name: "invalid column data type",
data: heredoc.Doc(`
name,type,data_type
name,type,dataType
time,field,floaty
`),
expErr: `failed to decode CSV: record on line 0; parse error on line 2, column 3: "floaty" is not a valid column data type. Valid values are [integer, float, boolean, string, unsigned]`,
},
{
name: "invalid dataType header",
data: heredoc.Doc(`
name,type,data_type
time,field,float
time2,field,
`),
expErr: `failed to decode CSV: found unmatched struct field with tags [dataType]`,
},
{
name: "invalid headers",
data: heredoc.Doc(`
name,foo
name,foo,
time,field
`),
expErr: `failed to decode CSV: found unmatched struct field with tags [type data_type]`,
expErr: `failed to decode CSV: record on line 2: wrong number of fields`,
},
{
name: "invalid CSV",
data: heredoc.Doc(`
type,type,data_type
type,type,dataType
time,timestamp
`),
expErr: `failed to decode CSV: record on line 2: wrong number of fields`,

View File

@ -1,4 +1,4 @@
name,type,data_type
name,type,dataType
time,timestamp,
host,tag,
usage_user,field,float
1 name type data_type dataType
2 time timestamp
3 host tag
4 usage_user field float float