1
0
Fork 0
mirror of https://github.com/imjasonh/csvstruct synced 2026-07-18 14:56:23 +00:00

slight tweaks, add TODOs

This commit is contained in:
Jason Hall 2014-05-14 21:11:21 -04:00
parent 3d555447d4
commit c1191dc0b4
2 changed files with 10 additions and 5 deletions

View file

@ -58,3 +58,7 @@ func reverse(in []string) map[string]int {
} }
return m return m
} }
// TODO: NewEncoder/EncodeNext -- header will be fields in first item...
// TODO: Encode/Decode map[string]interface{} ?
// TODO: Encode/Decode non-string values?

View file

@ -2,6 +2,7 @@ package csvstruct
import ( import (
"io" "io"
"reflect"
"strings" "strings"
"testing" "testing"
) )
@ -33,8 +34,8 @@ ignored`,
out: []row{{"", "", ""}}, out: []row{{"", "", ""}},
}} { }} {
d := NewDecoder(strings.NewReader(c.data)) d := NewDecoder(strings.NewReader(c.data))
rows := []row{}
var row row var row row
i := 0
for { for {
err := d.DecodeNext(&row) err := d.DecodeNext(&row)
if err == io.EOF { if err == io.EOF {
@ -44,10 +45,10 @@ ignored`,
t.Errorf("%v", err) t.Errorf("%v", err)
break break
} }
if c.out[i] != row { rows = append(rows, row)
t.Errorf("unexpected item %d, got %+v, want %+v", i, row, c.out[i]) }
} if reflect.DeepEqual(rows, c.out) {
i++ t.Errorf("unexpected result, got %v, want %v", rows, c.out)
} }
} }
} }