mirror of https://github.com/ftl/tetra-pei
add utility functions to sanitize the text content
parent
309a623d24
commit
b3a794b7b0
@ -0,0 +1,77 @@
|
||||
package sds
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
)
|
||||
|
||||
func TestSplitLeadingOPTA(t *testing.T) {
|
||||
tt := []struct {
|
||||
desc string
|
||||
value string
|
||||
expectedOPTA string
|
||||
expectedTail string
|
||||
}{
|
||||
{
|
||||
desc: "no OPTA",
|
||||
value: "testmessage",
|
||||
expectedOPTA: "",
|
||||
expectedTail: "testmessage",
|
||||
},
|
||||
{
|
||||
desc: "only OPTA",
|
||||
value: "ABCD FG#1234567890123456",
|
||||
expectedOPTA: "ABCD FG#1234567890123456",
|
||||
expectedTail: "",
|
||||
},
|
||||
{
|
||||
desc: "OPTA and tail",
|
||||
value: "ABCD FG#1234567890123456testmessage",
|
||||
expectedOPTA: "ABCD FG#1234567890123456",
|
||||
expectedTail: "testmessage",
|
||||
},
|
||||
}
|
||||
for _, tc := range tt {
|
||||
t.Run(tc.desc, func(t *testing.T) {
|
||||
actualOPTA, actualTail := SplitLeadingOPTA(tc.value)
|
||||
assert.Equal(t, tc.expectedOPTA, actualOPTA)
|
||||
assert.Equal(t, tc.expectedTail, actualTail)
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
func TestSplitTrailingITSI(t *testing.T) {
|
||||
tt := []struct {
|
||||
desc string
|
||||
value string
|
||||
expectedHead string
|
||||
expectedITSI string
|
||||
}{
|
||||
{
|
||||
desc: "no ITSI",
|
||||
value: "testmessage",
|
||||
expectedHead: "testmessage",
|
||||
expectedITSI: "",
|
||||
},
|
||||
{
|
||||
desc: "cr cr",
|
||||
value: "testmessage\r\r1234567890123456",
|
||||
expectedHead: "testmessage",
|
||||
expectedITSI: "1234567890123456",
|
||||
},
|
||||
{
|
||||
desc: "ctrl-z nul",
|
||||
value: "testmessage\x1a\x001234567890123456",
|
||||
expectedHead: "testmessage",
|
||||
expectedITSI: "1234567890123456",
|
||||
},
|
||||
}
|
||||
for _, tc := range tt {
|
||||
t.Run(tc.desc, func(t *testing.T) {
|
||||
actualHead, actualITSI := SplitTrailingITSI(tc.value)
|
||||
assert.Equal(t, tc.expectedHead, actualHead)
|
||||
assert.Equal(t, tc.expectedITSI, actualITSI)
|
||||
})
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue