miller/pkg/lib/tsv_codec_test.go
John Kerl 268a96d002
Export library code in pkg/ (#1391)
* Export library code in `pkg/`

* new doc page
2023-09-10 17:15:13 -04:00

35 lines
1.2 KiB
Go

package lib
import (
"testing"
"github.com/stretchr/testify/assert"
)
func TestTSVDecodeField(t *testing.T) {
assert.Equal(t, "", TSVDecodeField(""))
assert.Equal(t, "a", TSVDecodeField("a"))
assert.Equal(t, "abc", TSVDecodeField("abc"))
assert.Equal(t, `\`, TSVDecodeField(`\`))
assert.Equal(t, "\n", TSVDecodeField(`\n`))
assert.Equal(t, "\r", TSVDecodeField(`\r`))
assert.Equal(t, "\t", TSVDecodeField(`\t`))
assert.Equal(t, "\\", TSVDecodeField(`\\`))
assert.Equal(t, `\n`, TSVDecodeField(`\\n`))
assert.Equal(t, "\\\n", TSVDecodeField(`\\\n`))
assert.Equal(t, "abc\r\ndef\r\n", TSVDecodeField(`abc\r\ndef\r\n`))
}
func TestTSVEncodeField(t *testing.T) {
assert.Equal(t, "", TSVEncodeField(""))
assert.Equal(t, "a", TSVEncodeField("a"))
assert.Equal(t, "abc", TSVEncodeField("abc"))
assert.Equal(t, `\\`, TSVEncodeField(`\`))
assert.Equal(t, `\n`, TSVEncodeField("\n"))
assert.Equal(t, `\r`, TSVEncodeField("\r"))
assert.Equal(t, `\t`, TSVEncodeField("\t"))
assert.Equal(t, `\\`, TSVEncodeField("\\"))
assert.Equal(t, `\\n`, TSVEncodeField("\\n"))
assert.Equal(t, `\\\n`, TSVEncodeField("\\\n"))
assert.Equal(t, `abc\r\ndef\r\n`, TSVEncodeField("abc\r\ndef\r\n"))
}