47 lines
904 B
Go
47 lines
904 B
Go
|
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])
|
||
|
}
|
||
|
}
|
||
|
|
||
|
}
|