Add MarshalBytesWithoutHeaders
This commit is contained in:
1 parent
4d32abefad
commit
90a1c52508
2 files changed
+24
No files matched your search
@@ -149,6 +149,15 @@ func MarshalBytes(in interface{}) (out []byte, err error) {
|
||||
return bufferString.Bytes(), nil
|
||||
}
|
||||
|
||||
// MarshalBytesWithoutHeaders returns the CSV bytes from the interface.
|
||||
func MarshalBytesWithoutHeaders(in interface{}) (out []byte, err error) {
|
||||
bufferString := bytes.NewBuffer(out)
|
||||
if err := MarshalWithoutHeaders(in, bufferString); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return bufferString.Bytes(), nil
|
||||
}
|
||||
|
||||
// Marshal returns the CSV in writer from the interface.
|
||||
func Marshal(in interface{}, out io.Writer) (err error) {
|
||||
writer := getCSVWriter(out)
|
||||
|
||||
@@ -102,6 +102,21 @@ func Test_writeTo_NoHeaders(t *testing.T) {
|
||||
assertLine(t, []string{"e", "3", "b", "0.46153846153846156", "", "", ""}, lines[1])
|
||||
}
|
||||
|
||||
func TestMarshalBytesWithoutHeaders(t *testing.T) {
|
||||
s := []Sample{
|
||||
{Foo: "f", Bar: 1, Baz: "baz", Frop: 0.1},
|
||||
{Foo: "e", Bar: 3, Baz: "b", Frop: 0.5},
|
||||
}
|
||||
csvContent, err := MarshalBytesWithoutHeaders(&s)
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
if expected := "f,1,baz,0.1,,,\ne,3,b,0.5,,,\n"; string(csvContent) != expected {
|
||||
t.Fatalf("expected: %q\ngot: %q", expected, csvContent)
|
||||
}
|
||||
}
|
||||
|
||||
func Test_writeTo_multipleTags(t *testing.T) {
|
||||
b := bytes.Buffer{}
|
||||
e := &encoder{out: &b}
|
||||
|
||||
Reference in new issue
Block a user