aerc/lib/structure_helpers_test.go

47 lines
904 B
Go
Raw Normal View History

package lib_test
import (
"testing"
"git.sr.ht/~rjarry/aerc/lib"
"git.sr.ht/~rjarry/aerc/models"
)
func TestLib_FindAllNonMultipart(t *testing.T) {
testStructure := &models.BodyStructure{
MIMEType: "multipart",
Parts: []*models.BodyStructure{
&models.BodyStructure{},
&models.BodyStructure{
MIMEType: "multipart",
Parts: []*models.BodyStructure{
&models.BodyStructure{},
&models.BodyStructure{},
},
},
&models.BodyStructure{},
},
}
expected := [][]int{
[]int{1},
[]int{2, 1},
[]int{2, 2},
[]int{3},
}
parts := lib.FindAllNonMultipart(testStructure, nil, nil)
if len(expected) != len(parts) {
t.Errorf("incorrect dimensions; expected: %v, got: %v", expected, parts)
}
for i := 0; i < len(parts); i++ {
if !lib.EqualParts(expected[i], parts[i]) {
t.Errorf("incorrect values; expected: %v, got: %v", expected[i], parts[i])
}
}
}